> ## Documentation Index
> Fetch the complete documentation index at: https://docs.reasonos.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Quickstart

> Create a project, connect your editor, and run your first build in minutes

## 1. Create a project

Sign in to the [RBS Dashboard](https://app.rbs.dev) and create a new project.

<Tabs>
  <Tab title="New repository">
    1. Click **New Project**.
    2. Choose **Create new repository** — this uses the built-in RBS Git server.
    3. Give your project a name and click **Create**.
  </Tab>

  <Tab title="Import existing repo">
    1. Click **New Project**.
    2. Choose **Import repository** and paste your Git URL.
    3. RBS clones your repo and detects your project structure automatically.
  </Tab>
</Tabs>

## 2. Connect your code editor

RBS integrates directly with your code editor. Install the RBS extension and connect to your workspace.

<Tabs>
  <Tab title="VS Code / Cursor">
    1. Install the **RBS** extension from the marketplace.
    2. Open the command palette (`Cmd+Shift+P` / `Ctrl+Shift+P`).
    3. Run **RBS: Connect to Workspace**.
    4. Select your project and branch.
  </Tab>

  <Tab title="JetBrains (IntelliJ, WebStorm, etc.)">
    1. Install the **RBS** plugin from the JetBrains Marketplace.
    2. Open **Settings → Tools → RBS**.
    3. Click **Connect** and select your project and branch.
  </Tab>

  <Tab title="Custom editor">
    RBS provides an open API for editor integration. See the [Code Editor Integration](/code-editor) guide.
  </Tab>
</Tabs>

Once connected, your editor is linked to a **dedicated RBS server** for your branch. All builds, tests, and deployments run on that server.

## 3. Set up your workspace

Every RBS project needs two files: `WORKSPACE.rbs` at the project root and at least one `BUILD.rbs`.

### WORKSPACE.rbs

```python theme={null}
# WORKSPACE.rbs — Project configuration
config_setting(key = "project_name", value = "my-project")
config_setting(key = "version", value = "1.0.0")
```

### BUILD.rbs

```python theme={null}
# BUILD.rbs — Build targets

native.task(
    name = "hello",
    command = ["echo", "Hello from RBS!"],
    description = "A simple hello world task",
)

native.task(
    name = "build_report",
    command = ["sh", "-c", "echo 'Build completed' > " + output_path.out + "/report.txt"],
    outputs = [output_path.out + "/report.txt"],
    description = "Generate a build report",
)

native.task(
    name = "full_build",
    command = ["echo", "All tasks completed!"],
    deps = [":hello", ":build_report"],
    description = "Run the full build pipeline",
)
```

## 4. Build and run

Use the integrated terminal in your editor or the RBS command palette:

```bash theme={null}
# Build a single target
rbs build hello

# Run it
rbs run hello

# Build the entire dependency chain
rbs build full_build

# See all available targets
rbs workspace
```

<Tip>
  Every command runs on your dedicated RBS server — not on your local machine. Builds are fast, hermetic, and reproducible regardless of your laptop's specs.
</Tip>

## 5. Try a language SDK

RBS supports popular languages out of the box. Here's a Python example:

### WORKSPACE.rbs

```python theme={null}
config_setting(key = "project_name", value = "python-demo")

load("@rbs//python/toolchain.rbs", "python_toolchain")

# RBS manages the Python toolchain on the server
python_toolchain(name = "python", version = "3.11.0")
```

### BUILD.rbs

```python theme={null}
load("@rbs//python/rules.rbs", "py_binary", "py_test")

py_binary(
    name = "app",
    srcs = ["main.py"],
    main = "main.py",
)

py_test(
    name = "app_test",
    srcs = ["test_main.py"],
    deps = [":app"],
)
```

### main.py

```python theme={null}
def greet(name: str) -> str:
    return f"Hello, {name}!"

if __name__ == "__main__":
    print(greet("World"))
```

### Build and run

```bash theme={null}
rbs build app        # Builds with managed Python toolchain
rbs run app          # Runs the application
rbs test app_test    # Runs tests
```

<Tip>You don't need Python installed locally — the RBS server manages all toolchains automatically.</Tip>

## 6. Collaborate on a branch

RBS provisions **one server per active branch**. When a teammate opens the same branch, they connect to the same server and see the same build state.

```
main branch       → RBS Server A  (CI workers auto-deployed)
feature/auth      → RBS Server B  (you + 2 teammates working)
feature/payments  → RBS Server C  (your branch, fresh server)
```

All CI workers, schedulers, and build workers are deployed automatically when the server starts. No pipeline configuration needed.

## What's next

<CardGroup cols={2}>
  <Card title="Core concepts" icon="book" href="/core-concepts">
    Understand workspaces, packages, targets, and how branch-based servers work.
  </Card>

  <Card title="Language SDKs" icon="code" href="/sdks/python">
    Set up Python, Java, Node.js, TypeScript, Kotlin, Go, or C/C++.
  </Card>

  <Card title="Code editor integration" icon="window" href="/code-editor">
    Deep dive into editor features, custom keybindings, and building your own integration.
  </Card>

  <Card title="Agent builder" icon="robot" href="/agent-builder">
    Build AI agents that interact with your codebase and build system.
  </Card>
</CardGroup>
