How ferhatenyani/darsov2 works
Darso is a two-sided tutoring platform for students and teachers. Students discover tutors, manage learning requests and sessions, communicate, and handle payments and reviews; teachers maintain profiles, manage sessions, and track professional activity. The tree documents these product areas, while the README identifies Supabase as the backing database. Sampled code confirms the Supabase server-client boundary and email-link authentication flow; unsampled page wiring is not inferred, so the graph keeps those areas as distinct capabilities.
Main entry points: route.ts Email-link callback · sign-up/page.tsx Sign in and signup · routes.ts Role routing · discover/page.tsx Tutor discovery
Components 25
Entry and identity
- Landing site
src/app/page.tsx - Sign in and signup
src/app/(auth)/sign-up/page.tsx - Email-link callback
src/app/auth/callback/route.ts - Role routing
src/lib/auth/routes.ts
Student experience
- Tutor discovery
src/app/(app)/student/discover/page.tsx - Student dashboard
src/app/(app)/student/page.tsx - Student sessions
src/app/(app)/student/sessions/page.tsx - Payments and invoices
src/app/(app)/student/payments/page.tsx - Student messaging
src/app/(app)/student/messages/page.tsx - Student reviews
src/app/(app)/student/reviews/page.tsx - Student help
src/app/(app)/student/help/page.tsx
Teacher workspace
- Teacher profile
src/app/(app)/teacher/profile/page.tsx - Public teacher profile
src/app/(app)/teacher/preview/[username]/page.tsx - Teacher sessions
src/app/(app)/teacher/sessions/page.tsx - Earnings and stats
src/app/(app)/teacher/earnings/page.tsx - Teacher verification
src/app/(app)/teacher/verification/page.tsx - Agency workspace
src/app/(app)/teacher/agency/page.tsx - Teacher messaging
src/app/(app)/teacher/messages/page.tsx - Teacher reviews
src/app/(app)/teacher/reviews/page.tsx
Shared platform services
- Reference data
src/lib/data/reference.ts - Supabase server client
src/lib/supabase/server.ts
Other components
- Visitor
- Student
- Teacher
- Supabase
Connections 25
- Visitor → Landing site: visits
- Student → Sign in and signup: signs up
- Teacher → Sign in and signup: signs up
- Sign in and signup → Email-link callback: email link
- Email-link callback → Supabase server client: creates client
- Email-link callback → Role routing: resolves role
- Email-link callback → Supabase: exchanges or verifies
- Role routing → Supabase: reads profile role
- Student → Tutor discovery: discovers tutors
- Student → Student dashboard: uses
- Student → Student sessions: manages sessions
- Student → Payments and invoices: manages payments
- Student → Student messaging: messages
- Student → Student reviews: reviews tutors
- Student → Student help: gets help
- Teacher → Teacher profile: edits profile
- Teacher → Teacher sessions: manages sessions
- Teacher → Earnings and stats: tracks earnings
- Teacher → Teacher verification: submits verification
- Teacher → Agency workspace: uses
- Teacher → Teacher messaging: messages
- Teacher → Teacher reviews: reviews feedback
- Tutor discovery → Reference data: uses reference data
- Teacher profile → Reference data: uses reference data
- Supabase server client → Supabase: queries with RLS