# SchoolPro Phase 1 — cPanel Deployment

1. Create a subdomain in cPanel, for example `school.example.com`.
2. Create a MySQL database and database user, then grant the user **ALL PRIVILEGES** on that database.
3. Upload all files from this package into the subdomain folder.
4. Set the subdomain document root to the package `public` folder. If cPanel cannot do that, move the contents of `public` into the document root and adjust `../` paths carefully.
5. Ensure `config` and `storage` are writable during installation (usually permissions 755; use 775 only when required by your host).
6. Visit `https://school.example.com/install.php`.
7. Enter the database details and create the first Super Administrator.
8. Delete or rename `install.php` after successful installation.
9. Sign in and register a device name when prompted.

## Requirements
- PHP 8.1+
- PDO MySQL extension
- MySQL 5.7+ or MariaDB 10.4+
- HTTPS certificate

## Security before production
- Delete installer after installation.
- Keep `config/config.php` outside public access where possible.
- Enable automatic backups.
- Use strong administrator passwords.
- Restrict database user permissions to this database only.
- Add server-side IP geolocation only after privacy policy and consent review.

## Phase 1 included
Installer, authentication, dashboard, students, multiple O/A-Level sessions, schedules, group/individual invoices, custom fields, audit trail, online users, import templates, and integration placeholders.
