Skip to content

About

Durable operation tooling for Cloudflare Workers

Resources

Contributing

Security policy

Stars

13 stars

Watchers

0 watching

Forks

Repository files navigation

Durability

Durable operation tooling for Cloudflare Workers and SQLite-backed Durable Objects.

Documentation

The documentation site targets durability.shirei.dev, with shirei.dev redirecting there. It is a deployable Cloudflare Worker, with a getting-started guide, a separate page and implementation walkthrough for every primitive, illustrated application compositions, and searchable API references.

pnpm install
pnpm --filter durability-docs dev

To build and deploy it, see docs/README.md.

Packages

Package Description
durability Composable Durability operations, DurabilityAlarms, DurabilityFanout, DurabilityLog, DurabilityRouting, and DurabilitySocket browser sync for application-owned SQLite-backed Durable Objects.
@durability/storage Shared migration types for Durable Object storage.
@durability/transforms Typed caller and callee transforms for Cloudflare RPC, including a Vite plugin.
@durability/lint Oxlint rules for durability migrations and alarm delegation.

Each package has its own API documentation. Complete example Workers for every primitive live in examples/; they are type-checked as part of the validation suite.

Development

This repository uses pnpm. Libraries require Node.js 22 or newer; building the docs site requires Node.js 22.23.4 or newer.

pnpm install
pnpm check

The validation suite formats, lints, builds, type-checks, tests, and validates the publishable package manifests. Run an individual task with a workspace filter when needed:

pnpm --filter durability test
pnpm --filter @durability/transforms test

The Worker integration tests run locally through @cloudflare/vitest-pool-workers; they do not require Cloudflare credentials.

Releases

Package versions and release notes are managed with Changesets. Add a changeset to every pull request that changes a published package:

pnpm changeset

GitHub Actions creates and updates a version pull request. After that pull request is merged, the release workflow publishes the new package versions from main through npm trusted publishing and records provenance for each release.

Publishing requires a trusted publisher for each npm package that is restricted to the release.yaml workflow and the npm GitHub environment.

License

ISC

About

Durable operation tooling for Cloudflare Workers

Resources

Contributing

Security policy

Stars

13 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages