Skip to main content
vibld

Invite-only for now

Vibe. Build. Ship.

Describe a site or an app. vibld can sketch three directions, writes a spec for the one you pick, builds a real React project, checks its own work, and hands you code you can read line by line.

A demonstration of the flow, drawn in this page. It does not call a model. Join the waitlist to use the real thing.

vibld / clay-saturdays
  1. Prompt
  2. Directions
  3. Spec
  4. Build
  5. Checks
  6. Preview

Conversation 1 prompt

YouA site for my Saturday wheel-throwing classes. People pick a two-hour slot and see a confirmation. Calm, let the pots speak.reference URL: optional
vibldThree directions. Pick one, or ask for more.
  • A calm, chosen
  • B serif
  • C blocks
  1. Direction A chosen
  2. DESIGN.md written
  3. Built: React 19, Vite, Tailwind v4
  4. Design checks: 1 repair, then clean
  5. Private preview ready

Preview style: Spec A

Private preview1440 viewport

Preview of Clay Saturdays, an invented site, in the Spec A style.

src/App.tsxaccepted

import { motion } from 'motion/react';import { ArrowRight } from 'lucide-react';import { Button } from '@/components/ui/button';import { SlotPicker } from './components/SlotPicker';export default function App() {  return (    <main className="min-h-svh bg-background text-foreground">      <Nav brand="Clay Saturdays" />      <section className="grid gap-10 px-6 py-20 lg:grid-cols-2">        <div className="flex flex-col gap-5">          <p className="font-mono text-xs uppercase">Saturday wheel classes</p>          <motion.h1            initial={{ opacity: 0, y: 8 }}            animate={{ opacity: 1, y: 0 }}            className="font-display text-5xl tracking-tight">            Throw your first pot this weekend.          </motion.h1>          <Button size="lg">Pick a slot <ArrowRight /></Button>        </div>        <HeroArt />      </section>      <SlotPicker items={['09:00', '11:30', '14:00']} />    </main>  );}

01How it works

Seven steps, and you can see every one

Each step leaves something behind you can look at: a spec, files, a check report, a preview. Nothing becomes public until you publish it yourself.

  1. Say what you want

    Plain words, with specifics: what it is, who uses it, what it has to do. Knowledge holds standing instructions, Style DNA holds the visual direction, and a reference URL points at a page to start from.

  2. Pick a direction

    Ask for three sketches that differ in look, not just colour, and choose one. Or skip the sketches and name one of the style presets.

  3. It writes the spec down

    The direction becomes DESIGN.md: the colours, type, breakpoints and motion the build has to honour, written into the project where you can read it.

  4. It stages a checkpoint

    A run produces a staged checkpoint: a plan and a set of files in React and TypeScript on Vite. Nothing downstream acts on staged files. Read them in the Code pane and accept them when they are right.

  5. It checks its own design

    The files are read against the spec: the named colours, the display face, the breakpoints, alt text, a reduced-motion rule. Only an error the checker is sure of buys a repair, because a repair rewrites the project.

  6. Look at it privately

    The first preview is a picture of the plan that runs nothing. Run in sandbox installs the project and starts a real dev server, and a share link lets someone else see it until you revoke it. None of this makes anything public.

  7. Publish it, or take the code

    Export downloads the accepted checkpoint as an archive. Push to GitHub opens a pull request in a repository you connect. Publish puts it on the web at a name you choose, in two presses, and takes it down the same way.

02Styles

24 directions the builder actually knows

Ask for one by name, or ask for three sketches and pick. Each preset carries direction concrete enough to act on, including how it moves. Press a tile to re-skin the site in the builder above.

Directions that are a surface treatment rather than a colour scheme are drawn in one neutral demonstration palette, because the builder leaves their colours to the project.

