Skip to main content

Examples

Complete Reboot applications to run and take apart. Each one is a real project, not a snippet.

Start here

bank-pydantic

reboot-dev/reboot-bank-pydanticPython backend; React web app, Expo mobile app, and MCP UIs

The most complete example, and the one that shows what "general purpose" means in practice: one backend, one User per person, and three frontends. A multi-user bank with signup, accounts, transfers, and interest.

It demonstrates:

  • Sign-in and User auto-construction: signing in enrols the user as a bank customer, in UserServicer.create.
  • A web app under frontend/web/, signing in with useSignIn() and branching on useUser().
  • A React Native app under frontend/mobile/, signing in with expoAuth(...) against the same OAuth server — same hooks, same user.
  • MCP UIs under frontend/mcp/, so a chat client can open accounts and read balances too.
  • A debit/credit transaction that atomically moves funds between accounts.
  • A task that pays out interest.

chat-room / hello

reboot-dev/reboot-helloPython backend, React frontend

The simplest possible app: one singleton chat room, one reactive frontend. Open two browsers on the same backend and watch messages flow.

It includes:

  • A reactive frontend.
  • Optimistic updates: sent messages render as pending until the backend confirms them.
  • A Dockerfile showing how to publish to Reboot Cloud.

Because of its simplicity it uses no transactions — see bank or counter for those.

Web apps

counter

reboot-dev/reboot-counterTypeScript backend, React frontend

The most concise demonstration of a Reboot transaction plus a reactive frontend:

bank

reboot-dev/reboot-bankPython backend, React frontend

A sibling of bank-pydantic that adds the Mailgun integration, sending an email transactionally as part of signup.

bank-zod

reboot-dev/reboot-bank-zodTypeScript backend, React frontend

The same bank with its API defined in Zod.

prosemirror-zod

reboot-dev/reboot-prosemirror-zodTypeScript backend, React frontend

Integration with the ProseMirror rich-text editor.

It demonstrates:

  • How to sync a React frontend with a Reboot backend.
  • A long-lived control loop as a workflow method, checkpointing the ProseMirror document.

boutique

reboot-dev/reboot-boutiquePython backend, React frontend

The largest example: a fairly complete web shop, factored into components that separate teams would plausibly own. Originally forked from GoogleCloudPlatform/microservices-demo.

Of particular note:

  • A more complex React frontend.
  • Many state types and interactions between them.
  • A multi-faceted "checkout" method that transactionally composes calls to many other services — if any part fails, the whole thing aborts atomically.
  • Calls to Reboot-hosted gRPC services.

Start with hello, counter, or bank before this one.

MCP UIs

mcp-ui-counter

reboot-dev/reboot/…/mcp-ui-counterPython backend, React MCP UIs and a web app

A counter with visual UIs that run inside ChatGPT, Claude, VS Code, or Goose — plus a standalone browser SPA that the MCP UI deep-links to.

It demonstrates:

  • UI methods that open React apps inside the MCP client.
  • The User type as an entry point that creates other state types.
  • Generated React hooks (useCounter()) working unchanged in both the MCP UI and the browser.

Ask Claude Code or Codex to build something like it.

chick-potle

reboot-dev/reboot-chick-potlePython backend, React MCP UIs

A small food-ordering app. The AI calls tools to start an order, browse the menu, and change the cart; the human sees a menu grid and a cart rendered alongside the conversation.

It demonstrates:

  • Two UI methods sharing one generated hook (useFoodOrder()), so adding an item in one view updates the other immediately.
  • User.start_order as a Transaction entry point.
  • MCP Tools (get_menu, get_cart, add_to_cart, remove_from_cart) that let the AI drive the order.

agent-wiki

reboot-dev/reboot-agent-wikiPython backend, React MCP UIs

A shared knowledge base that humans and AIs both read and write. Users hand in raw conversation transcripts; a background "librarian" agent distils them into a small, well-organized set of markdown pages.

It demonstrates:

  • A long-running workflow (Wiki.ingest) acting as a per-wiki background agent.
  • Transactions that atomically create related state across types.
  • Cross-state references as <StateType>:<state_id> URIs embedded in markdown, building a page graph with no link table.
  • An in-process test suite driving the librarian with a scripted Pydantic AI FunctionModel, so CI needs no real model calls.