Skip to content

Rivet Actors are long-lived, in-memory processes. It's what you reach for when you hit the limitations of HTTP, databases, or queues.

License

Notifications You must be signed in to change notification settings

rivet-dev/rivet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rivet

Stateful Backends. Finally Solved.

QuickstartDocumentationChangelogDiscordX

What is Rivet?

Rivet is an open-source platform for building stateful backends using Actors, long-lived processes that keep state in memory alongside compute. No more database round-trips for every request.

import { actor } from "rivetkit";

export const chatRoom = actor({
  // In-memory, persisted state
  state: { messages: [] },

  // Type-safe RPC
  actions: {
    sendMessage: (c, user, text) => {
      // High performance writes
      c.state.messages.push({ user, text });

      // Realtime built-in
      c.broadcast("newMessage", { user, text });
    },
  },
});

Each actor is like a tiny server with its own memory. Create millions of them (one per user, per document, per game session) and they scale automatically.

How It Works

RivetKit

The TypeScript library for building actors. Works with any backend framework.

npm install rivetkit

Run standalone for development, deploy to Cloudflare Workers, or connect to Rivet Engine for scale.

Rivet Engine

High-performance Rust orchestration layer for production scale. Handles actor lifecycle, state persistence, and multi-region distribution.

  • Self-host with Docker or binaries
  • Or use Rivet Cloud (managed)

You don't need Rivet Engine to get started. RivetKit runs standalone for development and simpler deployments. Add Rivet Engine when you need to scale.

Features

  • Stateful Compute: State lives with compute for sub-millisecond reads/writes, no database queries
  • Realtime Built-In: WebSocket events without extra infrastructure
  • Hibernation: Actors sleep when idle and wake instantly with no cold starts
  • Infinitely Scalable: Auto-scale from zero to millions of actors
  • Fault Tolerant: Automatic failover with state integrity
  • Type-Safe: End-to-end TypeScript types from actor to client
  • Run Anywhere: Your infrastructure, your cloud, your rules

Getting Started

One-Click Templates

View all templates →

Start From Scratch

View documentation →

Deploy Anywhere

Rivet Cloud

Deploy your backend anywhere, then connect to Rivet Cloud for actor orchestration: VercelRailwayKubernetesAWS ECSGoogle Cloud RunHetznerVM & Bare Metal

Self-Host Rivet Engine

# Docker
docker run -p 6420:6420 rivetkit/engine

# macOS (Apple Silicon)
curl -o rivet-engine "https://releases.rivet.dev/rivet/latest/engine/rivet-engine-aarch64-apple-darwin" && chmod +x rivet-engine && ./rivet-engine start

# macOS (Intel)
curl -o rivet-engine "https://releases.rivet.dev/rivet/latest/engine/rivet-engine-x86_64-apple-darwin" && chmod +x rivet-engine && ./rivet-engine start

# Linux (x86)
curl -o rivet-engine "https://releases.rivet.dev/rivet/latest/engine/rivet-engine-x86_64-unknown-linux-musl" && chmod +x rivet-engine && ./rivet-engine start

Self-hosting documentation →

Integrations

Frameworks: HonoElysiatRPC

Clients: JavaScriptReactNext.jsRust

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

License

Apache 2.0

About

Rivet Actors are long-lived, in-memory processes. It's what you reach for when you hit the limitations of HTTP, databases, or queues.

Topics

Resources

License

Stars

Watchers

Forks

Contributors 19