This is a solution to the REST Countries API with color theme switcher challenge on Frontend Mentor. Frontend Mentor challenges help you improve your coding skills by building realistic projects.
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
- Desktop home-page (dark mode)
- Desktop home-page (light mode)
- Desktop details page (dark mode)
- Desktop details page (light mode)
- Mobile home-page (dark mode)
- Mobile home-page (light mode)
- Mobile details page (dark mode)
- Mobile details page (light mode)
- Live Site URL: Where in the world?
- Semantic HTML5 markup
- Flexbox
- React - JS library
- Styled Components - For styles
- REST COUNTRIES - API
This is my first project where I used API to get data and display it on the site. I learned how to use endpoints and parameters according the need of the page. When you try to combine url by using props, don't use "string" + {props.something} + "string"
as it won't properly format it as an url. Better example -
let url = new URL(
String(props.country),
"https://restcountries.eu/rest/v2/name/"
);
url.searchParams.append("fullText", true);
axios.get(url)
- Linkedin - Shashank Gupta
- Frontend Mentor - @Shashank1003