Schema editor
Use the schema editor to design a service as a visual diagram. Entities appear as nodes, relationships appear as edges, and the AI chat panel can generate or edit the schema from a prompt.
Layout
- The visual canvas displays entity nodes and relationship edges. Use its controls to pan, zoom, or navigate with the minimap.
- The AI chat panel plans and applies schema changes from natural-language prompts. A progress log displays each step.
- Entity, field, and relationship dialogs provide precise manual controls.
Entities
- Create or rename an entity in the entity dialog.
- Delete an entity from its confirmation dialog.
- Select an entity node to view and edit its fields.
Fields (properties)
Add or edit a field with the property dialog:
- Property Name: Enter the field name.
- Data Type: One of the types in the Supported data types table.
- Primary Key: Mark the field as the primary key.
- Not Null: Require a value. Apso stores this setting as
nullable: false. - Unique Value: Enforce uniqueness.
- Enum values: For an
enumfield, enter the allowed values.
created_at / updated_at are treated as managed timestamp fields.
The field dialog supports primary key, required, unique, and enum constraints. Configure defaults and additional validation in .apsorc.
Data types
The Data Type selector offers these PostgreSQL types:
varchar (String) | text | integer |
bigint | smallint | decimal |
real (Float) | double precision | boolean |
timestamp | timestamptz | date |
time | uuid | json |
jsonb | enum | array |
Relationships
Add or edit a relationship with the relationship dialog by choosing a source entity, a target entity, and a type:
| Type | Meaning |
|---|---|
| OneToOne | Each source relates to exactly one target |
| OneToMany | Each source relates to many targets. Direction sets one-to-many or many-to-one. |
| ManyToMany | Many sources relate to many targets |
Relationships render as edges between entity nodes on the canvas.
AI-assisted editing
Use the chat panel to describe the schema you need. The assistant plans the work, applies entity, field, and relationship changes to the diagram, and streams a progress log. Use the entity and relationship dialogs for precise manual edits.
Manage migrations during deployment
The schema editor changes the schema definition. The deployment pipeline generates and applies migrations. To preview and verify a database change locally, use apso migrate before deployment.
Related
- Field types: type reference
- Entities and Relationships
- Service List