Quickstart
Get up and running in minutes.
Install
Section titled “Install”uv add lexigram-admin# Optional: install extras for auth, caching, searchuv add "lexigram-admin[auth,cache,search,export]"Basic Usage
Section titled “Basic Usage”from __future__ import annotations
from lexigram import Applicationfrom lexigram.admin import AdminModulefrom lexigram.admin.resources.base import Resourcefrom lexigram.admin.schema import TextField, EmailField, BooleanField, DateField
class UserResource(Resource): model = None name = "users" cluster = "users" icon = "users" fields = [ TextField(name="name", required=True, sortable=True, searchable=True), EmailField(name="email", required=True), BooleanField(name="is_active", label="Active"), DateField(name="created_at", sortable=True), ]
module = AdminModule.configure(resources=[UserResource])app = Application(modules=[module])
if __name__ == "__main__": app.run()What Just Happened
Section titled “What Just Happened”AdminModule.configure()created aDynamicModulewith the admin bundle provider, registering your resource, its auto-derived CRUD pages, and the admin router.Application(modules=[...])booted the DI container, resolved the admin provider, mounted the admin sub-app at/admin.- Visiting
/admin/users/shows a sortable, searchable, filterable list page — with zero frontend code. - Visiting
/admin/users/createrenders an auto-generated form from your SchemaField definitions.