Platform Overview
Skole is a school communication and management platform connecting schools, teachers, and parents through three coordinated applications backed by a single REST API.| Component | Technology | Purpose |
|---|---|---|
skole-api-1 | NestJS + Prisma + PostgreSQL | Unified backend REST API |
skole-parent-app | Expo React Native | Mobile app for parents |
skole-teacher-app | Expo React Native | Mobile app for teachers/staff |
skole-web-app-nextjs | Next.js | Admin web portal for school admins |
Skole ID (skole_id)
Every entity in the platform (students, staff, notices, etc.) is scoped to a skole_id — a unique 15-character string identifying the school. This is the fundamental multi-tenancy key across all tables.
Module Registry
| Module Code | Module Name | Apps | File |
|---|---|---|---|
SKOLE-AUTH | Authentication | All | 01-auth#3-sub-modules—backlog |
SKOLE-DASH | Dashboard | Parent, Teacher | 02-dashboard#3-sub-modules—backlog |
SKOLE-ATND | Attendance | Parent, Teacher, Web | 03-attendance#3-sub-modules—backlog |
SKOLE-DIRY | Digital Diary | Parent, Teacher, Web | 04-digital-diary#3-sub-modules—backlog |
SKOLE-ACTV | Activities | Parent, Teacher, Web | 05-activities#3-sub-modules—backlog |
SKOLE-WRIT | Write To (Requests) | Parent, Teacher, Web | 06-write-to#3-sub-modules—backlog |
SKOLE-NOTB | Noticeboard | Parent, Teacher, Web | 07-noticeboard#3-sub-modules—backlog |
SKOLE-FOOD | Food Menu | Parent, Teacher, Web | 08-food-menu#3-sub-modules—backlog |
SKOLE-CALS | Academic Calendar | Teacher, Web | 09-academic-calendar#3-sub-modules—backlog |
SKOLE-STUD | Student Management | Teacher, Web | 10-students#3-sub-modules—backlog |
SKOLE-STAF | Staff Management | Web | 11-staff#3-sub-modules—backlog |
SKOLE-ADMN | Admission Form | Web | 12-admission#3-sub-modules—backlog |
SKOLE-ENGG | Engagement (Comments/Reactions) | Parent | 13-engagement#3-sub-modules—backlog |
SKOLE-PROF | Profile & Caretaker | Parent | 14-profile#3-sub-modules—backlog |
SKOLE-FEES | Fees | Parent | 15-fees#3-sub-modules—backlog |
SKOLE-NOTF | Notifications | Teacher | 16-notifications#3-sub-modules—backlog |
Numbering Convention
Item Type Suffixes
| Code | Type |
|---|---|
| FR | Functional Requirement |
| NF | Non-Functional Requirement |
| SM | Sub-module / Backlog item |
| CE | Conditional Expression |
| UI | UI Screen |
| UC | UI Component |
| TB | Database Table |
| EP | API Endpoint |
| EX | External Service |
Database Tables Quick Reference
| Table | Module | Description |
|---|---|---|
users | AUTH | School admin user accounts |
staff | AUTH/STAF | Teacher & staff records |
students | STUD | Student records |
parent_details | AUTH/PROF | Parent information |
parent_devices | AUTH | Parent device + session tokens |
staff_sessions | AUTH | Staff session tokens |
user_sessions | AUTH | Admin user sessions |
schools | CORE | School master record |
student_attendance | ATND | Daily attendance records |
digital_diary | DIRY | Diary/homework entries |
activities | ACTV | School activities/events |
write_to | WRIT | Parent-to-school requests |
write_to_replies | WRIT | Threaded replies |
noticeboards | NOTB | School notices |
food_menus | FOOD | Menu items |
food_menu_schedule | FOOD | Menu schedule |
academic_events | CALS | Calendar events |
comments | ENGG | Comments on activities/diary |
reactions | ENGG | Likes/loves on content |
staff_student | STUD | Staff-to-student assignment |
staff_designation | STAF | Role + RBAC config |
staff_address | STAF | Staff address |
staff_leave | STAF | Staff leave records |
student_address | STUD | Student address |
student_guardian | STUD | Guardian information |
registrations | ADMN | School registration leads |