Skip to content

AdonisJS 7 · Lucid · VineJS · Inertia

Build the admin your app already knows.

Describe each Lucid model once. Adonia turns that resource into secure tables, forms, validation, authorization, actions, and detail views.

A central server schema branching into table, form, and detail interface projections.
One server-owned schemaTable · Form · Detail
Server authorizationLucid-native queriesVineJS validationTyped client contract

One schema, one trusted path

A resource definition becomes the index, create, edit, and detail projections, the VineJS validator, and the safe persistence allowlist. Adonia keeps those contracts together instead of asking the browser to reproduce server decisions.

The same runtime includes tables, relations, actions, dashboards, global search, tenancy, soft deletes, uploads, authorization, custom fields, plugins, and queue/search adapters. Everything remains native to AdonisJS, Lucid, VineJS, Bouncer, Ace, and Inertia + React.

Choose a path

Build your first panel

  1. Read the requirements and installer contract.
  2. Follow Build a blog admin for an end-to-end application.
  3. Use Panels and Resources as the daily authoring guides.
  4. Keep the generated Fields reference and Public API nearby.

Learn the model

Start with the Introduction. It explains the resource abstraction, the one-tree/many-projections model, the server/client descriptor boundary, and why omitted fields disappear from rendering, validation, and persistence together.

Then go deeper:

Operate in production

Use the deployment and security checklist, then review observability, performance, the bundle budget, CI gates, and the upgrade policy. Run adonia:doctor after installation and upgrades.

Understand or extend the internals

The descriptor protocol v1 defines the frozen wire format and its additive extension rules. Contributors should begin with the contribution guide.

The shortest working path

In an AdonisJS 7 application with Lucid and Inertia + React:

node ace add @adonia/core
node ace migration:run
node ace adonia:resource Post
node ace serve --hmr

The installer publishes the default panel and generic Inertia pages, registers the provider and codegen hook, wires styles and middleware seams, and creates action persistence migrations. Visit /admin after the server starts.

Packages

Package Responsibility
@adonia/core Server runtime, resource DSL, query and validation pipelines, protocol, provider
@adonia/ui React pages, renderer, component registry, hooks, theme, styles
@adonia/devtools Installer, Ace commands, generators, codegen, doctor checks
@adonia/queue-bullmq BullMQ queued-action adapter
@adonia/meilisearch Meilisearch driver adapter
adonia-activity-log Authorization-safe activity log reference plugin
adonia-import-export Streaming import and queued export reference plugin

The complete tutorial application is maintained in examples/blog-admin; reusable starter content is in templates/adonia-starter.

Type to search…

↑↓ navigate↵ selectEsc close