Boise Today project

Boise Today / Design system

Documentation v0.1 · Boise publication · Townwell platform

Design system contents

Implementation and maintenance

Composition and extension

Build new views from the documented source primitives and preserve their native contracts.

On this page

Assembly recipes

Assembly recipes
TaskComposition
Story archiveSiteShell + StoryArchiveHeading/List + StoryPagination.
Editorial formAdminPageHeader + form + AdminEditTabs + AdminPanel + AdminField/control + save feedback.
Record managementPageHeader + query/status controls + AdminDataList/Row + Badge + EmptyState.
Media preparationAdmin shell + MediaUploadWorkbench; persist only through the service contract.
Place inspectionMap layer/selection supplies a target to MapDetailModal; close callback belongs to the parent.

Admin form composition

<form id="story-form" action={saveStory}>
  <AdminPanel>
    <AdminField label="Title">
      <AdminInput name="title" defaultValue={story.title} required />
    </AdminField>
  </AdminPanel>
  <AdminButton type="submit">Save story</AdminButton>
</form>

Extension criteria

  • A new variant must solve a repeatable need in an actual route.
  • Document required props, state ownership, unavailable/error behavior and theme scope.
  • Add a native component crop and an applied screen; verify the interaction, not just the appearance.
  • Avoid nesting buttons/links in whole-row links and accidentally submitting forms from toolbar buttons.

Source references

Source references
FileResponsibility
components/admin-ui.tsxAudited Townwell implementation; use this file when extending this interface.
components/admin/admin-edit-tabs.tsxAudited Townwell implementation; use this file when extending this interface.
components/public-content-list-item.tsxAudited Townwell implementation; use this file when extending this interface.

Reference downloads

Source audit: 2026-10-07 · Revision ce8bc72b96da · Documentation v0.1