Skip to main content
Contact

Haven Home Therapy

Changelog

Every release of the template: what was added, improved, fixed and removed.

v1.1.0Latest

Configure the site from Sanity Studio

The practice owner can now set up the whole website from the editor: brand, contact data, colors and widgets live in a new Site Settings document, and the Studio opens on a Start page with a setup checklist.

Added

  • Site Settings in Sanity Studio: practice name, practitioner, location, email, phone, WhatsApp, social links, free intro call link, announcement bar, SEO keywords and Google Analytics ID, organized in tabs.
  • Color picker in the Studio: the 34 palettes as one-click cards, or your own three colors, with a note when the template adjusts a color to keep text readable.
  • Widget switches in the Studio: WhatsApp button, Theme Studio, changelog page and announcement bar.
  • Start page in the Studio with a setup checklist, shortcuts and an optional "Rebuild website now" button.
  • `pnpm settings` and an automatic step before dev, build and check that save the Site Settings document at build time, so the site stays static and every page, email and script uses the same values.

Improved

  • `pnpm seed` also creates the Site Settings document from the defaults in site.config.ts, so the site looks the same right after seeding.
  • site.config.ts now holds the defaults: anything left empty in Site Settings keeps them, so the template still works with no setup in the Studio.

Fixed

  • Spacing in the Studio's Bookings tool and the Cal.com event field, which collapsed with the current Sanity UI version.
v1.0.0

First public release

Zutra Health becomes a product: a complete website for health and therapy practices with a built-in booking system, a content editor, ready-made color palettes and a step-by-step guide.

Added

  • Booking system: calendar, time slots (12h/24h), details form for yourself or a family member, review step and confirmation, connected to Cal.com with real availability.
  • Home visits and online sessions: each service is either at-home (the patient's address is saved in the booking) or virtual (Cal Video link).
  • Booking emails with Resend: confirmation to the patient and notification to you, with payment instructions and an "Add to Google Calendar" link.
  • Booking CRM inside Sanity Studio: see, confirm, cancel and reschedule bookings, with automatic emails to the patient.
  • Theme Studio: a floating panel with 34 palettes designed for fields such as geriatrics, mental health, dental, pediatrics or cardiology, plus a custom mode with live accessibility checks (WCAG AA). Copy the result into one config file.
  • Sanity CMS integration: services, care plans, testimonials, FAQ, "why choose me", about section and the home hero are edited from Sanity Studio, with a one-command demo content import (`pnpm seed`).
  • Editable home hero: eyebrow, title, description, buttons, highlights, floating cards and image, all from Sanity.
  • Cookie consent: banner and preferences dialog that really block analytics and marketing scripts until the visitor accepts (Google Analytics ready).
  • Floating WhatsApp button, announcement bar and a public changelog page, each one switched on or off in the config.
  • Automatic social share images (1200x630) for the site and for every service, generated at build time.
  • SEO: structured data (JSON-LD), sitemap, robots.txt, canonical URLs and Open Graph tags.
  • Legal pages (terms, privacy, informed consent, booking policies), 404 and 500 pages. The legal texts are generic examples, not legal advice.
  • Documentation: an offline step-by-step guide for people who have never built a website.
  • Demo mode (`DEMO_MODE=true`): forms and bookings are validated but nothing is created or sent.

Improved

  • Performance: Lighthouse 100/100/100/100 on the live demo. Self-hosted fonts, a small icon font with only the icons you use, inlined CSS and an on-demand booking widget.
  • Security: strict Content-Security-Policy and security headers, escaped email content, sanitized CMS text, rate limiting, honeypot field and no secrets inside the Studio bundle.
  • Accessibility: correct landmarks and heading order, keyboard-friendly dialogs, visible focus and contrast guaranteed in every palette.

Removed

  • Third-party scripts and stylesheets loaded from CDNs (fonts, icons and the Cal.com embed script): everything is now served from your own site.
v0.9.0

Booking CRM and security hardening

The booking workflow moves into the Studio and the API gets its first security pass.

Added

  • Security headers middleware: X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy and Content-Security-Policy.
  • Booking CRM in Sanity Studio with token-protected API endpoints to confirm, cancel and reschedule Cal.com bookings.
  • Email templates for the CRM actions (confirmation, cancellation, rescheduling) with a reminder of the session format.
  • Studio customization: branded theme and logo, grouped navigation, per-type icons, and a custom input that links a service to its Cal.com event type.

Improved

  • Server-side validation for the contact form and the booking form (email, name, phone, message and note lengths).
  • Inline, accessible error messages instead of browser alerts, plus ARIA attributes on form fields.
  • Cal.com errors no longer expose internal details to visitors.

Removed

  • A debug endpoint that revealed which API keys were configured.
v0.8.0

Transactional emails

Added

  • Email system with Resend: HTML email templates compatible with Gmail, Outlook and Apple Mail, using the site colors.
  • Working contact form: the visitor gets an automatic reply and you get the message.

Improved

  • Booking emails clarify that an appointment is confirmed once payment is verified.
v0.7.0

Content moves to Sanity

The site stops depending on files for its content: everything is edited in Sanity Studio and the site stays 100% static.

Added

  • Sanity Studio with six content types: service, care plan, testimonial, FAQ, "why choose me" and about.
  • Portable Text renderer for rich text and an image helper that serves optimized, responsive images from the Sanity CDN.

Improved

  • Service images are now served from the Sanity CDN with responsive sizes.

Removed

  • Markdown content files: services now live in Sanity.
v0.6.0

Edge-ready foundation

Added

  • Custom 404 and 500 pages with self-contained fallbacks.
  • Icon automation: one script generates every favicon and mobile icon from a master SVG.
  • Social share image generation optimized for the edge.

Improved

  • Upgraded to Astro 6 and moved hosting to Cloudflare for better stability and speed.
  • JSON-LD structured data now uses consistent dynamic images.

Removed

  • Legacy static images and the old hosting configuration.