- HTML
- CSS
- JS
- API
REST Countries API with color theme switcher
If you're wanting to test your JavaScript skills this is the challenge for you. Use whichever JS framework you prefer and pull data from the REST Countries API.
Join 38,609 people who have taken this challenge
📝Brief
Your challenge is integrating with the REST Countries API to pull country data and display it like in the designs.
You can use any JavaScript framework/library on the front-end, such as React or Vue. You also have complete control over which packages you use to make HTTP requests or style your project.
Your users should be able to:
- See all countries from the API on the homepage
- Search for a country using an
inputfield - 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
- View the optimal layout for the interface depending on their device's screen size
- See hover and focus states for all interactive elements on the page
- Bonus: Toggle the color scheme between light and dark mode
Download the starter code and go through the README.md file. This will provide further details about the project. The style-guide.md file is where you'll find colors, fonts, etc.
Want some support on the challenge? Join our community and ask questions in the help channel.
🗃Assets provided
- Figma design file access - Unlock with Pro
- JPEG design files for mobile & desktop layouts
- Style guide for fonts, colors, etc.
- Optimized image assets
- README file to help you get started
- HTML file with pre-written content
💡Ideas to test yourself
- Write your styles using a pre-processor, such as Sass, Less or Stylus
- Train your eye for detail by getting your solution as close to the design as you can
- Try estimating the time it will take for you to build the project. Then see if the time taken matches up to your estimate. Project estimations are a skill that is often overlooked but is essential for professional developers
Challenge FAQs
- How can I get help if I'm stuck on a challenge?
- How do I submit my solution?
- Is there an official solution I can take a look at?
- Do I get a code review when I post my solution?
- Can I use libraries/frameworks on these projects?
- Can I use these projects in my portfolio?
- How often are new challenges added?
- What is the difference between the desktop-design, mobile-design, and desktop-preview images in my starter code?
- Can I use these challenges within my own free or commercial content/tutorials/projects?
Join our Discord community
Join thousands of Frontend Mentor community members taking the challenges, sharing resources, helping each other, and chatting about all things front-end!
Join our Discord