---
title: "Quick Start"
description: "Get up and running with Fabro"
---
Fabro runs as a server. This quickstart runs everything locally on your laptop — no deployment required. To self-host the server for a team or 24/7 workflows, see [Deployment](/administration/deployment).
## Supported platforms
| OS | Architecture | Supported |
| --- | --- | --- |
| Linux | x86_64 | Yes |
| Linux | arm64 (aarch64) | Yes |
| macOS | arm64 (Apple Silicon) | Yes |
| macOS | x86_64 (Intel) | No |
| Windows | any | No |
On Intel Macs, run Fabro in a Linux x86_64 container or VM. Native Windows isn't supported; use WSL2 with a supported Linux architecture.
## Install
```bash
curl -fsSL https://fabro.sh/install.md | claude
```
```bash
codex "$(curl -fsSL https://fabro.sh/install.md)"
```
```bash
brew install fabro-sh/tap/fabro-nightly
```
```bash
curl -fsSL https://fabro.sh/install.sh | bash
```
Release binaries and the multi-arch Docker image ship with [SLSA Build Provenance](/reference/verifying-releases) attestations you can verify with `gh attestation verify`.
Self-hosting the server? See [Self-host with Docker](/administration/self-host-docker) and [Server Operations](/reference/server-operations) for the install wizard, auth, and CLI-pointing.
## Initialize your project
```bash
cd my-repo/
fabro repo init
```
This creates `.fabro/project.toml` and a starter workflow under `.fabro/workflows/hello/`.
## Configure API keys
For local CLI runs, export at least one LLM provider key in your shell:
```bash
ANTHROPIC_API_KEY=sk-ant-...
OPENAI_API_KEY=sk-...
GEMINI_API_KEY=AI...
```
You only need one provider key to get started. Add more to enable multi-model workflows.
For server-backed runs, store provider keys in the server vault instead:
```bash
fabro secret set ANTHROPIC_API_KEY sk-ant-...
```
## Run your first workflow
```bash
fabro run hello
```
## Next steps
Understand the problems Fabro solves.
Learn how to define workflow graphs in Graphviz.