How oscode-iiitdwd/club-website works
This appears to be an OS Code club website with public event, member, and resource pages and member-authenticated event/resource management. The sampled routes show event CRUD, JWT-cookie sessions, MongoDB access, and a GitHub image-upload integration; the tree indicates member/resource and presentation subsystems whose detailed wiring was not sampled. The README only documents component usage, so broader product capabilities are inferred cautiously from the route and component names.
Main entry points: session.ts Session handling · login/route.ts Login API · events/route.ts Event API · [slug]/route.ts Single-event API
Components 26
Web experience
- Home page
app/page.tsx - Event listing
app/events/page.tsx - Event detail page
app/events/[slug]/page.tsx - Member pages
app/members/page.tsx - Member profile
app/members/[username]/page.tsx - Resources page
app/resources/page.tsx - Linktree page
app/linktree/page.tsx - Navigation and visuals
components/navigation.tsx
Event management
- Event displays
components/events/events-sections.tsx - Event editor
components/events/event-form-dialog.tsx - Event API
app/api/events/route.ts - Single-event API
app/api/events/[slug]/route.ts - Event service
lib/event-service.ts
Member identity
- Login form
components/auth/login-form.tsx - Login API
app/api/auth/login/route.ts - Session handling
lib/session.ts - Session status and logout
app/api/auth/me/route.ts
Data services
- Event documents
lib/models/event.ts - Resource API
app/api/resources/route.ts - Resource documents
lib/models/resource.ts - Member documents
lib/models/member.ts - MongoDB connection
lib/db.ts
Integrations
- Image upload API
app/api/uploads/github/route.ts - GitHub Contents API
Other components
- Visitor
- Signed-in member
Connections 32
- Visitor → Home page: opens
- Visitor → Event listing: browses
- Visitor → Event detail page: views
- Visitor → Member pages: browses
- Visitor → Member profile: views
- Visitor → Resources page: browses
- Visitor → Linktree page: opens
- Home page → Navigation and visuals: renders
- Event listing → Event displays: renders
- Event detail page → Event displays: renders
- Event listing → Event API: fetches events
- Event detail page → Single-event API: fetches event
- Event API → Event service: calls
- Single-event API → Event service: calls
- Event service → MongoDB connection: connects
- Event service → Event documents: queries and writes
- Signed-in member → Login form: signs in
- Login form → Login API: submits credentials
- Login API → MongoDB connection: connects
- Login API → Member documents: finds member
- Login API → Session handling: creates session
- Event editor → Event API: creates event
- Event editor → Single-event API: updates or deletes
- Event editor → Image upload API: uploads image
- Image upload API → Session handling: requires session
- Image upload API → GitHub Contents API: writes image
- Resource API → Session handling: requires session
- Resource API → MongoDB connection: connects
- Resource API → Resource documents: queries and writes
- Session status and logout → Session handling: reads or clears
- Event API → Session handling: requires session
- Single-event API → Session handling: requires session