Project Summary
The goal for this assignment was to create an application that uses an API. I decided to make a currency converter application because I wanted to make something that would be practical and useful to someone. Later on, the API stopped working so I decided to switch over to a new API and rebuild it using React. Currently, I'm using the API from get geo api.
Skills
- JavaScript - React.js
- CSS3 - Materialize
Currency Converter API
When the user enters the required information, the application will make a fetch request to the currency converter API and provide the values that the user entered. If the request is successful, the API will provide the result of the conversion. Using the React context API I was able to display the result in the application.

Loader
The old version of this application would have the Loader go away after 3 seconds. The problem is if the API took more than 3 seconds to give the result, the user may think the application is now working. To solve this issue in the new version, I made sure to make the loading last until the API is ready with the result/error.

Dropdown Lists
One problem I encountered was on certain mobile devices, the Materialize dropdown would not function properly. To get around this problem, I used the React-select node module and change the colours to better match the web application.

Project Turnout
Doing this project made me more comfortable with working with APIs as well as React. This project has also made me realize the importance of an application/website looking the same across multiple browsers.
