Skip to content

singh-aparna/ToDo-App-React-Node

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

To-Do App built using the MERN stack! 🌟

Tech Stack

  • Frontend: React (with Axios for API calls)
  • Backend: Node.js & Express.js
  • Database: MongoDB & MongoDB Atlas for cloud storage

Key Features

✅ Add a new task
✅ Select or marked an existing completed task
✅ Delete tasks you’ve completed or no longer need

This project helped me dive deeper into full-stack development and understand the power of seamless integration between frontend and backend technologies.

What I Learned

  • Building RESTful APIs with Node.js and Express
  • Connecting to a cloud database using MongoDB Atlas
  • Managing state and making HTTP requests using React and Axios
  • Deploying and testing a full-stack application

Updates

✅ Users can now register, log in & log out, and securely interact with tasks.
✅ However, currently, users can view and manage tasks added by all users, not just their own.

Upcoming updates

✅ Users will be able to view and manage only their personal tasks—making the app even more tailored and secure for each individual user.

What I Learned

JWT Authentication: Secure user login and token management.
Cookies: Storing and sending authentication tokens securely.
CORS Errors: Resolved cross-origin issues to ensure smooth API calls between frontend and backend.
Backend Security: Added robust error handling and improved session management.
Express & MongoDB: Leveraged Express for server management and MongoDB for efficient data storage.
bcrypt: Implemented password hashing using bcrypt for securely storing passwords. Learned how to generate salts and hash passwords to protect user credentials from being compromised.

Key Takeaways

→ Understanding JWT for authentication is crucial for building secure apps.
→ Handling cookies properly can make a huge difference in user session management.
→ Dealing with CORS errors is a necessary skill for handling frontend-backend communication in modern web apps.
→ Password security is a must! bcrypt has been an essential tool for safely storing passwords.