Towards a Unified Schema for Software
Interactive graph
On this page
Towards a Unified Schema for Software
Schema facilitate understanding in communication
Written communication makes schema even more important since the reading is done asynchronously
Schemas consist of types
Schemas in Software Systems
Schema in client-server architecture
Approaches to compressing schema in client-server architecture
Schemas in local-first architecture
The Magic Scenario
An example: unified schema in DXOS with Effect Schema
Defining a schema
Inferring types from the schema
Instantiating, mutating, and replicating an object
Reactive objects update automatically when modified locally or by other devices
Validations
Dynamic errors from schema
Schema serialization and discovery
Interesting Schema-enabled Scenarios
Generate UI from the schema (tables)
Modify schema on the fly (tables)
Cross-app interop with runtime schema discovery
Inter-app interop via drag-and-drop
Schema-shaped responses from LLMs
Future Research
Schema migration
Schema serialization with arbitrary code exectuion
Outline