Skip to Content
Changelog

Changelog

All notable changes to the Gymlium Template SDK and developer documentation.

October 2026

Light and dark photos, photo spots

  • Every image a trainer manages now has an optional dark version, stored as <field>_dark and shown in dark mode; the light photo is used in both modes when it is empty. See Dark Mode.
  • Manifest: added an optional imageSlots array listing your template’s photo spots (slot id, page, section, field, ratio, persona). Signup previews each spot in light and dark, and new sites seed it with a sample photo or the trainer’s own upload. See Manifest.
  • Validator: checks imageSlots and warns when it is missing. See Validation.
  • Docs: the manifest reference now matches sdk/template.schema.json: author.id instead of author.email; standard_price, exclusive_price and attribution_removal_price instead of price; preview.thumbnail and preview.screenshots under preview/; the required structure and navZones. compatibility and defaultThemeMode were never read and are gone; trainers pick the default mode themselves. See Manifest.

July 2026

Per-trainer favicons

Released: July 19, 2026

  • Trainers can now upload an optional favicon during signup and in Dashboard → Appearance.
  • The platform injects the trainer’s favicon (or the Gymlium default when unset) into every page’s <head> automatically — templates do not render it.
  • Manifest: added an optional branding.favicon.supported flag. Templates must not ship their own favicon.ico or hard-code a <link rel="icon"> tag. See Manifest and Layout Components.

April 2026

SDK v1.0.0 — Initial Release

Released: April 26, 2026

The first public release of the Gymlium Template SDK and developer documentation.

Template SDK

  • Template scaffolding tool (npm run scaffold)
  • Local development server with hot reload and mock data
  • Validation script (npm run validate) covering manifest, exports, structure, and assets
  • Packaging tool (npm run package) for creating submission-ready zip files

Platform features

  • useApp() hook — locale, translations, site data, plan limits
  • useAuth() hook — authentication state, user object, sign-out
  • CSS Modules support with co-located stylesheets
  • Tailwind CSS utility classes available
  • CSS custom properties for theming (template.css)
  • Dark and light mode support via [data-theme] attribute
  • RTL support via [dir="rtl"] attribute
  • data-brand attribute for trainer colour customisation

Supported page types

  • Required: Home, About, Login
  • Optional: Services, Blog, Testimonials, Pricing, Schedule, Events, Contact, Privacy, Terms, Transformations, Account, Join, Forgot Password, Verify Email, Reset Password

Marketplace

  • Developer portal with registration and submission workflow
  • Template upload and review workflow
  • Four pricing models: Free, Free with Attribution, Standard, Exclusive
  • 95/5 revenue split via Stripe Connect
  • Weekly payouts

Documentation

  • Getting started guide and first template tutorial
  • Full SDK reference (manifest, structure, pages, components, styling, hooks)
  • Guides for responsive design, dark mode, localisation, RTL, and best practices
  • Submission workflow documentation
  • Business and revenue documentation
Last updated on