@ann/ui

Ann Design System

Shared UI primitives for anntech.dev and related Ann properties. Click any component to see live editable demos.

Layout
HeroFull-width navy hero section with headline, subline, and CTA buttons.
CTABannerCall-to-action banner with headline and a button.
FooterSite footer with brand, copyright, and nav links.
PageBodyCentred content wrapper with configurable max-width.
PageHeaderPage-level h1 with optional subtitle.
SectionHeaderSection h2 with optional centering.
Primitives
BadgeInline status label with five semantic colour variants.
ButtonAction trigger with variants, sizes, and loading state.
CardBordered container with padding and optional muted background.
AppearanceCardTheme toggle card for profile pages.
ErrorBoxInline error display with a title and message.
Input & LabelControlled text input with accessible label.
SkeletonAnimated loading placeholder.
Data Display
TablePrimitive table components: Shell, Head, Body, Row, Cell.
PaginatedTableTable with built-in pagination bar, top/bottom/both.
Navigation
NavbarFixed top navigation bar with logo, links, CTA, and auth area with avatar dropdown.
SidebarNavVertical nav sidebar with grouped items, active state, and brand header.
BreadcrumbNavigation trail with linked ancestors.
PaginationPage controls with size selector and numbered buttons.
AuthorLinkLinked author byline chip used in article cards.
NavCardEmoji-decorated navigation card with optional badge.
Auth & Profile
LoginFormSign-in and registration form with Google OAuth and email/password.
ProfileInfoCardUser profile card with avatar slot, inline name editing, roles, and verified badge.
RefreshButtonIcon button that triggers a data reload with a loading spinner.
Content & Forms
ContactFormClient-side contact enquiry form with inline feedback.
PolicyBodyRenders a structured legal document from PolicySectionData[].
Utilities
ThemeProviderContext provider for light/dark theme with useTheme() hook.
CookieConsentGDPR cookie consent banner with localStorage persistence.
AdsenseScriptGoogle AdSense script that respects cookie consent before loading.