CHANGELOG

Changelog

All notable changes to MVC::Keayl::Admin are documented here.

[0.9.0] - 2026-07-11

Initial public release. A generated administration interface for MVC::Keayl applications. The admin mounts as an engine, delegates the model layer to ORM::ActiveRecord and view rendering to Template::HAML, and ships a Bootstrap 5, Bootstrap Icons, and HTMX frontend served through the asset pipeline.

Added

  • Engine mounting so the admin attaches to a host MVC::Keayl application without the framework depending on the admin.

  • Resource registration with an explicit DSL, backed by a registry of declared resources.

  • Index pages with columns, sorting, and pagination.

  • Index presentations and panels for laying out list views.

  • Show pages with attribute and panel rendering, including nested belongs_to associations.

  • Forms for create and update, with fields, formatters, and validation surfacing.

  • A :label option on column and field to override the humanized column header or form label.

  • An :html flag on column and attribute so a trusted display value renders as raw markup instead of being HTML-escaped, honored on the table, grid, and blog index presentations and on show-page attributes.

  • Filters and search, with association filters that require an explicit collection so large tables are never enumerated into a dropdown, in an offcanvas panel rendered outside the htmx-swapped index body so sorting, paging, or filtering never tears down an open panel.

  • Scopes for predefined, named record subsets.

  • Destroy, batch, and custom actions, with per-action availability and a toolbar that groups batch controls on the left with the collection actions, New-record button, and Filters button on the right, and a footer row placing pagination and the record summary opposite the export links.

  • Menu bar actions and a navigable left sidebar with a dashboard landing page.

  • Nested resources.

  • Data export.

  • Authentication, with session and HTTP basic strategies.

  • Authorization, with roles, abilities, and policies.

  • Layout and chrome: a Django-style left sidebar of grouped, ordered menu entries and a right main content area, with page headings that name the current page and breadcrumbs limited to a nested resource's ancestor trail.

  • Asset pipeline serving vendored Bootstrap 5, Bootstrap Icons, and HTMX, with progressive enhancement so every action degrades to a full-page request when JavaScript is disabled.

  • Internationalization support.

  • Inflection and pluralization helpers for generated labels and routes, title-casing each word of a label and dropping a trailing _id or _at suffix.

  • keayl generate admin <Model> generator that reads the schema and writes explicit declarations for the developer to edit.

  • Test support helpers for exercising admin resources.

MVC::Keayl::Admin v0.9.0

Generated administration interface for MVC::Keayl applications

Authors

  • Greg Donald

License

Artistic-2.0

Dependencies

MVC::Keayl:auth<zef:gdonald>ORM::ActiveRecord:auth<zef:gdonald>Template::HAML:auth<zef:gdonald>

Provides

  • MVC::Keayl::Admin
  • MVC::Keayl::Admin::ActionItem
  • MVC::Keayl::Admin::Assets
  • MVC::Keayl::Admin::AssetsController
  • MVC::Keayl::Admin::Attachments
  • MVC::Keayl::Admin::Attribute
  • MVC::Keayl::Admin::Authentication
  • MVC::Keayl::Admin::Authentication::Basic
  • MVC::Keayl::Admin::Authentication::Session
  • MVC::Keayl::Admin::Authorization
  • MVC::Keayl::Admin::Authorization::Abilities
  • MVC::Keayl::Admin::Authorization::Policy
  • MVC::Keayl::Admin::Authorization::Role
  • MVC::Keayl::Admin::BatchAction
  • MVC::Keayl::Admin::Chrome
  • MVC::Keayl::Admin::Column
  • MVC::Keayl::Admin::Config
  • MVC::Keayl::Admin::Controller
  • MVC::Keayl::Admin::CustomAction
  • MVC::Keayl::Admin::DSL
  • MVC::Keayl::Admin::Dashboard
  • MVC::Keayl::Admin::DashboardController
  • MVC::Keayl::Admin::Engine
  • MVC::Keayl::Admin::ExportSpec
  • MVC::Keayl::Admin::Field
  • MVC::Keayl::Admin::Filter
  • MVC::Keayl::Admin::FilterPanel
  • MVC::Keayl::Admin::Form
  • MVC::Keayl::Admin::Formatter
  • MVC::Keayl::Admin::Generators
  • MVC::Keayl::Admin::I18n
  • MVC::Keayl::Admin::IndexView
  • MVC::Keayl::Admin::Inflection
  • MVC::Keayl::Admin::Menu
  • MVC::Keayl::Admin::MenuEntry
  • MVC::Keayl::Admin::Nested
  • MVC::Keayl::Admin::Page
  • MVC::Keayl::Admin::PageController
  • MVC::Keayl::Admin::Pages
  • MVC::Keayl::Admin::Pagination
  • MVC::Keayl::Admin::Panel
  • MVC::Keayl::Admin::Panels
  • MVC::Keayl::Admin::Paths
  • MVC::Keayl::Admin::Predicate
  • MVC::Keayl::Admin::Registry
  • MVC::Keayl::Admin::Resource
  • MVC::Keayl::Admin::ResourceController
  • MVC::Keayl::Admin::Scope
  • MVC::Keayl::Admin::Scopes
  • MVC::Keayl::Admin::Show
  • MVC::Keayl::Admin::Table
  • MVC::Keayl::Admin::TestSupport
  • MVC::Keayl::Admin::Url
  • MVC::Keayl::Admin::View

The Camelia image is copyright 2009 by Larry Wall. "Raku" is trademark of the Yet Another Society. All rights reserved.