Skip to content

Garden19/Country-Explorer

Repository files navigation

CountryExplorer

A small Angular 20 application that uses the REST Countries API, this allows users to browse, search and filter through the countries as well as view additional country information.

Features

  • Displays a list of countries
  • Every country can be clicked on to reveal additional information
  • Search countries by name
  • Filter countries by region
  • View additional country details
  • Load state handling
  • Error state handling
  • State handling for when there are no results

Technologies Used

  • Angular 20
  • Typescript
  • REST Countries API
  • HTML and CSS

How to run the project

  1. Clone the repository using "git clone" along with the repository url.
  2. Install the dependancues using "npm install" or "npm i".
  3. Start the development server using "ng serve".
  4. Go to http://localhost:4200 using your browser.

Assumptions

  • The application uses the REST Countries v3.1 API.
  • Some countries might not have values for optional fields such as currencies, languages or capital.
  • The API avaliability depends on the public REST Countries service.

Limitations

  • Data is loaded from the public API which could potentially change over time.
  • There is no persistence of searches or filtered selections between sessions.

Improvements with more time

  • Sorting the countries by name and population.
  • Responsive improvements for mobile views.
  • Storage for search and filter preferences (Either local storage or MongoDB).
  • Unit tests for components and services.

Screenshots

Computer view

CE-Computer view CE-Computer view filtered

Mobile view

CE-mobile view filtered by region CE-mobile view

About

Angular 20 application for browsing, searching and filtering country data using the REST Countries API.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages