Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found

Submitted

Responsive API website using React and Tailwind CSS

@subx6789

Desktop design screenshot for the REST Countries API with color theme switcher coding challenge

This is a solution for...

  • HTML
  • CSS
  • JS
  • API
4advanced
View challenge

Design comparison


SolutionDesign

Solution retrospective


What are you most proud of, and what would you do differently next time?

What I'm most proud of:

I'm proud of how the project turned out. I built a fully functional website using React.js and Tailwind CSS. It can show data from the REST Countries API and even has a light and dark mode. I also ensured the website worked smoothly using API caching and local storage for data persistence. This means the site loads faster and works even if the API is down.

What I would do differently next time:

Next time, I would spend more time planning the project before I start coding. I realized that having a clear plan for how the components should be structured and how the data should flow would make the development process smoother. I would also look into adding more tests to make sure everything works as expected and to catch any bugs early on.

What challenges did you encounter, and how did you overcome them?

Challenges:

I faced a couple of significant challenges during the project. First, I initially created too many components, which made managing the project more complex. Second, some countries like Antarctica had incomplete data from the API, causing parts of the website to break.

How I overcame them:

To address the issue of too many components, I reorganized my code and combined smaller components into larger, more manageable ones. This made the project easier to understand and maintain. For the incomplete data, I added checks in the code to handle missing information gracefully, ensuring the website still functioned properly even if some data was not available.

What specific areas of your project would you like help with?

  • Component Structure: I initially created too many small components, which made the project harder to manage. I'd like feedback on how to better organize my components and combine them more effectively.

  • Handling Incomplete Data: Some countries, like Antarctica, have incomplete data from the API, which was breaking the website. I'd appreciate suggestions on the best practices for handling missing or incomplete data gracefully.

  • State Management and Data Fetching: I'm using API caching and local storage for data persistence. I'd love advice on improving my state management and optimizing data fetching strategies.

  • Responsive Design: While I tried to ensure the site is fully responsive, I would appreciate feedback on improving the mobile and desktop design, particularly for edge cases and different screen sizes.

Community feedback

Aleš Zima 390

@Esosek

Posted

I love how you handled Iceland with no border countries. Instead of empty field you added some nic poetic touch to it. I also like how you handled the loading of countries in the catalog with load more button which means we don't have to download everything at once.

I'm too still learning how to properly structure and organize the components so sorry but I can't provide you any feedback for your questions.

Great job!

1

Please log in to post a comment

Log in with GitHub
Discord logo

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