Overview
Building an application with Reboot is meant to feel a lot like building an application using in-memory data structures: you simply define data types and methods on those data types that you can call.
In Reboot, those data types are actually durable state, meaning that
when you update them they get persisted for you. And the methods are
of a specific kind, either a
reader
, writer
, transaction
, or workflow
.
We call the combination of these data types and methods durable data structures (think durable objects, but so much more).
API
With Reboot, you define the API for your durable data structures up front:
- Define your API using Zod (TypeScript only)
- Define your API using protobuf (TypeScript or Python)
- Define your API using Pydantic (Python only, coming soon!)
Code generation
Reboot generates:
- Type-safe, language-specific code for:
rbt dev run
will automatically generate code from your Zod schemas
or .proto
files and reload your application when your API changes.