page UI { state heroActions = [ { label: "Browse components", href: "#component-01", icon: "icon-[lucide--blocks]", variant: "default", color: "primary" }, { label: "View metrics", href: "#component-14", icon: "icon-[lucide--chart-no-axes-combined]", variant: "outline", color: "primary" } ] state statsItems = [ { label: "Composite components", value: "18", description: "Shown separately with a practical use case", icon: "icon-[lucide--blocks]", color: "primary" }, { label: "Rendering", value: "SSR", description: "Server-first WRNexusJS component rendering", icon: "icon-[lucide--server]", color: "info" }, { label: "Responsive", value: "Yes", description: "Mobile, tablet, and desktop layouts", icon: "icon-[lucide--monitor-smartphone]", color: "success" }, { label: "Theme aware", value: "Yes", description: "Supports active theme and accent palettes", icon: "icon-[lucide--palette]", color: "warning" } ] state featureItems = [ { icon: "icon-[lucide--shield-check]", title: "Citizen services", description: "Expose public safety and citizen-service capabilities.", href: "/citizen-services", actionLabel: "View services" }, { icon: "icon-[lucide--map-pinned]", title: "Station directory", description: "Help visitors locate stations and jurisdiction contacts.", href: "/contact/police-station-directory", actionLabel: "Find station" }, { icon: "icon-[lucide--radio-tower]", title: "Public updates", description: "Publish official alerts, notices, and verified information.", href: "/media", actionLabel: "View updates" } ] state metricItems = [ { label: "Public services", value: "24", description: "Citizen-facing services available online.", icon: "icon-[lucide--hand-heart]", trend: "+4", trendLabel: "this release", trendDirection: "up", color: "primary" }, { label: "Police stations", value: "126", description: "Searchable directory entries.", icon: "icon-[lucide--landmark]", trend: "Updated", trendLabel: "today", trendDirection: "neutral", color: "info" }, { label: "Availability", value: "99.9", suffix: "%", description: "Target service availability.", icon: "icon-[lucide--activity]", trend: "Stable", trendLabel: "30 days", trendDirection: "positive", color: "success" } ] state breadcrumbs = [ { label: "Home", href: "/", value: "home", icon: "icon-[lucide--house]" }, { label: "Components", href: "/components", value: "components" }, { label: "Page header", value: "page-header", current: true } ] state heroVisualItems = [ { label: "Reusable components", description: "Compose complete pages using shared UI.", value: "108", icon: "icon-[lucide--blocks]" }, { label: "Theme support", description: "Built for light, dark, and accent palettes.", value: "Ready", icon: "icon-[lucide--palette]" }, { label: "Responsive layout", description: "Optimized for mobile, tablet, and desktop.", value: "100%", icon: "icon-[lucide--monitor-smartphone]" } ] seo { title = "18 UI Components — Names and Use Cases" description = "All 18 WRNexusJS composite UI components shown individually with their names and practical use cases." canonical = "/ui-18-components" } view {

01. PublicPageShell

PublicPageShell

Use case: Provide the outer structure for a complete public page, including maximum width, page background, overflow handling, before/after slots, and minimum-height behavior.

This complete page is rendered inside PublicPageShell.

02. AnnouncementBar

AnnouncementBar

Use case: Display an important site-wide update, emergency alert, release notice, or time-sensitive action above the primary page content.

03. PageHeader

PageHeader

Use case: Introduce an internal or public page with an eyebrow, title, description, icon, breadcrumbs, and primary or secondary actions.

04. Hero

Hero

Use case: Create the primary marketing or public-information introduction with headline emphasis, supporting content, trust items, actions, and an optional visual area.

05. HeroActions

HeroActions

Use case: Group hero buttons with consistent alignment, mobile stacking, orientation, sizing, variants, and responsive behavior.

06. StatsBar

StatsBar

Use case: Present a compact row of key facts, service counts, performance indicators, trust signals, or public portal statistics.

07. Section

Section

Use case: Create predictable page sections with shared spacing, width constraints, surfaces, borders, and responsive vertical rhythm.

Content placed inside a Section component

The component owns spacing, surface, borders, and content width.

08. SectionHeader

SectionHeader

Use case: Add a consistent heading block to content sections, including eyebrow text, description, icon slot, action slot, alignment, and heading level.

Next component

09. MarketingSectionHeader

MarketingSectionHeader

Use case: Introduce marketing, services, solutions, features, benefits, case studies, or product sections with a prominent optional action.

10. TextLink

TextLink

Use case: Provide a lightweight inline action for “view all,” “learn more,” “open documentation,” or related navigation without using a full button.

11. FeatureGrid

FeatureGrid

Use case: Arrange services, features, solutions, benefits, or linked capabilities in a responsive equal-height grid.

{#each featureItems as item, index} {/each}

12. FeatureCard

FeatureCard

Use case: Present a linked feature or service with an icon, title, description, badge, visual variant, hover treatment, and action label.

13. FeatureIconCard

FeatureIconCard

Use case: Highlight a capability where the icon treatment should carry stronger visual importance than a standard feature card.

14. MetricGrid

MetricGrid

Use case: Arrange operational values, KPIs, public statistics, usage summaries, or service indicators in a responsive grid.

15. MetricCard

MetricCard

Use case: Display one metric with a label, value, suffix, description, icon, trend, status direction, and optional action.

16. SplitHero

SplitHero

Use case: Build a two-column introduction that balances descriptive content and a visual, screenshot, feature panel, image, map, or media block.

Visual content area

Add a product screenshot, service diagram, dashboard, image, or interactive preview.

17. CTASection

CTASection

Use case: Close a page or major section with a strong conversion action such as registration, sign-in, contact, application, service request, or documentation access.

18. BackToTop

BackToTop

Use case: Provide a floating control on long pages that returns visitors to the top and can optionally show scroll progress.

Scroll down the page until the floating button becomes visible.

} }