public-good-design-system Svelte Themes

Public Good Design System

Public Good Design System: how to create your own design system with components and Svelte, React, Vue, Blazor, etc.

Public Good Design System

Public Good Design System is a free open source design system that anyone can use and improve.

This is brand new work and we welcome collaboration, and guidance, and feedback.

Contact joel@joelparkerhenderson.com

Examples

Batteries-included web examples for Svelte, React, Vue, Blazor:

Headless versions if you want to use componets with all your own styles:

Components

Design Principles

  • Accessible: Semantic HTML elements, ARIA roles/attributes, and keyboard navigation built in. WCAG 2.2 AAA.
  • Composable: Compound components (e.g., Nav + NavList + NavListItem) snap together.
  • Internationalizaable: All text comes through parameters such as translation systems. No hardcoded user-facing strings.
  • Batteries-included examples: We provide complete examples with Svelte, React, Vue, Blazor.
  • Semantic CSS friendly: If like CSS semantic classes such as Daisy, you can target each component by semantic class.
  • Tailwind friendly: If you like CSS utilty classes such as Tailwind, you can use it in all the typical ways.
  • Headless friendly: If you like to bring your own styles, you can use our headless versions with your own CSS.

Component name patterns

  • *Bar *BarButton
    • MenuBar MenuBarButton
    • TabBar TabBarButton
    • TaskBar TaskBarButton
    • ToolBar ToolBarButton
  • *Group *GroupItem
    • SegmentGroup SegmentGroupItem
  • *Guide *GuideList *GuideListItem
    • Tour TourList TourListItem
  • *List *ListItem
    • CheckList CheckListItem
    • ContentsList ContentsListItem
    • DoList DoListItem
    • DontList DontListItem
    • PaginationList PaginationListItem
    • SummaryList SummaryListItem
  • *Nav *NavList *NavListItem
    • AccordionNav AccordionNavList AccordionNavListItem
    • BreadcrumbNav BreadcrumbNavList BreadcrumbNavListItem
    • ContentsNav ContentsList ContentsListItem
    • PaginationNav PaginationList PaginationListItem
    • TreeNav TreeNavList
  • *Select *SelectOption
    • ThemeSelect ThemeSelectOption
  • *Menu *MenuItem
    • ContextMenu ContextMenuItem
    • Menu MenuItem
  • *Input *Link
    • TelInput TelLink
    • EmailInput EmailLink
  • *Picker *PickerButton
    • ColorPicker ColorPickerButton
    • FiveFaceRatingPicker FiveFaceRatingPickerButton
    • FiveStarRatingPicker FiveStarRatingPickerButton
    • NetPromoterScorePicker NetPromoterScorePickerButton
    • RedAmberGreenPicker RedAmberGreenPickerButton
    • RedOrangeYellowGreenBluePicker RedOrangeYellowGreenBluePickerButton
  • *Table *TableHead *TableBody *TableFoot *TableCol *TableRow *TableData
    • CalendarTable CalendarTableHead CalendarTableBody CalendarTableFoot CalendarTableCol CalendarTableRow CalendarTableData
    • DataTable DataTableHead DataTableBody DataTableFoot DataTableCol DataTableRow DataTableData
    • GanttTable GanttTableHead GanttTableBody GanttTableFoot GanttTableCol GanttTableRow GanttTableData
    • KanbanTable KanbanTableHead KanbanTableBody KanbanTableFoot KanbanTableCol KanbanTableRow KanbanTableData

Tracking

  • Package: public-good-design-system-blazor-web-examples
  • Version: 0.2.0
  • Created: 2025-08-09T21:09:52Z
  • Updated: 2026-03-04T11:46:48Z
  • License: MIT or Apache-2.0 or GPL-2.0 or GPL-3.0 or contact us for more
  • Contact: Joel Parker Henderson (joel@joelparkerhenderson.com)

Top categories

Loading Svelte Themes