Skip to content

shutteringv1.0.0

Signature

The house personality layer — how an app made with shuttering feels unmistakably itself. It wears its domain, nods to the user, speaks in a warm domain voice, and moves with one restrained hand.

@shuttering/signatureimport { DomainProvider, SignatureWordmark, useVoice, ConfirmButton, HoldConfirm, Greeting, … } from '@shuttering/signature'

Wear the domain

Declare what an app is about once, and the system threads it everywhere. Switch the domain — the wordmark changes treatment (a network twinkles into a constellation, energy ripples, infrastructure decodes), and the palette, voice, and backdrop follow. In production, DomainProvider also applies the domain's palette.

palette
eucalyptus
backdrop
none
wordmark
particles
tone
warm
counts in
node / nodes

Voice

Copy that speaks the domain's language — an active greeting, counts that name what they count, an empty line that sounds like a person, and a confirmation that says exactly what happened. All flex with the selected domain.

greeting()Good morning
count()1 node · 42 nodes
empty()No nodes yet — they'll show up here
past()Published · Deployed

Nod to the user

The constant acknowledgment. A contextual greeting, a button that lands its confirmation, a press-and-hold commit for the destructive action you want to be sure about, and a resume affordance for returning visitors.

Good evening, stx

Pick up where you left off — the pricing draft

The hand

The single motion character the whole system writes in — restraint as the signature. SETTLE is the house spring; SignatureUnderline is the tracking maker's mark; the delight budget keeps the nod rare.

Section heading

A DelightBudget of one — only the first claimant lights up:

first — delightfulsecond — calmthird — calm

Backdrop

Each domain carries an optional ambient backdrop — an aurora for health, a pixel field for infrastructure, or nothing. Here is the health backdrop, contained.

<SignatureBackdrop domain="health" />

Designed & built by stxkxs — React 19, Tailwind v4, and its own @shuttering/* packages.

Agent surfaces are always-on. Proprietary.

© stxkxs