Documentation previewThese docs are actively being built. Some pages may change as the framework and examples are finalized.
Skip to content

Drivers

One contract per primitive, 49 interchangeable backends. Configuration selects the driver; your code depends on the contract. This page is the full matrix. Each library's page documents constructors, configuration, and tradeoffs per driver.

Queue

Ten drivers behind one queue API. The first three live in the root module; the rest are optional driver modules you go get only if you use them.

DriverWhat it is for
workerpoolIn-process async workers, the local-first default
syncInline execution, useful for tests and CLIs
nullAccepts jobs and drops them, for disabling queues cleanly
redisDurable distributed queue with full admin operations
natsQueue-subject routing over NATS
rabbitmqBroker-backed delivery and workers
sqsAWS-native queue transport
postgresDurable SQL-backed queue
mysqlDurable SQL-backed queue
sqliteDurable embedded SQL queue

Details: queue library · queues in the framework

Events

Nine drivers behind one typed event bus.

DriverWhat it is for
syncIn-process dispatch, the local-first default
nullDrops events, for disabling fan-out cleanly
natsSubject-based distributed pub/sub
jetstreamDurable stream-backed events
redisSimple distributed fan-out
kafkaTopic-based fan-out
snsSNS fan-out with SQS delivery
gcppubsubTopic and subscription fan-out
sqsQueue-backed event delivery

Details: events library · events in the framework

Cache

Ten drivers behind one cache API with TTLs, locks, counters, and rate limits.

DriverWhat it is for
memoryFastest in-process cache, the local-first default
fileDurable single-host cache
nullNo-op cache, for disabling caching cleanly
redisShared cache, locks, and rate limits
memcachedSimple shared TTL cache
natsJetStream KV-backed cache
dynamodbDynamoDB-backed shared cache
sqliteDurable embedded SQL cache
postgresDurable shared SQL cache
mysqlDurable shared SQL cache

Details: cache library · cache in the framework

Storage

Nine drivers behind one storage API for files and blobs.

DriverWhat it is for
localLocal filesystem disks, the local-first default
memoryIn-memory disks for tests
s3S3-compatible object storage
gcsGoogle Cloud object storage
sftpRemote filesystem over SSH
ftpRemote filesystem integration
dropboxDropbox-backed file storage
redisTemporary distributed blob storage
rcloneAny rclone-supported remote

Details: storage library · storage in the framework

Mail

Eight drivers behind one fluent message builder.

DriverWhat it is for
logWrites messages to the log, the local-first default
smtpAny SMTP server, including Mailpit locally
resendResend API delivery
postmarkPostmark API delivery
mailgunMailgun API delivery
sendgridSendGrid API delivery
sesAmazon SES delivery
fakeIn-memory capture for tests

Details: mail library

Database

Three drivers behind generated connections and the ORM. Dialect differences live in per-driver migration files, rendered for you.

DriverWhat it is for
sqliteLocal-first embedded SQL, the day-one default
postgresProduction relational database
mysqlProduction relational database

Details: database strategy · migrations

How Selection Works

Driver support is compiled in through *_SUPPORTED_DRIVERS, selection happens at runtime through *_DRIVER variables, and misconfiguration fails fast at startup instead of failing quietly in production. Driver selection covers how to choose; the swap section on the landing page shows the same service code running against local and production backends.