This is a simple web application that allows users to manage their to-do list and get a random meal suggestion for the day.
- Create, edit, and delete tasks on your to-do list.
- Toggle task statuses between open and completed.
- Get a random meal suggestion for the day.
- Simple navigation between the to-do list and meal suggestions.
- Responsive design for different screen sizes.
- Error handling for API requests.
To run this project locally, follow these steps:
-
Clone this repository to your local machine:
git clone https://github.com/your-username/todo-app.git
-
Navigate to the project folder:
cd todo-app
-
Install the project dependencies:
npm install
-
Start the development server:
npm start
-
Open your web browser and go to
http://localhost:3000
to view the application.
- Add new tasks to your to-do list by typing in the input field and pressing Enter.
- Edit tasks by clicking the "Edit" button.
- Toggle task statuses between open and completed by clicking the checkbox.
- Delete tasks by clicking the "Delete" button.
- Click on the "Today Meal" link in the navigation bar to get a random meal suggestion for the day.
This project relies on the following dependencies:
- React: A JavaScript library for building user interfaces.
- React Router: A routing library for React applications.
- FontAwesome: A library for adding icons to your web application.
- Yup: A JavaScript schema validation library (used for form validation).
- Formik: A form library for React.
- Axios: A promise-based HTTP client for making API requests.
You can find the full list of dependencies in the package.json
file.
This project uses a backend server to store and manage to-do tasks. The backend is implemented using Node.js and MongoDB.
-
Ensure you have Node.js and MongoDB installed on your system.
-
Set up a MongoDB database and obtain the connection URL.
-
Create a
.env
file in the root directory of the backend code with the following content:DATABASE_CONNECTION=YOUR_MONGODB_CONNECTION_URL
-
Install the backend dependencies:
cd backend npm install
-
Start the backend server:
npm start
The backend server should now be running and accessible at http://localhost:3000
. The frontend is configured to communicate with this server.
Contributions are welcome! If you find a bug or have suggestions for improvements, please open an issue or create a pull request.