Skip to content
Getting started / Introduction

Getting started

Documentation

Run your Cloudflare Workers and Durable Objects on Rivet with no changes to your app code.

Open Orange reads your Wrangler configuration and runs the same Worker on Node.js. Each Durable Object runs as a Rivet Actor with its own SQLite database.

  • Run. orange dev runs your Worker on your machine.
  • Deploy. orange deploy builds an image of your Worker and rolls it out to a Rivet cluster. orange serve runs it on your own Rivet Engine.
  • Migrate. orange migrate moves your Durable Objects and D1 databases from Cloudflare while your app serves.

Quickstart

You need a Worker project with a wrangler.jsonc, wrangler.json, or wrangler.toml, Node.js 22 or later, and pnpm. Deploying also needs Docker.

Step 1: Install

Open Orange reads the wrangler.jsonc and source files that your Worker already has

Clone Open Orange next to your project, then add it to your Worker project. Your code and your Wrangler configuration do not change.

git clone https://github.com/rivet-dev/open-orange
cd open-orange && pnpm install
cd ../my-worker && pnpm add -D ../open-orange

Step 2: Run your Worker

orange dev serves your Worker on localhost, and each Durable Object runs as a Rivet Actor with its own SQLite database

Your Worker answers on http://localhost:8787. Each Durable Object runs as a Rivet Actor with its own SQLite database, kept in .open-orange/.

pnpm orange dev

Step 3: Deploy

orange deploy builds an image of your Worker, uploads it, and rolls a runner pool out to it on a Rivet cluster

orange deploy builds an image of your Worker and rolls it out to a Rivet cluster, then prints its public URL. See the deploy guide.

pnpm orange login
pnpm orange link --cluster <cluster-name>
pnpm orange deploy

Step 4: Move your data from Cloudflare

Prepare the Cloudflare Worker, deploy to Open Orange, point DNS at it, then run the backfill

orange migrate moves Durable Objects and D1 databases while your app serves. Skip this step if your app has no data on Cloudflare. See the migration guide.

pnpm orange migrate prepare
pnpm orange migrate backfill --url https://app.example.com

Explore the docs