How mxlitey/pai works
This is a calendar-based education scheduling system: families find a student by name or ID, open that student’s schedule, and browse it by month, week, or day; administrators sign in to manage students, courses, schedules, attendance, announcements, sharing, and dashboard statistics. The React app calls Edge Functions through its API layers, and the backend stores domain records in EdgeOne Blob. The README documents major features whose component internals were not sampled; those are represented at their documented source paths, with uncertain call wiring omitted.
Main entry points: api Function routes · AdminPanel.tsx Admin workspace · admin.ts Admin API client · App.tsx App navigation
Components 27
Family calendar
- App navigation
src/App.tsx - Student search
src/components/SearchBar.tsx - Calendar views
src/components/Calendar - Schedule detail
src/components/ScheduleDetail.tsx - Announcement display
src/components/Announcement/Announcement.tsx
Administration
- Admin workspace
src/components/Admin/AdminPanel.tsx - Admin sign-in
src/components/Admin/AdminLogin.tsx - Schedule management
src/components/Admin/ScheduleAdmin.tsx - Attendance management
src/components/Admin/AttendanceAdmin.tsx - Student management
src/components/Admin/StudentAdmin.tsx - Course management
src/components/Admin/CourseAdmin.tsx - Announcement editor
src/components/Admin/AnnouncementAdmin.tsx - Dashboard statistics
src/components/Admin/DashboardAdmin.tsx - Share links
src/components/Admin/ShareLinksAdmin.tsx
Backend functions
- Frontend API client
src/api/index.ts - Admin API client
src/api/admin.ts - Function routes
node-functions/api - MCP interface
node-functions/api/mcp.js
Domain services
- Token authentication
node-functions/_lib/auth.js - Student service
node-functions/_lib/students.js - Course service
node-functions/_lib/courses.js - Schedule service
node-functions/_lib/schedules.js - Announcement service
node-functions/_lib/announcement.js
Stored data
- Blob object store
Other components
- Family user
- Administrator
- Edge Functions platform
Connections 44
- Family user → Student search: searches
- Student search → Frontend API client: queries students
- Frontend API client → Function routes: requests
- Function routes → Student service: dispatches
- Family user → App navigation: opens calendar
- App navigation → Frontend API client: loads schedules
- Frontend API client → Function routes: requests schedules
- Function routes → Schedule service: dispatches
- App navigation → Calendar views: renders schedule
- Calendar views → Schedule detail: opens details
- App navigation → Frontend API client: loads announcement
- Function routes → Announcement service: dispatches
- App navigation → Announcement display: renders content
- Administrator → Admin workspace: manages records
- Admin workspace → Admin sign-in: prompts sign-in
- Admin sign-in → Admin API client: authenticates
- Admin workspace → Schedule management: hosts
- Admin workspace → Attendance management: hosts
- Admin workspace → Student management: hosts
- Admin workspace → Course management: hosts
- Admin workspace → Announcement editor: hosts
- Admin workspace → Dashboard statistics: hosts
- Admin workspace → Share links: hosts
- Schedule management → Admin API client: submits schedules
- Attendance management → Admin API client: updates attendance
- Student management → Admin API client: manages students
- Course management → Admin API client: manages courses
- Announcement editor → Admin API client: saves announcement
- Dashboard statistics → Admin API client: requests statistics
- Share links → Admin API client: gets student links
- Admin API client → Function routes: requests
- Function routes → Token authentication: checks tokens
- Function routes → Student service: dispatches
- Function routes → Course service: dispatches
- Function routes → Schedule service: dispatches
- Function routes → Announcement service: dispatches
- MCP interface → Student service: uses domain logic
- MCP interface → Course service: uses domain logic
- MCP interface → Schedule service: uses domain logic
- Edge Functions platform → Function routes: runs
- Student service → Blob object store: reads and writes
- Course service → Blob object store: reads and writes
- Schedule service → Blob object store: reads and writes
- Announcement service → Blob object store: reads and writes