How trinovaputra/tracking-dash works
This is a Next.js training-management application for participants and administrators. The participant workflow covers registration, training enrollment, attendance check-in/out, and certificates; administrators manage training schedules, participants, attendance, and certificates. The sampled routes show persistence, certificate generation, and file upload/download behavior. Several pages and services are represented from their exact tree paths, but their internal wiring is not asserted because their source was not sampled.
Main entry points: absensi.ts Attendance actions · prisma.ts Application database · absensi-client.tsx Attendance reports · route.ts Enrollment API
Components 25
Application experience
- Participant portal
app/dashboard/user - Admin portal
app/dashboard/admin - Login and registration
app/login/page.tsx
Training operations
- Training management
app/dashboard/admin/pelatihan/page.tsx - Schedule management
app/dashboard/admin/jadwal/page.tsx - Enrollment
app/dashboard/user/pendaftaran/page.tsx - Attendance reports
components/absensi-client.tsx - Check-in and out
components/user-absensi-client.tsx - Certificate management
app/dashboard/admin/sertifikat/page.tsx
Application services
- Authentication API
app/api/auth/[...nextauth]/route.ts - Account registration API
app/api/register/route.ts - Training API
app/api/pelatihan/route.ts - Schedule API
app/api/jadwal/route.ts - Enrollment API
app/api/pendaftaran/route.ts - Attendance actions
server/actions/absensi.ts - Certificate API
app/api/sertifikat/[id]/route.ts - Document upload API
app/api/pendaftaran/upload/route.ts - File download API
app/api/download/route.ts - Certificate PDF generation
lib/generateSertifikat.ts
Data and integrations
- Application database
lib/prisma.ts - PostgreSQL connection
lib/db.ts - UploadThing storage
lib/uploadthing.ts
Other components
- Participant
- Administrator
- Remote file host
Connections 19
- Participant → Login and registration: starts account access
- Administrator → Admin portal: manages operations
- Participant → Participant portal: uses portal
- Attendance reports → Attendance actions: requests filtered attendance
- Attendance reports → Attendance actions: requests statistics
- Attendance reports → Attendance actions: loads schedules
- Check-in and out → Attendance actions: loads registrations and status
- Check-in and out → Attendance actions: submits check-in/out
- Account registration API → Application database: checks and creates user
- Training API → Application database: reads active training
- Schedule API → PostgreSQL connection: reads and writes schedules
- Enrollment API → PostgreSQL connection: creates enrollment
- Enrollment API → Application database: updates enrollment and certificates
- Enrollment API → Certificate PDF generation: generates on passing
- Certificate API → Application database: reads and updates certificates
- Certificate API → Certificate PDF generation: regenerates certificate
- Certificate PDF generation → UploadThing storage: uploads PDF
- Document upload API → UploadThing storage: uploads document
- File download API → Remote file host: fetches file