Introduction

OverviewArchitectureAgent Experience

The product

This repository

Structure

Usage

Other

Setup

Prerequisites

The tools and accounts needed before running the OPB Brain monorepo locally

Operating system

The monorepo is developed on Linux. Nothing in it is platform-specific, but the toolchain is only exercised on Linux, so treat macOS and Windows as untested rather than unsupported.

Turborepo does not support windows ia32.

Bun

Bun is the package manager. Every command in these pages is a bun or bunx command. The repository pins bun@1.3.10 through the packageManager field.

Terminal
curl -fsSL https://bun.sh/install | bash

Node.js 18 or newer is also required — the engines field asks for it, and some tooling shells out to node.

Terminal
node -v

Rust

The design system linter is a Rust binary in tools/design-lint. bun run design:lint builds and runs it through cargo, so a Rust toolchain is needed to check UI changes against DESIGN.md.

Terminal
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Stripe CLI

The Stripe CLI forwards payment webhooks to the local API. bun run dev in apps/api starts it alongside the Next.js server, so it is required for that application to boot.

Terminal
stripe login

Accounts

The repository integrates the services below. None of them is required to boot: each integration reads its own environment variables and skips itself when they are absent. Add an account when you need the feature it backs.

Which variable each one needs is listed on the environment variables page.

On this page

GitHubEdit this page on GitHub