# Font Treatment Comparison

Comparing the current Fabro marketing site fonts against 3 alternatives

Current

## Space Grotesk + DM Sans + JetBrains Mono

Display: Space Grotesk · Body: DM Sans · Mono: JetBrains Mono

Open source workflow engine

### The dark software factory
for expert engineers

Stop babysitting agents. Define your process as a workflow graph, let AI agents execute it, and intervene only where it matters.

◉

#### Workflow graphs

Define multi-step processes as Graphviz directed graphs. Each node is a stage with its own prompt, model, and tools.

⬡

#### Human-in-the-loop

Hexagonal approval gates let humans review, revise, or override at any point in the workflow.

⦾

#### Multi-model routing

Assign models per-stage with CSS-like selectors. Use Haiku for triage, Sonnet for code, Gemini for review.

workflow.dot

    digraph PlanImplement {
      graph [
        goal="Plan, approve, implement, and simplify"
      ]

      plan      [label="Plan"]
      approve   [shape=hexagon, label="Approve Plan"]
      implement [label="Implement", class="coding"]

      start -> plan -> approve -> implement -> exit
    }

#### Verification is a first-class concept

Every workflow can include build gates, test assertions, and human approval stages. When a stage fails, Fabro routes back to the appropriate fix loop — no manual re-runs, no `git stash` gymnastics.

The retrospective engine runs after every workflow, surfacing what went wrong and why. Over time, your workflows get smarter.

Option A

## Outfit + Lexend + Fira Code

Display: Outfit · Body: Lexend · Mono: Fira Code

Open source workflow engine

### The dark software factory
for expert engineers

Stop babysitting agents. Define your process as a workflow graph, let AI agents execute it, and intervene only where it matters.

◉

#### Workflow graphs

Define multi-step processes as Graphviz directed graphs. Each node is a stage with its own prompt, model, and tools.

⬡

#### Human-in-the-loop

Hexagonal approval gates let humans review, revise, or override at any point in the workflow.

⦾

#### Multi-model routing

Assign models per-stage with CSS-like selectors. Use Haiku for triage, Sonnet for code, Gemini for review.

workflow.dot

    digraph PlanImplement {
      graph [
        goal="Plan, approve, implement, and simplify"
      ]

      plan      [label="Plan"]
      approve   [shape=hexagon, label="Approve Plan"]
      implement [label="Implement", class="coding"]

      start -> plan -> approve -> implement -> exit
    }

#### Verification is a first-class concept

Every workflow can include build gates, test assertions, and human approval stages. When a stage fails, Fabro routes back to the appropriate fix loop — no manual re-runs, no `git stash` gymnastics.

The retrospective engine runs after every workflow, surfacing what went wrong and why. Over time, your workflows get smarter.

Option B

## Instrument Serif + Instrument Sans + IBM Plex Mono

Display: Instrument Serif · Body: Instrument Sans · Mono: IBM Plex Mono

Open source workflow engine

### The dark software factory
for expert engineers

Stop babysitting agents. Define your process as a workflow graph, let AI agents execute it, and intervene only where it matters.

◉

#### Workflow graphs

Define multi-step processes as Graphviz directed graphs. Each node is a stage with its own prompt, model, and tools.

⬡

#### Human-in-the-loop

Hexagonal approval gates let humans review, revise, or override at any point in the workflow.

⦾

#### Multi-model routing

Assign models per-stage with CSS-like selectors. Use Haiku for triage, Sonnet for code, Gemini for review.

workflow.dot

    digraph PlanImplement {
      graph [
        goal="Plan, approve, implement, and simplify"
      ]

      plan      [label="Plan"]
      approve   [shape=hexagon, label="Approve Plan"]
      implement [label="Implement", class="coding"]

      start -> plan -> approve -> implement -> exit
    }

#### Verification is a first-class concept

Every workflow can include build gates, test assertions, and human approval stages. When a stage fails, Fabro routes back to the appropriate fix loop — no manual re-runs, no `git stash` gymnastics.

The retrospective engine runs after every workflow, surfacing what went wrong and why. Over time, your workflows get smarter.

Option C

## Syne + Manrope + Source Code Pro

Display: Syne · Body: Manrope · Mono: Source Code Pro

Open source workflow engine

### The dark software factory
for expert engineers

Stop babysitting agents. Define your process as a workflow graph, let AI agents execute it, and intervene only where it matters.

◉

#### Workflow graphs

Define multi-step processes as Graphviz directed graphs. Each node is a stage with its own prompt, model, and tools.

⬡

#### Human-in-the-loop

Hexagonal approval gates let humans review, revise, or override at any point in the workflow.

⦾

#### Multi-model routing

Assign models per-stage with CSS-like selectors. Use Haiku for triage, Sonnet for code, Gemini for review.

workflow.dot

    digraph PlanImplement {
      graph [
        goal="Plan, approve, implement, and simplify"
      ]

      plan      [label="Plan"]
      approve   [shape=hexagon, label="Approve Plan"]
      implement [label="Implement", class="coding"]

      start -> plan -> approve -> implement -> exit
    }

#### Verification is a first-class concept

Every workflow can include build gates, test assertions, and human approval stages. When a stage fails, Fabro routes back to the appropriate fix loop — no manual re-runs, no `git stash` gymnastics.

The retrospective engine runs after every workflow, surfacing what went wrong and why. Over time, your workflows get smarter.