Fauna Forum
← Cloomba for conferences

Configuring your site

One file drives everything: site.config.ts.

The template is configured by a single typed file, site.config.ts. It ships as a complete reference — every option is present, the unused ones commented out with their defaults — so configuring is mostly uncommenting. A typo or wrong value fails the build with a readable message before anything deploys.

With one deliberate exception: wording never fails the build. A bad entry in strings.ts is skipped with a warning and the English is used instead, because a mislabeled page is better than a site that won't deploy. Everything else — a missing event slug, a malformed theme — still stops the build, since those give you a broken site rather than a wrong word.

The blocks

  • site — name, logo, a wide hero_image (without one the hero shows the event's cover as a square), absolute URL (canonical tags + sitemap), description,language, and noindex for staging deploys. Note that language sets<html lang> and formats dates, times and prices — it does not translate any words; that's strings below.
  • event — the Cloomba event slug this site renders. One event per site; a satellite event is a second deployment.
  • theme — mode (auto follows the visitor's system with a toggle;light/dark pin one), font stacks, corner radius, and the color tokens per mode:primary, primary_content, accent, surface, surface_alt, text, text_muted. Set any subset — the rest derive from the mode's primary: the grays take its hue, so one brand color gives a matching palette.
  • sections — the home page as a list: order is display order, removing a line removes the section. Fourteen block types, from hero and stats to faq and the closing cta.
  • header / footer — omit them and navigation derives itself from the enabled sections and your custom pages; set them to take full control. The footer also carries app links and privacy/terms URLs.
  • strings — every UI label the template renders, so you can translate the site or just reword it. Already wired to strings.ts, which ships empty — you edit that file, never this line. See customization.
  • socials — profile URLs; icons are detected from the domain automatically.
  • analytics — a self-hosted Umami script (cookieless — no consent banner needed), plus head_html for anything else: Google Analytics, a Meta pixel, any snippet, injected verbatim into <head> (in the TanStack app, at the start of <body>). Cookie-based trackers make you responsible for a consent banner — the template ships none.
  • cloomba_promo — the "built with Cloomba" band above the footer. Set false to hide it.

Secrets live in .env, not in the config

The committed config holds production endpoints only. Your API key — and any local-development overrides — go in .env (gitignored; see .env.example):

  • CLOOMBA_API_KEY — a free read-only key from cloomba.com/me/developers. Build-time only; it never reaches the browser.
  • CLOOMBA_API_URL, CLOOMBA_BROWSER_API_URL, CLOOMBA_EMBED_ORIGIN — optional overrides for developing against a non-production Cloomba.

Next: customizing content and look · deploying