// 03 — Project

School
Management System

Comprehensive school management solution on Odoo 17 for Saudi educational institutions — QR kiosk attendance, student enrollment, fee management, grades, timetables, and multi-campus support.

Odoo 17 Python PostgreSQL 15 Docker Nginx QR Attendance Let's Encrypt
↗ View Live Platform
// Overview

About this project

The School Management System is a full-featured Odoo 17 deployment designed for Saudi educational institutions. It handles the day-to-day operations of a school — student enrollment and records, attendance, fee collection, academic grading, timetabling, and parent communication — all from a single integrated platform.

A standout feature is the QR kiosk attendance module: students and teachers check in by scanning a QR code with a camera-based kiosk, eliminating manual registers. The system supports multiple campuses and enforces a 7-role access model — Admin, Principal, Affairs, Accountant, Teacher, Parent, and Student — so every user sees exactly what they need.

// Features

Key Features

ENROLL
Student Enrollment & Records
Multi-campus student management with complete academic records. Supports parallel campuses with class-level organization and student photo profiles for ID card generation.
QR
QR Kiosk Attendance
Camera-based QR scan check-in for students and teachers. Teacher mode tracks check-in and check-out with duration calculation. Printable A5 QR ID cards with student photo.
FEES
Fee Management
Flexible fee collection with multiple payment methods and installment scheduling. Full payment records with accountant-level access controls and outstanding balance tracking.
GRADES
Grades & Exams
Bulk grade entry for efficient teacher workflows, exam scheduling and management, printable grade sheets, and a student-visible gradebook with subject-by-subject breakdowns.
TIMETABLE
Timetable Management
Weekly schedule builder for classes and teachers. Prevents double-booking of rooms and teachers. Supports different schedules per class and per campus.
COMMS
Parent Notifications
Bulk email notifications to parent contact lists directly from the platform. School-wide announcement system with targeted audience selection (class, campus, or all parents).
KPI
Analytics Dashboard
KPI cards for enrollment, attendance rates, fee collection, and exam performance. Pivot and graph views for trend analysis. Role-based KPI visibility — principals see school-wide data, teachers see their classes.
RBAC
7-Role Access Control
Admin, Principal, Affairs, Accountant, Teacher, Parent, and Student roles. Each role has scoped access — students see their own grades, parents see their children's records, teachers manage their classes.
// Stack

Technical Stack

FrameworkOdoo 17 Community
LanguagePython
DatabasePostgreSQL 15
ContainersDocker Compose
Reverse ProxyNginx
TLSLet's Encrypt (Certbot)
AttendanceQR Code + Camera
Custom Modulesschool_management · school_qr_attendance