โœจ Project Inspiration

While working on daily coding tasks, I realized how unorganized and difficult it can be for students to keep track of assignments โ€” especially when there is no proper system. This inspired me to build a simple, role-based web application where teachers can upload assignments and students can submit them on time.


๐Ÿง  What I Learned

  • How to use Firebase Authentication and Cloud Firestore in a real-world project.
  • Role-based redirection using React Router.
  • Real-time data fetching and displaying using Firebase.
  • How to debug tricky issues and deploy a live project.

๐Ÿ— How I Built It

  • I used React.js for the frontend, with useEffect, useState, and react-router-dom for routing.
  • Integrated Firebase Authentication to handle Login/Signup.
  • Used Firestore to store user profiles, assignments, and submissions.
  • Designed role-based dashboards for Teachers and Students.
  • Hosted the project using Firebase Hosting.

๐Ÿšง Challenges I Faced

  • ๐Ÿ” Fetching user roles after login and redirecting them to the correct dashboard took a lot of time to figure out.
  • ๐Ÿงช Debugging Firestore read/write permissions and security rules.
  • ๐Ÿ”„ Handling conditional rendering based on login and role.
  • ๐Ÿ˜“ Firebase sometimes didnโ€™t sync in real-time due to misconfigurations โ€” had to search a lot and fix those bugs.
  • ๐Ÿ“ Deploying the final version without breaking the routing paths.

๐Ÿ™Œ Final Thought

This project tested my patience and problem-solving skills, but also taught me how to build a complete full-stack app from scratch. Iโ€™m proud of what I created and excited to keep improving it.

Share this project:

Updates