- Updated: February 28, 2026
- 7 min read
Rivet Platform Empowers Developers with Open‑Source Cloud Infrastructure
Skip to content You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert rivet-dev / rivet Public Notifications You must be signed in to change notification settings Fork 155 Star 5.1k Rivet Actors are a serverless primitive for stateful workloads.Each actor has built-in state, storage, workflows, scheduling, and WebSockets — everything needed to build the next generation of software. www.rivet.dev License Apache-2.0 license 5.1k stars 155 forks Branches Tags Activity Star Notifications You must be signed in to change notification settings Code Issues 8 Pull requests 58 Discussions Actions Security 0 Insights Additional navigation options Code Issues Pull requests Discussions Actions Security Insights rivet-dev/rivet mainBranchesTagsGo to fileCodeOpen more actions menuFolders and filesNameNameLast commit messageLast commit dateLatest commit History4,694 Commits4,694 Commits.agent/notes.agent/notes .cargo.cargo .claude.claude .codex/skills.codex/skills .github.github .opencode.opencode docs-internaldocs-internal engineengine examplesexamples frontendfrontend k8sk8s rivetkit-asyncapirivetkit-asyncapi rivetkit-json-schemarivetkit-json-schema rivetkit-openapirivetkit-openapi rivetkit-python/clientrivetkit-python/client rivetkit-rustrivetkit-rust rivetkit-swiftrivetkit-swift rivetkit-typescriptrivetkit-typescript scriptsscripts shared/typescript/virtual-websocketshared/typescript/virtual-websocket specsspecs websitewebsite .dockerignore.dockerignore .editorconfig.editorconfig .gitattributes.gitattributes .gitignore.gitignore .release-please-manifest.json.release-please-manifest.json AGENTS.mdAGENTS.md CLAUDE.mdCLAUDE.md Cargo.lockCargo.lock Cargo.tomlCargo.toml LICENSELICENSE README.mdREADME.md TRACES_DESIGN_NOTES.mdTRACES_DESIGN_NOTES.md TRACES_SPEC.mdTRACES_SPEC.md biome.jsonbiome.json deny.tomldeny.toml docsdocs justfilejustfile lefthook.ymllefthook.yml opencode.jsoncopencode.jsonc package.jsonpackage.json pnpm-lock.yamlpnpm-lock.yaml pnpm-workspace.yamlpnpm-workspace.yaml prd.txtprd.txt progress.txtprogress.txt release-please-config.jsonrelease-please-config.json rustfmt.tomlrustfmt.toml tsconfig.base.jsontsconfig.base.json tsup.base.tstsup.base.ts turbo.jsonturbo.json vitest.base.tsvitest.base.ts workflow-friction.mdworkflow-friction.md View all filesRepository files navigationREADMEApache-2.0 license The primitive for software that thinks. Quickstart • Documentation • Changelog • Discord • X What is Rivet?Rivet Actors are a serverless primitive for stateful workloads. Each actor has built-in state, storage, workflows, scheduling, and WebSockets — everything needed to build the next generation of software. import { actor } from “rivetkit”; export const chatRoom = actor({ // In-memory state, persisted automatically state: { messages: [] }, // Type-safe RPC actions: { sendMessage: (c, user, text) => { c.state.messages.push({ user, text }); c.broadcast(“newMessage”, { user, text }); }, }, }); One Actor per agent, per session, per user — each with everything it needs built in.Built-In Features Every Rivet Actor comes with: Feature Description In-memory state Co-located with compute for instant reads and writes SQLite or JSON persistence Storage that survives restarts and deploys Runs indefinitely, sleeps when idle Long-lived when active, hibernates when idle Scales infinitely, scales to zero Supports bursty workloads, cost-efficient WebSockets Real-time bidirectional streaming built in Workflows Multi-step operations with automatic retries Queues Durable message queues for reliable async processing Scheduling Timers and cron jobs within your actor Use Cases Rivet is one primitive that adapts to agents, workflows, collaboration, and more. Use Case Description AI Agent Each agent runs as its own actor with persistent context and memory Sandbox Orchestration Coordinate sandbox sessions, queue work, and schedule cleanup Workflows Multi-step operations with automatic retries and durable state Collaborative Documents Real-time editing where each document is an actor Per-Tenant Database One actor per tenant with low-latency in-memory reads Chat One actor per room with in-memory state and realtime delivery Start Local.Scale to Millions. Three options, same API. Pick what works for you. Self-Host Single Rust binary or Docker container. Works with Postgres, file system, or FoundationDB. docker run -p 6420:6420 rivetkit/engine Self-hosting documentation → Rivet Cloud Fully managed. Global edge network. Connects to your existing cloud — Vercel, Railway, AWS, wherever you already deploy. Sign up → Open Source Apache 2.0. Audit the code, contribute features, run it however you want.View on GitHub → Getting Started Use with Your Coding Agent Give your coding agent the Rivet skills to create examples or integrate into existing projects: npx skills add rivet-dev/skills Works with Claude Code, Cursor, Windsurf, and other AI coding tools. Start From Scratch Node.js & Bun React Next.js Cloudflare Workers View documentation → Integrations Frameworks: Hono • Elysia • tRPC Clients: JavaScript • React • Next.js Request an integration → Projects in This Repository Project Description RivetKit TypeScript Client & server library for building actors RivetKit Rust Rust client (experimental) RivetKit Python Python client (experimental) Rivet Engine Rust orchestration engine ↳ Pegboard Actor orchestrator & networking ↳ Gasoline Durable execution engine ↳ Guard Traffic routing proxy ↳ Epoxy Multi-region KV store (EPaxos) Dashboard Inspector for debugging actors Website Source for rivet.dev Documentation Source for rivet.dev/docs Community Discord – Chat with the community X/Twitter – Follow for updates Bluesky – Follow for updates GitHub Discussions – Ask questions GitHub Issues – Report bugs Talk to an engineer – Discuss your use case License Apache 2.0 About Rivet Actors are a serverless primitive for stateful workloads. Each actor has built-in state, storage, workflows, scheduling, and WebSockets — everything needed to build the next generation of software. www.rivet.dev Topics rust actors serverless multiplayer realtime cloudflare actor foundationdb durable-objects cloudflare-durable-objects Resources Readme License Apache-2.0 license Uh oh! There was an error while loading. Please reload this page. Activity Custom properties Stars 5.1k stars Watchers 18 watching Forks 155 forks Report repository Releases 40 2.1.3 Latest Feb 26, 2026 + 39 releases Uh oh! There was an error while loading. Please reload this page.Contributors 21 + 7 contributors Languages Rust 46.3% TypeScript 32.0% MDX 14.9% Swift 3.2% Astro 1.5% JavaScript 0.6% Other 1.5% You can’t perform that action at this time. [{“Name”:”.agent/notes”,”Last commit message”:””,”Last commit date”:””},{“Name”:”.cargo”,”Last commit message”:””,”Last commit date”:””},{“Name”:”.claude”,”Last commit message”:””,”Last commit date”:””},{“Name”:”.codex/skills”,”Last commit message”:””,”Last commit date”:””},{“Name”:”.github”,”Last commit message”:””,”Last commit date”:””},{“Name”:”.opencode”,”Last commit message”:””,”Last commit date”:””},{“Name”:”docs-internal”,”Last commit message”:””,”Last commit date”:””},{“Name”:”engine”,”Last commit message”:””,”Last commit date”:””},{“Name”:”examples”,”Last commit message”:””,”Last commit date”:””},{“Name”:”frontend”,”Last commit message”:””,”Last commit date”:””},{“Name”:”k8s”,”Last commit message”:””,”Last commit date”:””},{“Name”:”rivetkit-asyncapi”,”Last commit message”:””,”Last commit date”:””},{“Name”:”rivetkit-json-schema”,”Last commit message”:””,”Last commit date”:””},{“Name”:”rivetkit-openapi”,”Last commit message”:””,”Last commit date”:””},{“Name”:”rivetkit-python/client”,”Last commit message”:””,”Last commit date”:””},{“Name”:”rivetkit-rust”,”Last commit message”:””,”Last commit date”:””},{“Name”:”rivetkit-swift”,”Last commit message”:””,”Last commit date”:””},{“Name”:”rivetkit-typescript”,”Last commit message”:””,”Last commit date”:””},{“Name”:”scripts”,”Last commit message”:””,”Last commit date”:””},{“Name”:”shared/typescript/virtual-websocket”,”Last commit message”:””,”Last commit date”:””},{“Name”:”specs”,”Last commit message”:””,”Last commit date”:””},{“Name”:”website”,”Last commit message”:””,”Last commit date”:””},{“Name”:”.dockerignore”,”Last commit message”:””,”Last commit date”:””},{“Name”:”.editorconfig”,”Last commit message”:””,”Last commit date”:””},{“Name”:”.gitattributes”,”Last commit message”:””,”Last commit date”:””},{“Name”:”.gitignore”,”Last commit message”:””,”Last commit date”:””},{“Name”:”.release-please-manifest.json”,”Last commit message”:””,”Last commit date”:””},{“Name”:”AGENTS.md”,”Last commit message”:””,”Last commit date”:””},{“Name”:”CLAUDE.md”,”Last commit message”:””,”Last commit date”:””},{“Name”:”Cargo.lock”,”Last commit message”:””,”Last commit date”:””},{“Name”:”Cargo.toml”,”Last commit message”:””,”Last commit date”:””},{“Name”:”LICENSE”,”Last commit message”:””,”Last commit date”:””},{“Name”:”README.md”,”Last commit message”:””,”Last commit date”:””},{“Name”:”TRACES_DESIGN_NOTES.md”,”Last commit message”:””,”Last commit date”:””},{“Name”:”TRACES_SPEC.md”,”Last commit message”:””,”Last commit date”:””},{“Name”:”biome.json”,”Last commit message”:””,”Last commit date”:””},{“Name”:”deny.toml”,”Last commit message”:””,”Last commit date”:””},{“Name”:”docs”,”Last commit message”:””,”Last commit date”:””},{“Name”:”justfile”,”Last commit message”:””,”Last commit date”:””},{“Name”:”lefthook.yml”,”Last commit message”:””,”Last commit date”:””},{“Name”:”opencode.jsonc”,”Last commit message”:””,”Last commit date”:””},{“Name”:”package.json”,”Last commit message”:””,”Last commit date”:””},{“Name”:”pnpm-lock.yaml”,”Last commit message”:””,”Last commit date”:””},{“Name”:”pnpm-workspace.yaml”,”Last commit message”:””,”Last commit date”:””},{“Name”:”prd.txt”,”Last commit message”:””,”Last commit date”:””},{“Name”:”progress.txt”,”Last commit message”:””,”Last commit date”:””},{“Name”:”release-please-config.json”,”Last commit message”:””,”Last commit date”:””},{“Name”:”rustfmt.toml”,”Last commit message”:””,”Last commit date”:””},{“Name”:”tsconfig.base.json”,”Last commit message”:””,”Last commit date”:””},{“Name”:”tsup.base.ts”,”Last commit message”:””,”Last commit date”:””},{“Name”:”turbo.json”,”Last commit message”:””,”Last commit date”:””},{“Name”:”vitest.base.ts”,”Last commit message”:””,”Last commit date”:””},{“Name”:”workflow-friction.md”,”Last commit message”:””,”Last commit date”:””},{}]
Original repository: https://github.com/rivet-dev/rivet
Explore related articles and resources on ubos.tech for deeper insights.