Project Overview
AVT School ERP (المدرسة) - Complete School Management System
Multi-tenant SaaS platform for schools from Playgroup to Class 12. Manages admissions, academics, finance, HR, and operations.
1.0.0
Version
100%
Backend
95%
Web Admin
80%
Mobile Apps
Platform Enables:
- Admissions - Complete enrollment workflow
- Students - Profiles, certificates, promotions
- Attendance - Daily & period-wise tracking
- Exams - Marks entry, report cards
- Fees - Invoicing, payments, concessions
- HR - Staff management, payroll
- Transport - Routes, stops, vehicles
- Library - Books, issues, returns
Complete ERP Process Flow
START
1. Setup Masters
2. Configure Fees
3. Admission Inquiry
4. Approve & Enroll
5. Mark Attendance
6. Create Timetable
7. Conduct Exams
8. Enter Marks
9. Generate Reports
10. Collect Fees
11. Promote Students
END
Phase 0: Foundation & Architecture
✅ Complete| Task | Description | Status |
|---|---|---|
| Monorepo Setup | API + Web Admin + Mobile in single repo | Done |
| TypeScript Configuration | Strict mode, path aliases, shared types | Done |
| Express API Setup | Modular router structure, middleware pipeline | Done |
| Multi-tenant Architecture | Tenant resolver middleware, x-tenant-id header | Done |
| JWT Authentication | Access + Refresh tokens, session management | Done |
| RBAC Implementation | 7 roles with permission matrix | Done |
| Security Headers | CORS, rate limiting, helmet | Done |
| Audit Logging | Write operations audit trail | Done |
Phase 1: Core Masters
✅ Complete| Feature | APIs | Status |
|---|---|---|
| Academic Years | CRUD + current year flag | Done |
| Classes | CRUD + grade levels + ordering | Done |
| Sections | CRUD + class mapping + capacity | Done |
| Subjects | CRUD + subject types + credits | Done |
| Bulk Import/Export | CSV import and export for all masters | Done |
Phase 2: Student Lifecycle
✅ Complete| Feature | Description | Status |
|---|---|---|
| Admission Inquiries | Create, list, status workflow | Done |
| Document Management | Document checklist, upload tracking | Done |
| Student Profiles | Create, update, list students | Done |
| Promotions | Promote to next class, history tracking | Done |
| Certificates | TC, Bonafide, Character, Fee Clearance | Done |
| Certificate Templates | Customizable templates per type | Done |
| PDF Generation | Download certificates as PDF | Done |
| Exit Processing | Mark student exit/transfer | Done |
Phase 3: Academics
✅ Complete| Feature | Description | Status |
|---|---|---|
| Daily Attendance | Class-wise daily marking | Done |
| Period Attendance | Period-wise tracking | Done |
| Attendance Summary | Student-wise percentage | Done |
| Attendance Analytics | Class-wise trends and reports | Done |
| Timetable Entries | Period scheduling with conflicts | Done |
| Exam Setup | Create exams with grading rules | Done |
| Marks Entry | Subject-wise marks input | Done |
| Result Publication | Publish results to students | Done |
| Report Cards | Generate student report cards | Done |
| Re-evaluation | Re-evaluation requests workflow | Done |
Phase 4: Finance
✅ Complete| Feature | Description | Status |
|---|---|---|
| Fee Heads | Tuition, transport, etc. definitions | Done |
| Fee Plans | Class-wise fee structures | Done |
| Invoice Generation | Manual and auto invoice creation | Done |
| Admission Invoice | Auto-generate on admission approval | Done |
| Payment Recording | Record offline payments | Done |
| Razorpay Integration | Online payment processing | Done |
| Concessions | Scholarships, sibling discounts | Done |
| Outstanding Tracking | Due fees and reminders | Done |
| Fee Ledger | Student-wise fee history | Done |
Phase 5: Operations
✅ Complete| Feature | Description | Status |
|---|---|---|
| Transport Routes | Route creation and management | Done |
| Route Stops | Stop configuration per route | Done |
| Library Books | Book catalog management | Done |
| Book Issue/Return | Issue tracking with due dates | Done |
| Inventory Items | Stock register management | Done |
| Inventory Movements | In/Out/Adjustment tracking | Done |
| Notifications | Announcement system | Done |
Phase 6: HR & Payroll
✅ Complete| Feature | Description | Status |
|---|---|---|
| Staff Profiles | Employee information management | Done |
| Compensation Setup | Salary structure configuration | Done |
| Leave Requests | Apply and approve leaves | Done |
| Payroll Runs | Monthly payroll processing | Done |
| Payslips | Generate and view payslips | Done |
Phase 7: Reports
✅ Complete| Feature | Description | Status |
|---|---|---|
| Dashboard Summary | Key metrics overview | Done |
| Role-wise Dashboard | Custom views per role | Done |
| CSV Exports | Fees outstanding, attendance | Done |
| Scheduled Reports | Auto-generate reports on schedule | Done |
Phase 8: Mobile APIs
✅ Complete| Feature | Description | Status |
|---|---|---|
| Mobile Bootstrap | App initialization data | Done |
| Capabilities API | Module availability for tenant | Done |
| Subscription API | Plan and limits info | Done |
Web Admin Status (Angular 20)
95% CompleteCompleted Features:
- Login & Authentication
- Dashboard with role views
- Masters Management
- Admissions Module
- Attendance Module
- Exams Module
- Fee Setup
- Reports
- Notifications
- Certificate Templates
- User Guide Page
In Progress:
- Inventory Module
- Advanced Reporting
Mobile Apps (Flutter)
80% CompleteParent App
- Child Profile View
- Attendance View
- Fee Dues & Payment
- Notifications
- Result View
Teacher App
- Mark Attendance
- View Timetable
- Leave Requests
- Marks Entry
Student App
- Profile View
- Timetable
- Attendance
- Results
API Endpoints Summary
Auth
POST /auth/login POST /auth/refresh POST /auth/logout GET /auth/me
Masters
GET|POST /masters/academic-years GET|POST /masters/classes GET|POST /masters/sections GET|POST /masters/subjects GET /masters/export/:type.csv POST /masters/import/:type
Students
GET|POST /students GET|PATCH /students/:id POST /students/:id/promote POST /students/:id/exit POST /students/:id/certificates GET /students/:id/certificates/:type/pdf
Admissions
GET|POST /admissions/inquiries PATCH /admissions/inquiries/:id/status PATCH /admissions/inquiries/:id/documents
Attendance
GET /attendance/classes/:id/daily POST /attendance/classes/:id/mark GET /attendance/students/:id/summary GET /attendance/classes/:id/analytics
Exams
GET|POST /exams POST /exams/:id/marks POST /exams/:id/publish GET /report-cards/students/:id
Fees
GET|POST /fees/heads GET|POST /fees/plans GET|POST /fees/invoices POST /fees/receipts GET /fees/outstanding GET /fees/ledger/:studentId
Reports
GET /reports/dashboard GET /reports/dashboard/role-wise GET /reports/export/:type.csv POST /reports/schedules
Tech Stack
Backend
- Node.js + Express
- TypeScript
- MongoDB
- PDFKit (certificates)
- Razorpay (payments)
Web Admin
- Angular 20
- TypeScript
- Bootstrap 5
- RxJS
- Angular Material
Mobile
- Flutter
- Dart
- Provider/Riverpod
- Dio (HTTP)
- Local Storage