Startboard project

Startboard / Design system

Documentation v1.0.0 · Public product

Design system contents

Components

Link editor

Create or update a bookmark with URL, label, board and optional icon.

On this page

Purpose and placement

Create or update a bookmark with URL, label, board and optional icon.

Anatomy

  • URL and label fields
  • Board select
  • Optional inline board-name field
  • Icon search / selection
  • Feedback and primary action

Contract

Contract
Input or boundaryBehavior
Create payloadurl, label, icon, boardId
Edit payloadlinkId, url, label, icon or null, boardId
Label assistance500ms delayed title lookup while untouched
SavePOST for create; PATCH for edit

States and feedback

  • Blank create
  • Prefilled edit
  • Title lookup pending
  • Required-label error
  • Saving disabled
  • Service error with values retained

Interaction and composition

Client create validates only a nonempty label before requesting the API. URL input type does not supply native form validation because the action is a button outside a form submit. The server rejects empty URLs. Creating a board inline performs board POST before link POST, so the operation is not atomic.

Responsive behavior

The select spans the form width. Icon suggestions can extend past the card and small viewport; the screenshot includes the native placement.

Accessibility contract

URL/label/icon inputs rely on placeholders rather than associated labels. Feedback paragraphs do not have alert/live-region semantics. Add explicit names and error associations as remediation.

Known implementation gaps

Removing an icon in edit sends null, but link PATCH maps only string icons to updates; null removal is not guaranteed to persist. This discrepancy should be fixed in the app before claiming the interaction is complete.

Source references

Source references
Repository fileResponsibility
app/(home)/AppHome.tsxLink fields and handlers
app/api/links/route.tsCreate/update validation
app/api/link-metadata/route.tsTitle fetch

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.

Link Editor Edit Desktop Light · Component detail · Light · Desktop · Edit · 1800 × 1422 px
Link Editor Create Desktop Light · Component detail · Light · Desktop · Create · 1800 × 1422 px
Link Editor Validation Desktop Light · Component detail · Light · Desktop · Validation · 1800 × 1530 px
Link Editor Saving Desktop Light · Component detail · Light · Desktop · Saving · 1800 × 1422 px
Link Editor New Board Desktop Light · Component detail · Light · Desktop · New Board · 1800 × 1620 px
Link Editor Server Error Desktop Light · Component detail · Light · Desktop · Server Error · 1800 × 1692 px

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