Objective
To create a trusted, two-sided marketplace that connects students with qualified yoga instructors. The platform required distinct user roles, a secure booking system, and a verification process to ensure teacher quality.
Technical Choices
- The MERN stack was ideal for this project, with React providing a dynamic and interactive frontend for both student and teacher dashboards.
- Node.js and Express were used to build a robust RESTful API to handle all backend logic, including user authentication and bookings.
- MongoDB's flexible schema was perfect for managing complex user profiles with different fields for students and teachers.
- JWT (JSON Web Tokens) were implemented for secure, stateless authentication, protecting user routes and API endpoints.
Challenges & Solutions
The most complex part was implementing the role-based access control (RBAC). The system needed to serve different UI and API functionalities based on whether the user was a student, a teacher, or an administrator. Designing the database schema to handle relationships between users, classes, and bookings was also a significant challenge.
Lessons Learned
This project was a deep dive into backend architecture. I mastered creating secure, authenticated APIs and managing complex state on the frontend with tools like Redux Toolkit. It reinforced the importance of careful data modeling and designing systems that can scale to accommodate different user types.