Back to themes

Form Lab - Gym & Fitness Coaching Astro Theme

A dark, high-energy Astro 7 theme for gyms, personal trainers, and training studios, with program, coach, and journal collections, an interactive BMI calculator, oversized italic display type, and acid lime accents.


Cost

Paid


Created by
AeroLaunch

Form Lab is a theme for training businesses that sell coaching and results, not a list of equipment. The homepage opens on full-bleed gym photography with TRAIN BETTER set in oversized italic caps, then works through coaching services, membership pricing, transformation goals, and coach profiles. Near-black surfaces let the photography carry the color, and a single acid lime accent does the pointing.


It is a complete site rather than a landing page. Three content collections cover training programs, coach profiles, and a fitness journal, each generating its own grid entry and detail route, so adding a sixth coach is one Markdown file rather than a component edit.



Built on Astro 7 and Tailwind v4 with TypeScript. Every section reads from a single config file, so branding the site is a one-file edit with no component changes needed.


Who it's for

  • Gyms and training studios
  • Personal trainers and online coaches
  • Strength and conditioning specialists
  • CrossFit and functional fitness boxes
  • Yoga, pilates, and boutique studios
  • Any coaching business that needs programs, staff profiles, pricing, and lead capture


What's distinctive

  • Three content collections - programs, coaches, and journal, each generating its own listing card and detail page from Markdown with schema validation, so a missing field fails the build with a message naming the field
  • An interactive BMI calculator - runs client-side and returns a banded, plain-language result instead of a bare number, giving a first-time visitor something to do before the contact form. Accepts both comma and dot decimal separators
  • Fluid display type - oversized italic caps sized from the container and the longest line, so a long page title scales to fit instead of overflowing
  • One accent, used with discipline - acid lime on near-black across buttons, eyebrows, and icons, never as a background wash
  • Coach cards that reveal name and specialty on hover over full-height portraits
  • Animated stat counters that count up on first view, format-preserving so 8k+ and 40+ both work
  • A private sections route that previews every block on one page, excluded from the sitemap


Built to be fast

  • 143 KB of JavaScript for the whole site. No jQuery, no Bootstrap JavaScript, no vendored plugin bundle
  • Motion is GSAP with ScrollTrigger plus Lenis for smooth scrolling, installed from npm and bundled by Vite so it tree-shakes
  • All imagery is WebP, 1.9 MB for the entire theme
  • Every animation respects prefers-reduced-motion


Agent-ready

Ships an AGENTS.md and a CLAUDE.md at the project root. Claude Code, Cursor, Copilot, and Codex read them on open, so an AI assistant starts with the file map, a task-routing table, the design decisions worth preserving, and the specific things that break the theme quietly.


What's included

  • Full source: Astro 7, Tailwind v4, TypeScript, GSAP, and Lenis
  • 24 generated pages from 13 route templates: Home, Programs index and detail, Coaches index and detail, Journal index and post, About, Pricing, Contact, Privacy, Terms, and a custom 404
  • Four training programs, six coach profiles, and three journal articles as editable Markdown
  • 35 reusable sections you can rearrange
  • One-file config at src/config/site.ts, no code changes needed for branding
  • Contact form wired to Formspree, FormSubmit, Netlify Forms, or a custom endpoint
  • Self-hosted Geist and Inter Display fonts, so no Google Fonts request and no third-party font domain
  • Deploy configs for Vercel, Netlify, and Cloudflare Pages
  • Lifetime updates for this theme
  • Documentation at aerolaunch.app/docs/themes/form-lab