Define once. Brand everywhere.

The hardest thing
in the world? Brand.

Forge it. Keep the edge. Cut through everything.

Start Workshop Read the spec
No designer? No budget?
No problem.

Brand workshop, facilitated by AI.
Built for solo devs, side projects, and early-stage teams.

Pain

Your product needs a consistent identity. But you don't have a designer, a brand agency, or the budget for either. You pick a color, a font, ship it — and six months later nothing matches.

Solve

AI asks the right questions, you make the decisions. Four phases of structured dialogue. It'll dig into your industry, hunt for references, and iterate with you until it clicks. Out comes a brand.yaml: your single source of truth.

After

One command generates CSS tokens, Tailwind theme, Figma variables. Another command turns any AI into your brand consultant. Your team grows from 1 to 10 — the brand doesn't drift.

Three steps
01

Workshop

Brand workshop, facilitated by AI. Four phases, any model, structured decisions. Or start from npx brandspec init and write it yourself.

02

Format

Conclusions and history in one format. brand.yaml — version it, diff it, review it in a PR. The workshop trail stays with it.

03

Generate

One command generates CSS, Tailwind v4, Figma tokens, Style Dictionary. Another turns any AI into your brand consultant. Consistent everywhere.

+ Optional: brandspec.tools — sync with your team via push / pull, preview in the browser.
Not a platform. A file.

One YAML file. Personality, tokens, assets, guidelines. Version it, diff it, own it. No vendor lock-in.

# brand.yaml
meta:
  name: "Acme Corp"

core:
  essence: "Making the impossible satisfyingly simple"
  personality:
    - innovative
    - approachable

tokens:
  colors:
    primary:
      $value: "oklch(0.7 0.15 250)"
      $type: color

guidelines:
  logo-usage:
    rules:
      - description: "Minimum size 120px"
        severity: error

assets:
  - file: logo-primary.svg
    role: logo
    variant: primary
  - file: logo-inverse.svg
    role: logo
    variant: inverse
  - file: symbol.svg
    role: symbol
  - file: favicon.ico
    role: favicon
Your AI. Your brand.

An open harness that turns any LLM into a brand strategist. Four phases, structured decisions, one output. Bring Claude, GPT, Gemini — whatever you have.

01

Discovery

AI asks the hard questions about purpose, audience, and positioning.

02

Concept

Brand personality, voice, and narrative direction — shaped through dialogue.

03

Visual identity

Colors, typography, and design tokens derived from your brand concept.

04

Documentation

Everything crystallizes into a validated brand.yaml.

BYOM

Bring Your Own Model. Workshop standardizes the process and the output — not the AI. The harness is open. The decisions are yours. The format is universal.

Try Workshop
One definition. Every platform out.

The same brand.yaml, manifested differently
for every team, every tool, every AI.

Web

CSS + Tailwind v4

Custom properties for vanilla CSS. @theme block for Tailwind. Drop in and go.

Design

Figma + Tokens Studio

JSON tokens ready for Figma Variables or Tokens Studio import. Designers stay in sync.

AI

consult + rules

One command turns any AI into your brand consultant. Structured rules let agents lint, generate, and enforce on-brand.

Ecosystem

Open schema

JSON Schema, MIT licensed. Style Dictionary, MCP servers, CI integrations — build your own tools on the spec.

AI that knows your brand — and its history.
brand.yaml

What you defined

Personality, voice, tokens, assets, guidelines — the complete identity in one file. Machine-readable, human-clear.

_workshop/

Why you decided it

Every decision from discovery to documentation, logged. The reasoning behind your colors, your tone, your trade-offs — preserved.

consult

AI answers in context

One command feeds both to any AI. Not just rules — rationale. Your brand consultant knows the intent, not just the spec.

guidelines:
  logo-usage:
    rules:
      - id: logo-min-size
        description: "Minimum 120px width on digital"
        severity: error
        applies_to: logo
        criteria:
          - "Digital: minimum 120px width"
          - "Print: minimum 25mm width"

  voice:
    rules:
      - id: voice-no-jargon
        description: "No technical jargon in user-facing copy"
        severity: warning
        applies_to: voice
        criteria:
          - "No HTTP status codes in messages"
          - "No internal system terminology"

Open at the core

The specification, schema, and workshop are open source.
MIT licensed. The format belongs to everyone.

Define once.
Brand everywhere.

Forge your brand with Workshop.
Or start from the spec and build your own way.

Start Workshop Read the spec