How seasln/takvim works
Kalender is a signed-in calendar application with event creation and editing, recurrence expansion, tags, reminders, attachments, and a separate scratch todo list. The principal workflow is a user working in the calendar interface and accessing authenticated event APIs, which persist or retrieve calendar data; recurring masters are expanded for requested time ranges. The tree and sampled routes support the API and persistence relationships shown, but the calendar component’s client-side API calls and several unsampled subsystems’ internals are not verified here.
Main entry points: index.ts Application database · auth.ts Auth service · events/route.ts Event collection API · [id]/route.ts Event item API
Components 17
User experience
- Calendar interface
src/components/calendar/CalendarApp.tsx - Login and register
src/app/(auth)/login/page.tsx
Application API
- Event collection API
src/app/api/events/route.ts - Event item API
src/app/api/events/[id]/route.ts - Tag API
src/app/api/tags/route.ts - Scratch todo API
src/app/api/todos/route.ts - Todo item API
src/app/api/todos/[id]/route.ts - Attachment API
src/app/api/attachments/route.ts - Upload endpoint
src/app/api/uploadthing/route.ts - Auth endpoint
src/app/api/auth/[...all]/route.ts
Auth and recurrence
- Auth service
src/lib/auth.ts - Recurrence expansion
src/lib/recurrence/expand.ts - Upload configuration
src/lib/uploadthing/core.ts
Persistence
- Application database
src/lib/db/index.ts - Calendar data schema
src/lib/db/schema/app.ts
Other components
- User
- UploadThing
Connections 19
- User → Calendar interface: uses
- User → Login and register: authenticates
- Event collection API → Auth service: checks session
- Event item API → Auth service: checks session
- Tag API → Auth service: checks session
- Scratch todo API → Auth service: checks session
- Todo item API → Auth service: checks session
- Attachment API → Auth service: checks session
- Auth endpoint → Auth service: dispatches
- Event collection API → Application database: reads and writes
- Event item API → Application database: reads and writes
- Tag API → Application database: reads and writes
- Scratch todo API → Application database: reads and writes
- Todo item API → Application database: reads and writes
- Attachment API → Application database: reads and writes
- Event collection API → Recurrence expansion: expands occurrences
- Upload endpoint → Upload configuration: uses router
- Upload endpoint → UploadThing: handles uploads
- Application database → Calendar data schema: uses schema