MVC::Keayl::Admin¶
The latest version of this documentation lives at https://gdonald.github.io/MVC-Keayl-Admin/.
The homepage for MVC::Keayl::Admin is https://github.com/gdonald/MVC-Keayl-Admin.
Synopsis¶
MVC::Keayl::Admin is a generated administration interface for applications built on MVC::Keayl, in the spirit of Django admin and Active Admin.
The admin mounts as an engine and depends on the framework's public surface only. The model layer is delegated to ORM::ActiveRecord and view rendering to Template::HAML. It carries a frontend opinion (Bootstrap 5, Bootstrap Icons, HTMX) that MVC::Keayl deliberately does not. The dependency runs one way: the admin depends on MVC::Keayl, never the reverse.
Design principles¶
- Explicit, not magic. Every surface is declared by hand. Nothing is inferred at request time.
- No foreign-key enumeration. A
selector association filter requires an explicitcollection, so a large table is never enumerated into a dropdown. - Introspection only at generate time.
keayl generate admin <Model>reads the schema and writes explicit declarations that the developer then edits. - Server-rendered, progressive enhancement. Bootstrap 5 with Bootstrap Icons and HTMX, all vendored and served through the asset pipeline. With JavaScript disabled every action degrades to a full-page request.
- Django-style layout. A left sidebar of grouped, ordered menu entries and a right main content area for index, show, and form pages.