Module Development Guide
Modules extend Alpha-Omega CMS without altering its core. This guide explains the structure, lifecycle, and accessibility requirements of installable modules.
Module Structure
/modules/
└── example/
├── install.php
├── uninstall.php
├── Controllers/
├── Models/
└── Views/
Each module is self-contained, registering its own tables and routes. Installation and removal scripts handle schema creation and cleanup.
Security & Accessibility
All module views must comply with WCAG 2.1 AA standards and include aria-label, keyboard navigation, and sufficient color contrast. Forms must include CSRF tokens via App\Core\CSRF::token().
Best Practices
Use Session::requireAdmin() for administrative access, sanitize input with htmlspecialchars(), and structure all output through View::render().