Tutor Finder is a feature-rich MERN stack web application that helps students find the best tutors based on location, subject, and availability. It supports everything from real-time chat and group creation to tutor reviews and media sharing.
🌐 Live App: https://major-project-frontend-iqr1.onrender.com/
🧪 Sample Tutor Credentials
📧 Email:vimalnegi2003@gmail.com
🔐 Password:Vimal@1234
🧪 Sample Learner Credentials
📧 Email:vicky2003@gmail.com
🔐 Password:Vicky@1234
- Secure JWT-based login/signup
- Role-specific dashboards (Tutor & Student)
- Password encryption with
bcrypt
- Create & manage detailed tutor profile
- Define subjects, location, experience
- Create study groups and manage student requests
- View and reply to messages
- Receive student reviews and ratings
- Search tutors by subject or city
- Request to join 1:1 or group sessions
- Review and rate tutors after sessions
- Chat with tutors in real-time
- Built using Socket.IO
- 1:1 Chat and Group Chat support
- Live typing indicators and timestamps
- Send images, videos, and files in chat
- Media preview in chat
- File upload with Multer andCloudinary support
- Students can leave star-based ratings with comments
- Optional text feedback for tutors
- Tutor dashboard shows average rating & reviews
- Live alerts on message and request activity
- New group request notifications for tutors
Layer | Technologies |
---|---|
Frontend | React.js, Redux Toolkit, Tailwind CSS |
Backend | Node.js, Express.js |
Database | MongoDB + Mongoose |
Realtime Chat | Socket.IO |
File Upload | Multer + Cloudinary |
Authentication | JWT + bcrypt |
State Mgmt | Redux Toolkit |
Tutor_Finder/
├── client/ # React app
│ ├── components/ # Shared UI components
│ ├── pages/ # Login, Dashboard, Profile, etc.
│ ├── redux/ # Redux slices & store
│ └── App.js
├── server/ # Express + MongoDB backend
│ ├── controllers/ # Logic for auth, users, chat
│ ├── middleware/ # JWT, error handling, file upload
│ ├── models/ # MongoDB schemas
│ ├── routes/ # API route handlers
│ ├── socket/ # Socket.IO configuration
│ └── server.js
git clone https://github.com/Vimalnegi03/Tutor_Finder.git
cd Tutor_Finder
2. Backend Setup
cd server
npm install
Run the backend:
npm run dev
3. Frontend Setup
cd ../client
npm install
npm start
Frontend: http://localhost:3000 Backend: http://localhost:5000
👨💻 Author Vimal Negi 📎 GitHub: @Vimalnegi03 🔗 LinkedIn: www.linkedin.com/in/vimal-negi