Skip to content
Alvo is pre-v0.1: the image runs from its edge tag, and no NuGet package or release is published yet.Pre-v0.1: no release yet.Roadmap and status

entities

Entity definitions.

Guide: Entities and fields

The entities block spans these pages: entities · entities · fields · entities · computed & rollups · entities · rules · entities · hooks · entities · indexes.

Entity definitions. Key = entity name (snake_case, plural recommended). Each entity auto-generates a CRUD API, validation, and a schema registry record. The name users is reserved (the built-in auth entity).

  • Type: map of object
  • Required: yes
  • Names match ^[a-z][a-z0-9_]{0,62}$.
  • Reserved name: users is not allowed.

Human-readable description of the entity (surfaced to agents and in the admin UI).

  • Type: string
  • Required: no

Previous name of this entity: declares a rename so apply preserves data instead of drop+add. Safe to leave permanently; ignored once the old name no longer exists.

  • Type: string
  • Required: no
  • Pattern: ^[a-z][a-z0-9_-]{0,62}$

physical = a real table (introspected/migrated); dynamic = the shared metadata-driven store (no DDL, instant apply). Everything above the registry treats both identically.

  • Type: string
  • Required: no
  • Values: "physical", "dynamic"
  • Default: "physical"

scoped = rows carry tenant_id and are isolated per tenant (default when tenancy.enabled); global = shared reference data (číselník) visible to all tenants.

  • Type: string
  • Required: no
  • Values: "scoped", "global"

Framework-managed soft delete: a managed deleted_at column, DELETE becomes a soft delete, and reads/list/get/rollup auto-exclude soft-deleted rows. A restore operation is provided.

  • Type: boolean
  • Required: no
  • Default: false

Inject framework-managed audit columns: created_at, created_by, updated_at, updated_by.

  • Type: boolean
  • Required: no
  • Default: false

Publish changes over the realtime channel (with subject-level authz).

  • Type: boolean
  • Required: no
  • Default: true