A comprehensive School Management System built for Jolis ICT Academy using OOP PHP without any framework.
- Developer: Jackisa Daniel Barack
- Email: barackdanieljackisa@gmail.com
- Website: jackisa.com
- Created: January 30, 2026
- Modern, responsive landing page
- About and Contact pages
- Dynamic statistics display
- Single login page for all roles
- Role-based redirection (Instructor/Student)
- Password reset via email
- Remember me functionality
- Secure password hashing (bcrypt cost 12)
- Class management
- Student management
- Subject management
- Exam creation and management
- Results entry with automatic grading
- Homework assignment and grading
- Exam scripts upload
- Reports and analytics
- Notice posting
- Profile management
- View results with term summaries
- Submit homework
- Download exam scripts
- View notices
- Profile management
- O'Level Grading (UCE): D1 to F9 with aggregates
- A'Level Grading (UACE): A to F with points
- Exam types: BOT (20%), MID (20%), EOT (60%)
- Automatic grade calculation
- Performance charts and analytics
- Classes: S1 to S6
- Streams: A, B, C, D
- Levels: O'Level (S1-S4), A'Level (S5-S6)
- Terms: Term 1, Term 2, Term 3
- Subjects with multiple papers
- Backend: PHP 8.0+ (OOP, no framework)
- Database: MySQL with PDO
- Frontend: Bootstrap 5, jQuery, Chart.js
- Email: PHPMailer
- Icons: Bootstrap Icons
- Tables: DataTables
- Notifications: Toastr
-
Clone or download the project to your web server directory
-
Create a MySQL database named
jolis_sms -
Import the database schema:
check seeders folder
-
Copy
.env.exampleto.envand configure:cp .env.example .env
-
Update
.envwith your database and SMTP credentials -
Install Composer dependencies:
composer install
-
Run the database seeder:
php database/seeders/DatabaseSeeder.php
-
Configure your web server to point to the
publicdirectory
- Email: barack@jolis.academy
- Password: password123
- Email: gorret@jolis.academy
- Password: password123
| Grade | Marks | Points | Comment |
|---|---|---|---|
| D1 | 80-100 | 1 | Distinction |
| D2 | 70-79 | 2 | Very Good |
| C3 | 65-69 | 3 | Good |
| C4 | 60-64 | 4 | Good |
| C5 | 55-59 | 5 | Credit |
| C6 | 50-54 | 6 | Credit |
| P7 | 45-49 | 7 | Pass |
| P8 | 40-44 | 8 | Pass |
| F9 | 0-39 | 9 | Fail |
| Grade | Marks | Points | Comment |
|---|---|---|---|
| A | 80-100 | 6 | Excellent |
| B | 70-79 | 5 | Very Good |
| C | 60-69 | 4 | Good |
| D | 50-59 | 3 | Credit |
| E | 40-49 | 2 | Pass |
| O | 35-39 | 1 | Subsidiary Pass |
| F | 0-34 | 0 | Fail |
GET /api/stats- School statistics
GET /api/dashboard/stats- Dashboard statisticsGET /api/dashboard/charts- Chart dataGET /api/classes- List classesGET /api/students- List studentsGET /api/subjects- List subjectsGET /api/exams- List examsPOST /api/results- Save resultPOST /api/results/bulk- Bulk save resultsGET /api/grading/calculate- Calculate gradeGET /api/grading/scales/{levelId}- Get grading scales
All rights reserved. This software is proprietary and confidential.
© 2026 Jolis ICT Academy. Developed by Jackisa Daniel Barack