Component library

Reusable UI, browsable in one place

React components live in Storybook. Plain HTML/CSS/JS page templates (nav bars, heroes, galleries, footers) are dependency-free files you can open directly — no build step.

React components

Interactive, themeable, browsable in both light and dark mode.

Open Storybook Select, DatePicker, TimePicker, PhoneInput, ImageCropPicker, Button, Navbar, Hero, Footer, AccountMenu, Testimonials, FAQAccordion, StatsBand, CTABanner, TeamGrid, GalleryGrid, ContactForm, LocationMap, PricingTable, ProcessSteps, NewsletterSignup, LogoMarquee, AnnouncementBar, ReviewsSummary, EventsList, ComingSoonPage, BeforeAfterSlider, VideoHero, StickyMobileCTA, Reveal, ScrollPlayVideo, DashboardShell, StatCard, Badge, Toggle, CardList/ListRow, EmptyState, PageHeader, Stepper

Vanilla HTML templates

Structural page scaffolding for static (non-React) sites — open any of these directly.

Navbar
Sticky nav, working hamburger menu below 768px.
Hero
Eyebrow / headline / subheading / CTAs.
Photo gallery hero
Full-bleed rotating photo hero, simple crossfade.
Photo gallery hero (dynamic)
Swipe transition + slow Ken Burns zoom. Proven on thehoundpub.
Buttons
4 variants × 3 sizes as plain CSS classes.
Footer
Link columns + bottom legal bar, optional contact row.
Phone input
Country picker + NANP-rule formatting/validation.
Bulletin widget embed
Copy-paste snippet + static preview of the widget markup.
Bulletin blog post template
Per-business blog-post starting point.
Bulletin blog index template
Optional blog index starting point.
Testimonials
Responsive card grid of quote + name/role.
FAQ accordion
Independently-expanding question/answer rows.
Stats band
Big numbers + labels, quick credibility hit.
CTA banner
Standalone accent-filled closing call-to-action.
Team grid
Photo grid + optional per-person booking link.
Gallery grid
Photo grid with a click-to-enlarge lightbox.
Contact form
Name/email/message, posts to Web3Forms.
Location map
Address + embedded Google Map + hours.
Pricing / menu table
Flexible priced-item list — menu or plans.
Process steps
Numbered "How it works" sequence.
Newsletter signup
Single-input email capture band.
Logo marquee
Continuously scrolling partner/press logos.
Announcement bar
Slim dismissible top banner.
Reviews summary
Aggregate star rating + review count + link out.
Events list
Date-badged events with a real "Add to calendar" download.
Coming soon page
Full holding page, noindex included.
Before/after slider
Drag-to-reveal image comparison.
Video hero
Full-bleed muted autoplay video background.
Sticky mobile CTA
Persistent mobile-only bottom action bar.
Order widget embed
"Order online" card linking to a Skipana ordering page.
Booking widget embed
"Book now" card linking to an appointment-platform booking page.

Style presets

Buttons/Hero/Navbar/Footer/Testimonials/FAQAccordion/StatsBand/ CTABanner each come in extra visual treatments (shape, typography, layout — not just a color swap), so sites don't default to the same look. Same idea exists as a `preset` prop on the React components — see Storybook's "Style presets"/"Preset:" stories on each component.

Editorial warm — handcrafted, small-business feel

Bold editorial — energetic, high-contrast

Minimal structured — quiet, premium/professional

Retro print — handmade, zine/gig-poster feel

Neon nightlife — dark-by-default, bars/venues/events

Tech futuristic — Skipana/appointment-platform's own marketing sites