Skip to content
Packages Examples Agents Blog Get started
┌────────────────────────────────────────────────────┐
│ Ring 3 — App / Plugin code │
│ - declares Resources, custom RowActions, │
│ PageDefinitions, widgets, settings panels │
│ - registers via BaseAdminContributor │
└────────────────────────────────────────────────────┘
↑ depends only on contracts
┌────────────────────────────────────────────────────┐
│ Ring 2 — oridecon-admin │
│ - Resource/Action/Page/Form/Table orchestration │
│ - DashboardAssembler, NavigationAssembler │
│ - AdminRenderer, AdminRouter, AdminBuilder │
│ - resource-scoped RBAC (field/action/record) │
│ - admin-specific UX (filter bar, command palette) │
└────────────────────────────────────────────────────┘
↑ consumes
┌────────────────────────────────────────────────────┐
│ Ring 1 — Framework packages (existing) │
│ oridecon-contracts ← all admin-facing protocols │
│ oridecon (core), oridecon-ui, oridecon-web │
│ oridecon-auth (identity, sessions, OAuth) │
│ oridecon-tenancy (tenant resolution, isolation) │
│ oridecon-monitor (metrics, health, observability) │
│ oridecon-events (command/query/event buses) │
│ oridecon-cache, oridecon-tasks, oridecon-search, │
│ oridecon-resilience (OPTIONAL light-up) │
└────────────────────────────────────────────────────┘

Admin orchestrates; it does not implement identity, tenancy, or metrics.

PackageVersionPurpose
oridecon≥0.2DI container, Provider, Module, Result
oridecon-contracts≥0.2All admin-facing protocols, BaseAdminContributor
oridecon-ui≥0.2UI components: atoms, molecules, organisms
oridecon-web≥0.2ASGI / Starlette integration, AdminRouter
oridecon-sql≥0.2Database provider, data source protocol
oridecon-events≥0.2CQRS buses, domain events
IntegrationPackageDeclarative knobWhat it gives you
Cacheoridecon-cacheResource.cacheable = Truelist() results cached with TTL; invalidation on create/update/delete
Tasksoridecon-tasksBulkAction.task_runner = "tasks"Bulk actions dispatched as background tasks; progress visible in admin UI
Searchoridecon-searchResource.searchable = TrueResources indexed on create/update/delete; ?q= uses framework search engine
Resilienceoridecon-resilienceDataSource.resilient = TrueData-source calls wrapped in retry + circuit-breaker
Featuresoridecon-featuresAdminBuilder.feature(name)Feature-flag gating for admin sections
Storageoridecon-storageFileField.storage = "s3"File uploads routed through framework storage backend
Authoridecon-auth(automatic when installed)Identity, sessions, JWT, OAuth delegated to framework
Tenancyoridecon-tenancyAdminConfig.tenancy.enabled = TrueMulti-tenant resource scoping delegated to framework
Monitororidecon-monitor(automatic when installed)Metrics, health checks, structured logging delegated to framework
  • Identity, sessions, OAuth, JWT — delegated to oridecon-auth. Admin keeps only resource-scoped RBAC (field/action/record-level permissions).
  • Tenant resolution and isolation — delegated to oridecon-tenancy. Admin keeps only tenant-scoped resource query wrappers.
  • Metrics, health checks, tracing — delegated to oridecon-monitor. Admin keeps only the dashboard health rollup widgets.
  • CQRS buses — delegated to oridecon-events. Admin defines only the message marker classes.