How srjnnn/school-management works
This is a browser-based school administration portal built from custom elements. A user enters through the app shell; saved authentication is validated before the app selects a home or login page. Within the portal, the sidebar dispatches users to school-management areas, whose pages fetch or submit data through the API client. The tree and excerpts support attendance, student and teacher management, timetables, class notes, bus details, feedback, and support/settings areas. Several page implementations and the backend contract were not sampled, so their internal wiring is not inferred.
Main entry points: index.js Sidebar navigation · api.js API client · App.js App shell · AuthService.js Authentication
Components 22
App entry
- App bootstrap
src/index.js - App shell
src/App.js
Shell navigation
- Route map
src/router.js - Home and shell
src/components/pages/HomePage/index.js - Sidebar navigation
src/components/views/Sidebar/index.js
School operations
- Dashboard
src/components/pages/Dashboard/index.js - Student records
src/components/pages/StudentsPages/index.js - Teacher records
src/components/pages/Teachers/index.js - Attendance
src/components/pages/attendencePage/index.js - Timetable
src/components/pages/Timetable/index.js - Timetable editor
src/components/views/table/index.js - Create timetable
src/components/views/newTImetable/index.js - Class notes
src/components/pages/classNotesPage/index.js - Bus details
src/components/pages/busDetailsPage/index.js - Feedback
src/components/pages/feedback/index.js - Settings and help
src/components/pages/settingsPage/index.js
Services
- Authentication
src/services/AuthService.js - Local storage wrapper
src/services/LocalDB.js - API client
src/utils/api.js
Other components
- User
- Browser storage
- Backend API
Connections 27
- User → App bootstrap: opens
- App bootstrap → App shell: creates
- App shell → Authentication: checks login
- Authentication → Local storage wrapper: reads token
- Authentication → API client: validates token
- Authentication → Browser storage: stores session
- Local storage wrapper → Browser storage: reads/writes
- App shell → Route map: selects route
- App shell → Home and shell: loads home
- Route map → Home and shell: maps page
- Home and shell → Sidebar navigation: renders navigation
- Sidebar navigation → Dashboard: loads page
- Sidebar navigation → Student records: loads page
- Sidebar navigation → Teacher records: loads page
- Sidebar navigation → Attendance: loads page
- Sidebar navigation → Timetable: loads page
- Sidebar navigation → Class notes: loads page
- Sidebar navigation → Bus details: loads page
- Sidebar navigation → Feedback: loads page
- Sidebar navigation → Settings and help: loads page
- Student records → API client: fetches/updates
- Teacher records → API client: fetches/updates
- Attendance → API client: fetches/updates
- Timetable editor → API client: fetches/updates
- Create timetable → Timetable editor: embeds editor
- Create timetable → API client: submits timetable
- API client → Backend API: sends requests