Run and scale realtime applications

Rivet Actors have built-in RPC, state, and events — the easiest way to build modern applications.

Try Rivet

Book a Demo

actor.ts

Example actor code

class ChatRoom extends Actor {
  // receive an remote procedure call from the client
  sendMessage(rpc: Rpc, username: string, message: string) {
    // save message to persistent storage
    this._state.messages.push({ username, message });

    // broadcast message to all clients
    this._broadcast("newMessage", { username, message });
  }
}

client.ts

Example client code

const room = await rivet.get<ChatRoom>({
  name: "room",
  channel: "random"
});

// send a message
button.onclick = () => {
  room.sendMessage("joe_armstrong", input.value);
};

// receive broadcasted message from actor
room.on("newMessage", ({ username, message }) => {
  console.log("New message:", username, message);
});

Rivet Actors come packed with features

Remote Procedure Calls

Create cross-application function calls with minimal code overhead.

Documentation

State

Automatically manage and persist your data with built-in state handling.

Documentation

Events

Manage real-time state changes using integrated pub/sub messaging

Documentation

Scaling & Concurrency

Actors scale automatically to cover regions and process needs.

Documentation

Edge Networking

Automatically distribute your applications to global edge locations.

Documentation

Use Cases

Works with your applications

Explore use cases that Rivet Actors can run.

Highlights

Build without limits

Scale from zero to millions of users with powerful built-in capabilities.

Run globally near your users

Minimize latency with actors created in regions closest to your users.

Scales to zero

Handle millions of connections with low latency and high-throughput writes while saving costs through instant actor sleep/wake cycles.

Open-source and self-hostable

Rivet is open source under the Apache 2.0 license - customize and deploy it freely without any sales process. Choose between self-hosting or quick deployment with Rivet Cloud.

Resilient to failures

Automatic state preservation protects data during system failures and updates, with built-in safeguards that isolate failures.

Supports data localization

Store data in designated locations to meet data localization compliance requirements.

Powered by V8 isolates

Faster, cheaper, and more lightweight than lambda functions & containers.

Rivet Cloud

Deploy on Rivet Cloud

A full-featured platform that lets
you focus on building.

Team collaboration

Bring your entire team together in one workspace, with no user limits on paid.

DDoS mitigation built-in

Automatic DDoS attack mitigation to protect your application.

Release management

Powerful release management & instant rollbacks.

Zero infrastructure maintenance

Instant scaling without the hassle.

Built-in SSL security

Automatic SSL/TLS for WebSocket connections.

Logging and monitoring included

Monitor detailed actor activity out of the box.

Run Rivet anywhere or in your own cloud

Learn More

Run and scale realtime
applications

Rivet Actors have built-in RPC, state, and events — the easiest way to build modern applications.

Try Rivet

Book a Demo

actor.ts

Example actor code

class ChatRoom extends Actor {
  // receive an remote procedure call from the client
  sendMessage(rpc: Rpc, username: string, message: string) {
    // save message to persistent storage
    this._state.messages.push({ username, message });

    // broadcast message to all clients
    this._broadcast("newMessage", { username, message });
  }
}

client.ts

Example client code

const room = await rivet.get<ChatRoom>({
  name: "room",
  channel: "random"
});

// send a message
button.onclick = () => {
  room.sendMessage("joe_armstrong", input.value);
};

// receive broadcasted message from actor
room.on("newMessage", ({ username, message }) => {
  console.log("New message:", username, message);
});

Rivet Actors come packed with features

Remote Procedure Calls

Create cross-application function calls with minimal code overhead.

Documentation

State

Automatically manage and persist your data with built-in state handling.

Documentation

Events

Manage real-time state changes using integrated pub/sub messaging

Documentation

Scaling & Concurrency

Actors scale automatically to cover regions and process needs.

Documentation

Edge Networking

Automatically distribute your applications to global edge locations.

Documentation

Use Cases

Works with your applications

Explore use cases that Rivet Actors can run.

