How azriel-ae/xitkj1 works
XI TKJ 1 is a class website with a public-facing portal and an administrative panel. The tree indicates public areas for student profiles, schedules, gallery, news, social links, chat, and feedback; the server excerpt confirms static-file serving and routes for several APIs. Admin endpoints support authentication and management of class content. The excerpts show shared JSON/blob storage and helper layers. Chat and feedback files are present, but their routing and browser connections are not established by the supplied excerpts, so those links are omitted.
Main entry points: server.js HTTP server · kvStore.js Persistent storage · gallery.js Content management · auth.js Auth services
Components 27
Public portal
- Website pages
index.html - Student profiles
assets/js/siswa.js - Class schedule
assets/js/jadwal.js - Gallery
assets/js/gallery.js - News pages
berita.html - Class chatbot
api/chat.js - Feedback
api/feedback.js - Social links
api/social.js
Administration
- Admin panel
admin.html - Admin authentication
api/admin/auth.js - Session status
api/admin/session.js - Student management
api/admin/siswa.js - Admin accounts
api/admin/admins.js - Content management
api/admin/gallery.js
Class content
- Public content API
api/gallery.js - Student data API
api/siswa.js - Image delivery
api/img.js - News logic
lib/news.js - Schedule logic
lib/jadwal.js - Social avatars
lib/socialAvatar.js
Runtime and storage
- HTTP server
server.js - Auth services
lib/auth.js - Activity logging
lib/activityLog.js - HTTP helpers
lib/http.js - Persistent storage
lib/kvStore.js
Other components
- Visitor
- Google Gemini
Connections 35
- Visitor → Website pages: visits
- HTTP server → Website pages: serves files
server.js - HTTP server → Admin authentication: routes requests
server.js - HTTP server → Session status: routes requests
server.js - HTTP server → Content management: routes requests
server.js - HTTP server → Student management: routes requests
server.js - HTTP server → Admin accounts: routes requests
server.js - HTTP server → Public content API: routes requests
server.js - HTTP server → Student data API: routes requests
server.js - HTTP server → Social links: routes requests
server.js - HTTP server → Image delivery: routes requests
server.js - HTTP server → Google Gemini: generates responses
server.js - Admin authentication → Auth services: verifies credentials
api/admin/auth.js - Admin authentication → Activity logging: records events
api/admin/auth.js - Session status → Auth services: checks session
api/admin/session.js - Student management → Auth services: checks access
api/admin/siswa.js - Student management → HTTP helpers: validates images
api/admin/siswa.js - Admin accounts → Auth services: manages accounts
api/admin/admins.js - Admin accounts → Activity logging: reads activity
api/admin/admins.js - Content management → Auth services: checks access
api/admin/gallery.js - Content management → News logic: writes news
api/admin/gallery.js - Content management → Schedule logic: updates schedule
api/admin/gallery.js - Content management → Social avatars: manages avatars
api/admin/gallery.js - Content management → Activity logging: records events
api/admin/gallery.js - Public content API → News logic: serves news
api/gallery.js - Public content API → Schedule logic: serves schedule
api/gallery.js - Public content API → Persistent storage: reads gallery
api/gallery.js - News logic → Persistent storage: reads and writes
lib/news.js - Schedule logic → Persistent storage: reads and writes
lib/jadwal.js - Auth services → Persistent storage: reads and writes
lib/auth.js - Activity logging → Persistent storage: reads and writes
lib/activityLog.js - Social avatars → Persistent storage: uses storage
lib/socialAvatar.js - Image delivery → Persistent storage: reads images
api/img.js - Student data API → Persistent storage: loads overrides
api/siswa.js - Student data API → Website pages: uses student data