A commercial single-page service discovery and appointment booking website template for appointment-driven businesses — wellness and aesthetic sanctuaries, somatic recovery clinics, daylight photography studios, executive consultancies, and private specialist practices.


What makes it different

Most service templates stop at a static pricing table and a generic contact form. Aptello includes a deterministic, duration-aware client-side scheduling engine that calculates total session length across base services and time-extending add-ons, blocks past dates and weekly studio closure days (Mondays), prevents appointments from exceeding closing hours, and checks real-time interval overlaps ([startTime, endTime)) per specialist so visitors cannot double-book an occupied slot.

Interactive Booking & Service Studio

  • Hero & Quick-Book Windows — asymmetric architectural split layout with clickable "Next Open Windows" cards that pre-populate the booking engine and jump directly to slot confirmation
  • Service Discovery (#services) — category tabs, duration filters, price/duration sorting, live keyword search, and an expandable Service Protocol Dossier modal with step-by-step treatment breakdown and compatible enhancements
  • 4-Step Appointment Booking Studio (#booking):
    1. Service & Add-Ons — select a primary treatment and optional duration/price upgrades (+15 min, +20 min)
    2. Date & Time Slot — filter by practitioner or any available specialist, browse the paginated date strip (60 days ahead), and pick a conflict-checked morning, afternoon, or evening slot
    3. Client Details — validated intake form (name, email, phone format, visit status, reminder channel, notes, and policy consent) plus one-click sample client autofill
    4. Review & Confirm — sticky Reservation Ledger with itemized duration and price breakdown, instant reference code generation, downloadable RFC 5545 .ics calendar invite, and print-ready receipt (@media print)
  • My Bookings Dialog — inspect confirmed appointments persisted in localStorage, reschedule an existing reservation into a new slot, cancel an appointment to immediately release its time window, or reset demo data
  • Specialists (#specialists), Studio Suites & Hours (#studio), Client Stories (#reviews), and FAQ (#faq) — interactive suite switcher, 4-step arrival protocol, dynamic operating hours table highlighting the current weekday, Embla carousels, and accessible Radix Accordion FAQ

Multi-Industry & Theme Customizer

Includes a live slide-over Template & Theme Presets drawer so buyers or clients can preview:

  • 3 Complete Industry Verticals — Wellness & Spa (wellness, default), Daylight Photo Studio (photography), and Executive Advisory (consulting), each with its own services, add-ons, specialists, and reviews
  • Light & Dark Appearance Modes — warm alabaster stone in light mode and deep espresso obsidian in dark mode (data-theme="light|dark")
  • 8 Contrast-Calibrated Accent Palettes — terracotta, sage, obsidian, cobalt, plum, amber, teal, and rosewood (data-accent)

Included

  • Single-page booking studio (/) with 7 deep-linkable sections, 2 modal dialogs (ServiceDossierDialog, MyBookingsDialog), 1 slide-over customizer drawer, and a branded 404 page (not-found.tsx)
  • Centralized configuration (src/config/site.ts), marketing copy (src/content/marketing.ts), and typed catalog data (src/data/booking-catalog.ts)
  • Unit and integration tests (Vitest + React Testing Library) and E2E + automated axe WCAG 2.1 AA accessibility tests (Playwright, desktop 1440 px and Pixel 7 mobile emulation)
  • Buyer documentation in README.md and docs/ (getting-started, customization, architecture, data-and-api, limitations, third-party-notices)

Technology

Next.js 16.4 (App Router), React 19.3, TypeScript 5.9 (strict), Tailwind CSS 4.3, Radix UI primitives in the shadcn/ui pattern, Embla Carousel 8.6, Motion for React 12, Lucide icons. Tested with Node.js 22.22 (>=22.12.0) and pnpm 12.7.

Please note

  • Frontend template only. No backend server, shared multi-user database, authentication, payment processing (Stripe/checkout), or automated email/SMS dispatch is included. Confirmed appointments are persisted locally in each visitor's browser via localStorage (aptello:bookings:v1). docs/data-and-api.md documents where to connect a real backend API.
  • Fonts (Outfit, Newsreader, JetBrains Mono, all SIL Open Font License 1.1) are fetched from Google Fonts at build time via next/font/google and self-hosted; pnpm build requires internet access.
  • Images: Original SVG brand marks and floorplan schematics are included alongside curated Unsplash demo photographs (public/images/*.jpg) under the Unsplash License for preview/layout demonstration. Buyers should replace demo photographs with their own studio and staff imagery before commercial launch (see docs/third-party-notices.md).
  • Browser testing was performed in Chromium (desktop 1440×900, tablet 768×1024, and mobile 390×844 / Pixel 7 emulation).
  • All studio names, practitioners, client stories, phone numbers, and .example email addresses in the demo are fictional.
Wrapmarket Exclusive
Version 1.0.0
Initial release October 15, 2026
Download 2.1 MB .zip
Reference ID W63GKM58X