Highlights

Build without limits

Scale from zero to millions of users with powerful built-in capabilities.

Run globally near your users

Minimize latency with actors created in regions closest to your users.

Scales to zero

Handle millions of connections with low latency and high-throughput writes while saving costs through instant actor sleep/wake cycles.

Open-source and self-hostable

Rivet is open source under the Apache 2.0 license - customize and deploy it freely without any sales process. Choose between self-hosting or quick deployment with Rivet Cloud.

Resilient to failures

Automatic state preservation protects data during system failures and updates, with built-in safeguards that isolate failures.

Supports data localization

Store data in designated locations to meet data localization compliance requirements.

Powered by V8 isolates

Faster, cheaper, and more lightweight than lambda functions & containers.

Rivet Cloud

Deploy on Rivet Cloud

A full-featured platform that lets
you focus on building.

Team collaboration

Bring your entire team together in one workspace, with no user limits on paid.

DDoS mitigation built-in

Automatic DDoS attack mitigation to protect your application.

Release management

Powerful release management & instant rollbacks.

Zero infrastructure maintenance

Instant scaling without the hassle.

Built-in SSL security

Automatic SSL/TLS for WebSocket connections.

Logging and monitoring included

Monitor detailed actor activity out of the box.

Run Rivet anywhere or in your own cloud

Learn More

Run and scale
realtime
applications

Your system to build robust, fast,
and scalable applications on the edge.

Try Rivet

Book a Demo

actor.ts

Example actor code

class ChatRoom extends Actor {
  // receive an remote procedure call from the client
  sendMessage(rpc: Rpc, username: string, message: string) {
    // save message to persistent storage
    this._state.messages.push({ username, message });

    // broadcast message to all clients
    this._broadcast("newMessage", { username, message });
  }
}

client.ts

Example client code

const room = await rivet.get<ChatRoom>({
  name: "room",
  channel: "random"
});

// send a message
button.onclick = () => {
  room.sendMessage("joe_armstrong", input.value);
};

// receive broadcasted message from actor
room.on("newMessage", ({ username, message }) => {
  console.log("New message:", username, message);
});

Rivet Actors come packed with features

Remote Procedure Calls

Create cross-application function calls with minimal code overhead.

Documentation

State

Automatically manage and persist your data with built-in state handling.

Documentation

Events

Manage real-time state changes using integrated pub/sub messaging

Documentation

Scaling & Concurrency

Actors scale automatically to cover regions and process needs.

Documentation

Edge Networking

Automatically distribute your applications to global edge locations.

Documentation

Use Cases

Works with your applications

Explore use cases that Rivet Actors can run.

Highlights

Build without limits

Scale from zero to millions of users with powerful built-in capabilities.

Run globally near your users

Minimize latency with actors created in regions closest to your users.

Scales to zero

Handle millions of connections with low latency and high-throughput writes while saving costs through instant actor sleep/wake cycles.

Open-source and self-hostable

Rivet is open source under the Apache 2.0 license - customize and deploy it freely without any sales process. Choose between self-hosting or quick deployment with Rivet Cloud.

Resilient to failures

Automatic state preservation protects data during system failures and updates, with built-in safeguards that isolate failures.

Supports data localization

Store data in designated locations to meet data localization compliance requirements.

Powered by V8 isolates

Faster, cheaper, and more lightweight than lambda functions & containers.

Rivet Cloud

Deploy on Rivet Cloud

A full-featured platform that lets
you focus on building.

Team collaboration

Bring your entire team together in one workspace, with no user limits on paid.

DDoS mitigation built-in

Automatic DDoS attack mitigation to protect your application.

Release management

Powerful release management & instant rollbacks.

Zero infrastructure maintenance

Instant scaling without the hassle.

Built-in SSL security

Automatic SSL/TLS for WebSocket connections.

Logging and monitoring included

Monitor detailed actor activity out of the box.

Run Rivet anywhere or in your own cloud

Learn More