SkillSync
A full-featured tutor marketplace with role-based dashboards.
Role
Full-stack Developer
Duration
5 weeks
Year
2025
4 roles
Auth levels
Full
Booking system
The Problem
Finding a tutor in Bangladesh is still largely an offline process - word of mouth, notice boards, Facebook groups. Students have no way to filter by subject, verify credentials, read reviews, or book a session in one place.
Tutors have no platform to manage their availability, track their sessions, or build a verified profile that follows them across clients.
SkillSync was built to solve both sides of that problem.
What I Built
A full-featured tutor marketplace - four distinct user roles, each with their own purpose-built experience. Students discover and book tutors. Tutors manage their availability and sessions. Administrators oversee the platform. All secured with role-based access control at every layer.





Four role-based experiences
- Public - tutor discovery, search, filtering by subject and category, tutor profiles
- Student - booking flow, session history, review submission, cancellation management
- Tutor - availability management, session tracking, earnings overview, profile editing
- Admin - platform oversight, user management, analytics dashboard
Booking and session workflows
A complete booking system - students request sessions, tutors confirm, both parties manage changes. Cancellation, completion, and review flows are all handled with role-aware permissions. No action available to a role that shouldn't have it.
Authentication with Better Auth
Session-based authentication using Better Auth - a modern, type-safe auth library. Server-side role guards protect every route. Same-origin API proxy routes handle auth cookies without CORS issues.
Search and discovery
Category-based filtering, subject search, and tutor profile cards with ratings and session counts. Students can find the right tutor in seconds.
Key Decisions
Same-origin API proxy. Rather than a separate backend URL, all API calls go through Next.js route handlers. This keeps auth cookies working correctly and eliminates CORS complexity entirely.
Better Auth over custom JWT. Rolling custom authentication is a maintenance burden. Better Auth provides a production-ready, type-safe session system that integrates cleanly with Next.js App Router.
Prisma schema as the single source of truth. One schema file defines users, roles, tutors, students, sessions, bookings, and reviews. Everything downstream - queries, types, validations - derives from it.
The Result
SkillSync demonstrates the full range of full-stack capability - complex auth, multi-role data access, transactional workflows, and a polished consumer-facing UI.
The four-role architecture in particular is a pattern that scales to almost any marketplace or platform product.