Startboard project

Startboard / Design system

Documentation v1.0.0 · Public product

Design system contents

Patterns

Share a collection

Publish a reading-only collection while keeping management private.

On this page

Task sequence

  • Open an unlocked board editor.
  • Review title, description and every included destination.
  • Enable Public and save.
  • Use /board/[id] as the share route.

Data and persistence

The public route validates ID format and fetches only an isPublic board. Links are fetched for that board. It uses the owner accent and viewer system theme. Avatar-backed identity is conditional.

Failure and recovery

Private, invalid and missing IDs lead to notFound. B2 avatar failure hides the owner row rather than blocking the collection. Revoking visibility is a separate board update.

Acceptance criteria

  • Never include private URLs in a shared collection.
  • Do not conflate /boards/[slug] with the public route.
  • Local fixture URLs must not be copied as working public shares.

Source references

Source references
Repository fileResponsibility
app/board/[id]/page.tsxRead route
app/settings/boards/BoardsList.tsxVisibility editor
app/api/boards/route.tsUpdate

Examples from the app

Actual Startboard source UI with isolated fictional records; both native themes at 2× resolution or higher. No live integrations or account writes. Captured at 2× resolution or higher. Select an image to inspect it full size.

Public Board Default Desktop Light · Screen · Light · Desktop · 2880 × 2000 px
Board Editor Public Desktop Light · Component detail · Light · Desktop · Public · 1800 × 1842 px

Source audit: 2026-10-08 · Revision 08fa2595a668 · Documentation v1.0.0