A modern web application for Alliance University students to connect for peer-to-peer tutoring and skill exchange. Built with Next.js, TypeScript, and Tailwind CSS.
- User Authentication: Simple login/registration system with university email
- Smart Matching: Algorithm-based study partner recommendations
- Subject Management: Add subjects you can teach and want to learn
- Session Booking: Schedule tutoring sessions (in-person or video)
- Messaging System: Real-time chat with study partners
- Rating & Reviews: Build trust through peer reviews
- Points & Rewards: Earn points for teaching and learning
- Dashboard: Overview of sessions, matches, and progress
- Notifications: Stay updated with session requests and messages
- Framework: Next.js 14 with App Router
- Language: TypeScript
- Styling: Tailwind CSS
- Icons: Lucide React
- Data Storage: Local Storage (for MVP demo)
- Authentication: Custom implementation with local storage
- Clone the repository:
cd /Users/raghav/Documents/work/general/study-match- Install dependencies:
npm install- Run the development server:
npm run dev- Open http://localhost:3000 in your browser
Use these test accounts to explore the application:
Account 1:
- Email:
aara@alliance.edu.in - Password:
password123 - Role: Computer Science student, teaches DSA & Web Dev
Account 2:
- Email:
priya.patel@alliance.edu.in - Password:
password123 - Role: Business student, teaches Marketing & Finance
Account 3:
- Email:
amit.kumar@alliance.edu.in - Password:
password123 - Role: ECE student, teaches Electronics & Math
Account 4:
- Email:
sara.jones@alliance.edu.in - Password:
password123 - Role: Arts student, teaches Languages
Account 5:
- Email:
arjun.reddy@alliance.edu.in - Password:
password123 - Role: CS student, teaches ML & Data Science
/
├── app/
│ ├── page.tsx # Landing/Login page
│ ├── dashboard/ # Main dashboard
│ ├── discover/ # Find study partners
│ ├── sessions/ # Manage sessions
│ ├── profile/ # User profile
│ ├── messages/ # Chat system
│ └── notifications/ # Notifications center
├── components/
│ └── Navigation.tsx # Main navigation
├── contexts/
│ └── AuthContext.tsx # Authentication context
├── lib/
│ ├── types.ts # TypeScript definitions
│ ├── mockData.ts # Mock data for demo
│ ├── storage.ts # Local storage utilities
│ └── utils.ts # Helper functions
- Click "Register" on the landing page
- Fill in your details (use @alliance.edu.in email)
- Complete your profile with subjects you can teach/learn
- Set your availability schedule
- Start discovering study partners!
- Login with demo credentials
- Explore the dashboard for quick stats
- Use "Discover" to find study partners
- Book sessions with tutors
- Chat via the messaging system
- Complete sessions and leave reviews
- Earn points for active participation
- Algorithm considers:
- Subject compatibility (teach/learn match)
- Availability overlap
- User ratings
- Department similarity
- Urgency levels
- Pending: Awaiting tutor confirmation
- Confirmed: Session scheduled
- Completed: Session finished
- Cancelled: Session cancelled
- Teaching session: +50 points
- Learning session: +30 points
- Leaving review: +10 points
- Profile completion: +100 points (welcome bonus)
- Free sessions (default)
- Paid sessions with minimum rate
- Payment handling is mocked for demo
This MVP uses Local Storage for data persistence:
- User profiles
- Sessions
- Messages
- Reviews
- Notifications
Note: Data persists in browser but will be lost if local storage is cleared.
This is a demonstration MVP with:
- No real database (uses local storage)
- No real authentication (dummy auth)
- No payment processing
- No email notifications
- No video call integration
- Mock data for demonstration
For production deployment, consider:
- PostgreSQL/MongoDB database
- NextAuth.js for authentication
- Real-time messaging with WebSockets
- Video call integration (Zoom/Google Meet API)
- Payment gateway integration
- Email/SMS notifications
- Mobile app development
- AI-powered matching algorithm
- Calendar integration
- File sharing for study materials
- All data is stored locally in browser
- Refresh maintains session state
- Multiple users can be simulated in different browsers
- Points and rewards are automatically calculated
- Reviews affect user ratings immediately
This is an MVP for Alliance University. For production deployment or feature requests, please contact the development team.
This project is created for Alliance University as an educational MVP demonstration.
Built with ❤️ for Alliance University Students