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.
There is a style-guide.md
file, which contains the information you'll need, such as color palette and fonts.
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?
Make sure to include all source code in the repository.
Please organize, design, test and document your code as if it were going into production - then push your changes to the master branch. After you have pushed your code, you may submit the assignment on the assignment page.
All the best and happy coding,
The MAYD Team
- Create a
.env
file and copy the content of the.env.sample
inside it - Install node modules via
yarn install
- Launch the app via
yarn run dev
- Launch testing via
yarn test