Create form

A new-project form with a URL derived from the name, visibility as radio cards, and validation that replaces a hint with its error.

New project
You can change all of this later in settings.

What your team will call it.

duebird.app/

Filled in from the name until you edit it.

Visibility

Everyone in Duebird gets an email.

Installation

  1. 1. Install a design system if the project does not have one yet: Cueit, Skita or Folio.

  2. 2. Add the block. It installs to components/satori-ui/blocks/ with the shadcn/ui primitives it uses.

    npx shadcn@latest add @satoriui/form-01
  3. 3. Render it inside the system's scope. With the scope class on <html> there is nothing more to do. To try another system, change the class.

    app/page.tsx
    import { Form01 } from "@/components/satori-ui/blocks/form-01";
    export default function Page() {
    return <Form01 />;
    }

How it adapts

It is built from shadcn/ui primitives, Button, Card, Checkbox, Input, Label, Radio group and Textarea, which every design system re-skins.

For what shadcn has no name for, it uses 5 of the shared contract utilities. Every system defines them identically and sets the variables they read.

ds-meta
Small values
ds-small
Secondary copy
ds-tile
Surfaces it draws itself
ds-well
Icon washes
ds-hover
Quiet hover fills