What's new in V3
Breaking change: data loss
Moving an existing V2 installation to V3 is a breaking change with data loss in the live database. The V3 migrations delete legacy academic records and remove schema columns. They do not convert all V2 records into the new academic model. Affected migrations cannot restore the deleted records through rollback.
Do not run these migrations on a live V2 database as a routine update. Keep a verified full database backup, uploaded files, and the original APP_KEY before you start. Read the upgrade details first.
V3 is a new major release of Skuul. It replaces the V2 application structure and data model. V2 is deprecated. The V2 guides remain only for existing V2 installations.
Choose your path
| Your situation | Action |
|---|---|
| New installation | Follow requirements and installation. |
| Production deployment | Follow deployment and set up backups and monitoring. |
| Existing V2 installation | Read updating. Test the migration on an isolated copy of your data. |
| Evaluation only | Use the disposable demo. |
Changed requirements
| Component | V2.6.4 | V3 |
|---|---|---|
| Framework | Laravel 10 | Laravel 13 and Livewire 4 |
| PHP | 8.1 or later | 8.4.1 or later |
| Node.js | 16 or later | 24 |
| Database | MySQL | MySQL 8 |
| Queue and cache | Not required | Redis |
| Backups | Not included | mysql and mysqldump in the backup runtime |
See requirements for the full list of PHP extensions.
New in V3
Organizations and access
- One installation holds several organizations, and each organization holds several campuses. See organizations and domains.
- Roles and permissions apply per campus. See roles and permissions.
- Each role has its own task guide. See instructions by role.
- Learners move between campuses, and campuses share selected records. See moves and record sharing.
- A browser installer creates the first platform administrator. There is no default password.
Students and families
- Admissions include a waitlist. See admissions.
- Parent accounts link to learners through guardian links. See guardians.
- The family portal shows attendance, results, timetables, invoices, and documents. See family portal.
- Families send requests to the campus from the portal. See requests.
Teaching and assessment
- Academic cycles hold dated teaching periods. Organizations share calendar templates. See calendars.
- Course offerings connect subjects, sections, and teachers. See offerings.
- Gradebooks hold assessments and grades for each offering. See gradebooks.
- Exam schedules set assessment windows. See exam schedules.
- Results go through review and approval before publication. See results.
- Report cards and transcripts come from published results.
- Progression and year-end handover have their own workflows. See progression and academic handover.
Finance
- Payments, refunds, and student credit post to a ledger. See payments and ledger.
- Financial periods control when postings are allowed.
- A reconciliation guide compares receipts, allocations, cash, and bank records. See reconciliation.
Optional campus features
Administrators turn each feature on or off per campus. See optional features.
| Feature | Guide |
|---|---|
| Discipline and wellbeing | Cases and wellbeing |
| Staff operations | Staff |
| Events and closure days | Campus calendar |
| Boarding | Boarding |
| Library | Library |
| Clubs and programmes | Groups and programmes |
| Student and staff imports | Imports |
Reports
- The report desk builds CSV, XLSX, and PDF exports in the background. See reports.
Operations
- Scheduled backups encrypt the database dump. File backups are available on a configured disk.
- A weekly restore rehearsal checks that a backup restores. See backups and monitoring.
- Health endpoints report the state of the application and its services.
skuul:release-readinesschecks the production configuration before deployment.skuul:updatetakes a backup before it updates a release-tag installation. See updating.- A recovery guide covers service failures. See service failure and recovery.
Removed in V3
The V3 migrations remove these V2 records. They do not convert them.
| V2 records | Result in V3 |
|---|---|
| Legacy course offerings | Deleted, with their roster links. |
| Gradebooks without a course offering | Deleted, with their categories, items, entries, and result snapshots. |
| Legacy exam results | Deleted, with their publication audit events. |
| Legacy grading systems | Deleted, with the grade-system schema. |
| Legacy class and section references | Removed from the affected tables. |
The migrations write selected removed rows to JSON archives under storage/app/legacy-v2. These archives are not a backup and have no automatic re-import. See retain removed V2 data.
Known limits
Read the known limits before you promise a feature to users. Report problems in the application issue tracker.