kiliczsh/genui-components-swift
Shared SwiftUI design system and component catalogs for GenUI applications.
Products
GenUIDesignSystem— design tokens (DS), motion vocabulary (Motion),
press/hover button styles (PressableStyle), and the shared canvasScrollProxy environment key.
GenUISemanticCatalog—SemanticCatalog.register(into:): Metric,
StatusBadge, Progress, Timeline, TaskList, RiskCard, ChoicePicker, ComparisonTable, BudgetBreakdown, DecisionCard.
GenUIAdvancedCatalog—AdvancedCatalog.register(into:): Section, Grid,
Tabs, DisclosureGroup, DataTable, Chart, DateTimeInput, MultiSelect, Stepper, Alert, EmptyState, ActionBar.
GenUIRichCatalog—RichComponentCatalog.register(into:): rich answer
components (card lists, pickers, weather, calendar, map, comparisons, timelines, follow-ups, and more).
An internal GenUICatalogSupport target holds shared helpers (such as JSONValue.stableIdentity) used across the catalogs.
Usage
Register the catalogs you need on top of the A2UI basic catalog:
import GenUIKitBasicCatalog
import GenUISemanticCatalog
import GenUIAdvancedCatalog
import GenUIRichCatalog
let registry = BasicCatalog.registry()
SemanticCatalog.register(into: registry)
AdvancedCatalog.register(into: registry)
RichComponentCatalog.register(into: registry)Requirements
- macOS 14+ / iOS 17+ / visionOS 1+
- Swift 5.9+
The package resolves genui-kit from its tagged HTTPS release and can be cloned and built independently of the GenUI workspace.
Installation
.package(url: "https://github.com/kiliczsh/genui-components-swift.git", from: "0.1.0")Quality
Component behavior tests and visual regression tests will live with the package so it can be developed independently from the applications.
This repository is included in the kiliczsh/genui workspace as a Git submodule.
Package Metadata
Repository: kiliczsh/genui-components-swift
Default branch: main
README: README.md