This project is a Single Page Application (SPA) that utilizes React, custom hooks, and various libraries to create a dynamic form field with data persistence, a dark/light mode toggle, and a line graph displaying the GDP history of selected countries using Recharts. The project incorporates axios for handling GET and POST requests, and it's styled using a combination of styled-components, reactstrap, and bootstrap for an enhanced user interface.
-
Form Field with Data Persistence: The application features a form field where users can input data. The input data persists even after the page is refreshed, enhancing the user experience.
-
Dark/Light Mode Toggle: Users can switch between dark and light modes for better visibility and personalization. The toggle provides a seamless transition between the two modes.
-
GDP History Graph using Recharts: The project fetches historical GDP data for selected countries and presents it in an interactive line graph using the Recharts library. Users can visually analyze the GDP trends over time.
-
GET and POST Requests with Axios: Axios, a popular JavaScript library, is used to handle GET requests to fetch historical GDP data and POST requests to persist user input data. This ensures smooth communication with external APIs and data storage.
-
Styled-components, Reactstrap, and Bootstrap: The user interface is styled using a combination of styled-components, reactstrap, and bootstrap. This combination allows for a visually appealing and responsive design across various devices.
To run the project locally, follow these steps:
- Fork the repository
- Clone the repository to your local machine. git clone https://github.com/your-username/your-repo.git
- Install the project dependencies using npm with npm install
- Start with npm run start
- React
- Custom Hooks
- Recharts
- Axios
- Styled-components
- Reactstrap
- Bootstrap
This project is licensed under the MIT License.