One round, from invite to sign‑off
For freelance designers and developers whose client signs off. Follow one review round: you invite your client, they review and recommend, you steer, and the look they approve is recorded by its hash.
The round, step by step
who acts, and the record behind each step
- InviteYou
invites - Your client reviews the roundYour client
review_rounds - Comments and votesYour client
commentsvotes - A recommendation becomes a steerYou
review.steer - ApprovalYour client’s approver
approvals
One review round, told step by step below.
YouWhat you do
- Invite your client with a single‑use token
- Publish a round
- Read the feedback and steer
Your clientWhat your client does
- Review what you publish
- Comment, vote and recommend changes
- Approve one look
Your own session can never approve, and your client never gets a round you have not published.
- Step 1: inviteYou
Invite your client with a single‑use token
Add your client, and record their SOW signatory. Each invite is for one email, bound to your workspace and that client, and it works once. Redeeming it opens a session for that client only.
- Only the sha256 of the invite’s token is stored, never the token
- A used, expired or unknown invite gets the same refusal
- Recording the signatory creates their invite, if they are not one of this client’s users yet
sample recordInvite
single-use, one workspace, one client
- Your client’s address (illustrative)
- Client
- One client in your workspace
- Token
- Random, shown to you once
- Stored as
sha256 of the token- Use
once- Opens
- A session for this client only
The shape of an invite: what Nucleus stores, and the token it shows you once. Every value here is illustrative. - Step 2: reviewYour client
Your client gets only the rounds you publish
Publishing a round snapshots your review’s current directions: each one’s name, thesis and brand risks. A later steer or re-run never changes that snapshot.
- A round exists only once you publish it, so there is no draft to stumble on
- Another client’s round answers not found, never forbidden
- The round keeps each direction’s name, thesis and brand risks as published
sample directionsRound 1
as published: name, thesis and brand risks
demo-analogous-rotate-split-hero-14d3A stand-in direction built from analogous palette, rotate motion, split-hero layout, for "A home page for a design review app".
Brand risks: none
demo-high-contrast-breathe-centered-stack-9cc4A stand-in direction built from high-contrast palette, breathe motion, centered-stack layout, for "A home page for a design review app".
Brand risks: none
demo-pastel-drift-bento-84ddA stand-in direction built from pastel palette, drift motion, bento layout, for "A home page for a design review app".
Brand risks: none
another client’s roundnot found
Sample directions from the offline demo runner. A round shows each direction’s name, thesis and brand risks. - Step 3: feedbackYour client
They comment, vote, and recommend a change
On each direction: a thumbs up or down, comments, and recommendations, a kind of comment you can act on. A vote can change until that direction’s look is approved; then its votes lock.
- Comments are escaped, length-limited and rate-limited
- Each person gets the tally and their own vote, never a teammate’s
- A recommendation arrives open, for you to act on
sample recorddemo-high-contrast-breathe-centered-stack-9cc4
round 1 · feedback
votesup1down0yours:up- comment
The contrast reads well on my phone.
- recommendationopen
Make the headline larger. Keep the palette.
The shape of feedback as Nucleus stores it. Every value here is illustrative. - Step 4: steerYou
You turn their feedback into a steer
A model never applies a client’s recommendation by itself. You fork the direction with their wording as the note, the fork runs as a new direction, and you publish the next round.
- A steer forks a direction, it never overwrites one
- Each earlier round keeps its snapshot as it was published
- You decide what to act on
sample recordSteer, then publish
Recommendation, round 1
- recommendationopen
“Make the headline larger. Keep the palette.”
Steer
- Parent
demo-high-contrast-breathe-centered-stack-9cc4- Child
high-contrast-larger-headline- Note
- Make the headline larger. Keep the palette.
jobqueuedjobsucceeded
Round 2
publisheddemo-analogous-rotate-split-hero-14d3demo-high-contrast-breathe-centered-stack-9cc4demo-pastel-drift-bento-84ddhigh-contrast-larger-headlinefork
A steer queues a job and forks the direction. Publishing snapshots every current direction into the next round. - Step 5: approvalYour client’s approver
The approver signs off one look, and it is recorded
The approver is the person you record as the SOW signatory, or a designee set from one of your client’s accounts instead. They approve one direction of one round. The record pins the exact HTML by its sha256, and nothing can edit it afterward.
- An approval from your own session is refused
- With no approver on record, nobody can approve
- Append-only in the database itself: no update, no delete
- One approval per direction per round; a second is refused
sample recordApproval
append-only, one per direction per round
- Approved by
- Your client’s signatory (illustrative)
- Basis
- signatory
- When
2026-10-06 14:32 UTC- Round
2- Direction
high-contrast-larger-headline- sha256
651695435153d6ff68f2a33d44e18be5c665e4bc1cf9f57e461b2889ae44a277- Note
- This one. Keep the type as it is.
What it refuses
ADMIN_MAY_NOT_APPROVEyour session can never approveNO_APPROVERnobody on record, nobody approvesLOOK_APPROVEDalready approved, never edited
The shape of an approval as Nucleus stores it. Every value here is illustrative. The refusals are the API’s own codes.
Where freelancers fit
Free and Studio, with what each is planned to include. Prices at launch.
Free
- Upload a design you already have
- The review flow, with one invited approver
- A recorded sign-off
- The gates that apply to the upload
Studio
- A higher allowance than Builder
- Several brands
- Several client approvers per project
What each plan includes may change before launch.
Today a client has one approver at a time. Several per project is planned for Studio.