Skip to main content

Get Started with Cadence

5-minute quickstart

No Docker required. The fastest way to run Cadence locally uses the embedded SQLite backend:

# Clone and build
git clone https://github.com/cadence-workflow/cadence.git
cd cadence
make bins

# Install the schema and start the server
make install-schema-sqlite
./cadence-server --zone sqlite start

Open http://localhost:8088 for the Cadence Web UI. Then run your first workflow:


What is Cadence?

A large number of use cases span beyond a single request-reply, require tracking of complex state, respond to asynchronous events, and communicate with external unreliable dependencies. The usual approach — stateless services, databases, cron jobs, and queuing systems — means most of the code is dedicated to plumbing rather than business logic, and failures are hard to recover from cleanly.

Cadence solves this with a fault-oblivious stateful programming model: a durable virtual memory that is not linked to a specific process, and preserves the full application state — including function stacks and local variables — across host and software failures. You write code using the full power of a programming language; Cadence handles durability, availability, and scalability.

Cadence consists of a client SDK and a backend service. SDKs are available for Go and Java (official), and Python and Ruby (community). You can also use iWF as a DSL framework on top of Cadence.

The backend is stateless and stores workflow history in Cassandra, MySQL, or Postgres. See topology for the full architecture. The server is open source at cadence-workflow/cadence and available on Docker Hub as ubercadence/server.


What's next?

I want to...Go to
Run my first workflowGolang Hello World · Java Hello World
Install with Docker or KubernetesServer Installation
Understand what a workflow engine isWorkflow Engine and Orchestration
Deploy Cadence in productionOpen Source Workflow Engine
Learn core conceptsWorkflows · Activities · Task Lists
Watch video tutorialsVideo Tutorials
Get helpSlack · Stack Overflow · GitHub Issues