Release Archive Back to Home
🚀 Version 4.0.0

Release Notes

MCQ online exams, a module management system, a pluggable frontend theme engine with two new themes, per-theme homepage content editing, About Pages, and a major security & data-integrity hardening pass.

Released: 12 June 2026
12 Commits
293 Files Changed
14,500+
Lines Added
293
Files Modified
12
Commits

New Features

MCQ Online Exam Module New

A complete multiple-choice exam subsystem: build a question bank, assign questions per exam, and run timed attempts with question/option shuffling. Automatic grading (with optional negative marking), result publishing, per-question statistics, and Excel export of results. Questions and exams lock automatically once attempts exist.

Module Management New

Enable or disable application modules from a dedicated admin page. Disabled modules disappear from sidebars and dashboards and their routes are blocked, while core modules stay protected and can never be switched off.

Frontend Theme System New

The public website is now fully themeable. Choose between the classic Skylark theme and two brand-new designs — KingFisher and Phoenix — from a dedicated Themes page in the admin panel. Themes can override any public page and fall back gracefully where they don't.

Editable Homepage Content New

Each theme's homepage sections — texts, images, icons, and repeating cards — can be edited from a modern tabbed content editor with live icon previews and image uploads. Leave a field blank and it falls back to the theme's built-in default.

About Pages New

Create unlimited rich-text "About Us" pages with a CKEditor-powered admin CRUD, slug-based URLs, ordering, and active toggles. Published pages appear automatically in the public site's header, mobile menu, and footer.

Configurable Hero Texts

The homepage hero badge, titles, and recognition text are no longer hard-coded — they're driven by your school settings and editable through the slider form.

Security & Data Integrity

Secure File Storage

Sensitive uploads now live on a private disk and are streamed through a secure download controller behind admin authorization — files are no longer directly reachable by URL.

Server-Side Admin Authorization

Admin-area routes are now enforced server-side against the user's menu permissions, so access control no longer relies on hiding links alone.

Atomic Number Generation

Receipt, payroll, transaction, support-ticket, and system ID generation now use database row locks inside transactions — duplicate numbers under concurrent use are no longer possible.

Transactional Financial Operations

Fee collections, payroll, account transactions, student promotions, and batch fee operations are wrapped in database transactions so ledger data stays consistent even if something fails mid-way.

Guarded Data Reset

Resetting application data now requires typing RESET and confirming your current password — both verified on the server.

Overpayment Protection

Fee collection now rejects payments greater than the payable amount after discount, in both single and bulk collection.

Improvements

Richer Academic Setup Pages

The Classes list now shows subject, exam, fee, and teacher counts per class; the Sessions list gains student counts, stats tiles, and deletion protection for sessions that still have students.

Centralised Grade Calculation

Transcript grading is now handled by a single GradeCalculator service, keeping report cards, tabulation sheets, and transcripts consistent.

Expanded Automated Test Coverage

New model factories, seeders, and feature/unit tests cover academic results, number generation, fee collection rules, MCQ exams, and module toggling — guarding the upgrade path for future releases.

Looking for an earlier release? Browse the release archive.