What is Anvil?
Anvil is a library for building secure business applications with CodeIgniter 4. You describe panels, resources, tables and forms in PHP; Anvil renders them as a consistent, modern Bootstrap interface and takes care of routing, navigation, permissions and auditing.
Design goals
Section titled “Design goals”Security is the first design goal. Every feature follows the same rules:
- Deny by default – nothing is visible or possible without a permission.
- Public UUIDs – internal integer ids never reach the browser.
- Tenant isolation – enforced in every query, not left to the developer.
- Tamper evident audit log – every change is recorded with its actor.
- Strict Content Security Policy – no inline scripts or styles, no CDNs.
Read more in Security principles.
Building blocks
Section titled “Building blocks”| Building block | Purpose |
|---|---|
| Panels | A self-contained area of the application, e.g. /admin |
| Resources | A model with its list, form, detail page and permissions |
| Tables | Lists with columns, filters, search, cards and actions |
| Forms | Fields, validation and layouts |
| Workflows | States, transitions, tasks and deadlines per record |
| Notifications | Messages for users in the panel |
Requirements
Section titled “Requirements”- PHP 8.5+ with
intl,mbstringandjson - CodeIgniter 4.7+ with Shield
- MySQL 8.0+ (8.4 LTS recommended for production)
Continue with the installation.