Your challenge is to integrate with the REST Countries API to pull country data and display it like in the designs.
Your task is to build out the project to the designs inside the /design
folder.
In this challenge, you will find mobile and desktop designs in light and dark mode color schemes for both pages.
The designs are in JPG static format. This will mean that you'll need to use your best judgment for styles such as font-size
, padding
and margin
.
There are no assets for this challenge, as the country flags will be pulled from the REST Countries API and you can use an icon font library for the icons.
Your users should be able to:
- See all countries from the API on the homepage
- Search for a country using an
input
field - Filter countries by region
- Click on a country to see more detailed information on a separate page
- Click through to the border countries on the detail page
- Toggle the color scheme between light and dark mode (optional)
- TypeScript and React best practices
- Completeness: Did you complete the features?
- Correctness: Does the functionality act in sensible, thought-out ways?
- Maintainability: Is it written in a clean, maintainable way?
- Testing: Is the system adequately tested?
- Install Node.js
- Run
npm install
if you use npm oryarn
if you use yarn inorder to install the dependencies - Run
yarn start
to launch the app which will automatically launch the app in the browser.
- Run
yarn test
Launches the test runner in the interactive watch mode.
- Run
yarn build
Builds the app for production to the build folder.