and 16 more:

  • Minimalist / Clean and quiet
  • Dark / Dark by default
  • Gradient rich / Vivid gradients
  • 3D depth / Stacked elevations, parallax
  • Claymorphism / Soft and playful
  • Bento grid / Asymmetric tiles
  • Organic / Natural and biophilic
  • AI-native / Ambient and adaptive
  • Vibrant blocks / Bold flat colour
  • Layered void / Pure black, graded surfaces
  • Acid dark / One high-voltage accent
  • Night indigo / Dark with one deep hue
  • Warm paper / Cream ground, terracotta
  • Mono press / Black, white, one blue
  • Polarity bands / Alternating dark and light
  • Cinematic / Full-bleed footage, glass, serif
See every style, drawn

03What you get

A project you can read, run and move

No proprietary format that only runs inside vibld, and no required runtime. The core is open source under Apache-2.0.

Stack

The stack a frontend developer already reads

It installs and builds with the package manager it declares. There is no vibld package in its dependencies and nothing that checks an account when it runs.

  • React 19UI
  • TypeScripttypes
  • Vitebuild
  • Tailwind v4styles
  • shadcn/uicomponents
  • Lucideicons
  • Motionanimation
Design checks

It checks the build against its own spec

Static checks read the files. Only an error the checker is sure of buys a repair, because a repair rewrites the whole project.

  • colorpass
  • fontpass
  • breakpointpass
  • altpass
  • reduced-motionrepaired
  • langpass
GitHub

Push opens a pull request

In the one repository you approved, on a vibld/ branch, against your default branch. Review it like any other change.

vibld: <revision>

your-org/clay-saturdays, from vibld/<revision>

Publishing

Two presses to go live, and the same to take it down

Nothing automated can publish: no scheduled run, no webhook, no text in a commit. Take it down and the address stops working immediately, and the name stays yours.

clay-saturdays.vibld-preview.dev

Name itPublish

Self-hosting

Run the whole builder yourself

The source is public. Self-hosted, vibld is three Cloudflare Workers with deliberately different blast radii, so the code a model wrote never runs next to your provider keys.

What self-hosting involves

  • Builderinterface, API, spend ledger
  • Sandboxinstalls and runs generated code
  • Publishserves published builds

04Use cases

Sites and apps, from one sentence

Some starting points. The examples page shows real builds exactly as vibld generated them, with the prompt and no hand edits.

  • Small business site

    A site for a dental practice with opening hours, services and directions.

  • Portfolio

    A portfolio for a freelance illustrator with a gallery and a short bio.

  • SaaS landing page

    A landing page for a cybersecurity SaaS with pricing, FAQ and a contact form.

  • Events and bookings

    A one-page site for a two-day developer conference with a schedule and speakers.

  • Small tools and apps

    A personal budget tracker: add income and expenses with a category and a date, see the month’s balance, and export the month as CSV.

05Pricing

A price, and the model spend it includes

Model spend is what actually costs money to run, so each plan comes with an amount of it every month. Free comes with some too.

  • Free

    $0no subscription

    plus $1.00 once, on a new account

    $1.00 of model spend included each month

    An account with no active subscription is Free.

  • Build

    $29a month

    or $290 a year, two months free

    $10.00 of model spend included each month

    Upgrading starts a Stripe Checkout session. Cards, invoices and cancellation live in Stripe’s billing portal.

  • Ship

    $99a month

    or $990 a year, two months free

    $40.00 of model spend included each month

    Upgrading starts a Stripe Checkout session. Cards, invoices and cancellation live in Stripe’s billing portal.

New accounts
Granted $1.00 once, separate from the monthly allowance.
Resets
On the UTC calendar month, for everyone.
Top-ups
$20 adds $8.00 of model spend, on any plan, used only once the allowance is gone. It expires twelve months after purchase.
Per run
Reserves its worst case up front, then you are charged what it actually cost.

Invite-only for now

Describe it. Watch it build.

Invitations go out from the waitlist, one email when yours arrives.

vibld is invite-only for now. This is the list invitations go out from. No spam, one email when yours arrives, unsubscribe any time.

Already have an account? Sign inRead the source on GitHub

Licence
Apache-2.0, for the core
Source
Public on GitHub
Output
Plain files in a standard Vite layout
Runtime
None required from vibld

This page has no customer logos, reviews or user counts. The source is public, so you can read how vibld works before you trust it with anything. Open-source notices