Skip to content

Start

The shortest path from a clean checkout to a running Underwrite runtime with your first event flowing through the bus.

This section is the entry point for new users. The pages below are ordered from "clone and run" to "wire up a real scenario".

Install

System requirements, the setup.sh bootstrap script, the available extras ([risk], [serve], [otlp], [vault], [aws], [gcs], [modal]), and Docker / docker-compose paths.

Install →

Quickstart

The annotated indian_lending.py walkthrough: bank seeds capital, borrower onboards with PAN + Aadhaar, DPDPA consent recorded, KYC/AML clears, CIBIL pulled, pricing computed under RBI caps, KFS issued, loan originated.

Quickstart →

First service

Write a 50-line Greeter nano-service that listens for one event type and emits another. See the runtime guarantees arrive by construction.

First service →

Event bus

What happens between runtime.publish and the receiving service's handle(event). Authz, signing, idempotency, tracing, metrics, DLQ, circuit breaking.

Event bus →

Custom nano-services

Stateless and stateful reducer patterns. The patterns used by the 34 wired services, distilled.

Custom nano-services →

Pluggable backends

Swap the store, bus, secrets manager, tracer, or metrics exporter for your own implementation. The runtime only depends on the public protocol.

Pluggable backends →

Indian lending example

The full indian_lending.py script with line-by-line context. Read alongside the quickstart page.

View source →

Need a different path?

Architects and risk reviewers can skip to architecture, compliance, or security.