website/config.toml

41 lines
1.7 KiB
TOML
Raw Normal View History

initial landing scaffold (hyperhive/website MVP) Tracks hyperhive#502 — landing-only first cut. Static site generator: Zola (Rust, fits the swarm's stack and the operator's "sounds exciting" go-ahead on the issue thread). ## Structure - `flake.nix` — `nix build .#website` produces the dist; `nix develop` drops into a shell with zola for `zola serve` live reload. No CI runner; the flake is the validation contract. - `config.toml` — Zola config; base URL `hyperhive.darkest.space` per #502. Single-page landing — feeds / search index off. - `content/_index.md` — landing copy. Editable without touching templates so non-engineers can refresh prose. - `templates/base.html` + `templates/index.html` — base layout + landing-specific extension. og:tags + favicon wired through. - `sass/main.scss` — theme. Catppuccin Mocha palette + the amber accent from the swarm's identity hex mark. Self-contained (no @import) so the file is reviewable in one place. - `static/{favicon,hex-mark,hyperhive}.svg` — copies of the dashboard's `branding/hyperhive.svg` (hex motif). Used as favicon, hero inline, and og:image respectively. ## Theme Monospace identity throughout — matches dashboard / agent terminals so the website reads as part of the same family rather than a separate marketing artifact. Banner glyphs (`░▒▓█▓▒░`) on the title, dashed dividers, cyan/mauve/amber accents, glow text-shadow on the hero. Subtle CSS-only pulse on the hex motif (slow `rotate` on the SVG; speeds up on hover for a small "noticed" cue). ## Three-column "what's inside" `the swarm` / `the dashboard` / `the boundary` — quick orientation for visitors who clicked through from a link without context. Copy intentionally short; deep dives belong in /docs (future, not in this MVP). ## Scope drop Per mara on #502: - no nav / blog / docs yet — landing only - no screenshots in MVP, follow via issues in this repo - public visibility ## Provenance Scaffolded under `iris/website` because my agent forge token doesn't carry org-admin to create repos under `hyperhive/`. Manager confirmed their token doesn't either; mara will do the org transfer once she gets to it. README documents this.
2026-05-27 10:08:56 +02:00
# Zola config — hyperhive marketing landing (#502).
#
# Single-page landing for now; nav / blog / docs come later if scope grows.
# Theme lives in `sass/main.scss` and `templates/`; no external Zola theme
# import — the project's identity matches the dashboard / agent terminals
# closely enough that pulling in a third-party theme would just give us
# something to fight.
base_url = "https://hyperhive.darkest.space"
title = "hyperhive"
description = "a swarm of claude agents in nspawn containers, with an operator-shaped trust boundary."
# We don't need RSS / search / sitemaps for a single-page landing. Can
# flip these on later if blog content lands.
generate_feeds = false
build_search_index = false
# Embed the SCSS pipeline; zola compiles `sass/*.scss` → `public/*.css`.
compile_sass = true
# Markdown rendering defaults — landing has very little prose so the
# fancier syntax-highlight setup isn't needed yet. Easy to turn on later.
[markdown]
highlight_code = false
smart_punctuation = true
[extra]
# Catppuccin Mocha palette + amber accent (matching the hex mark) is
# the project's identity. Single source of truth — `main.scss` reads
# these via Sass variables, not from this attrset (Zola doesn't pipe
# extras into Sass). Keeping them here as documentation only so the
# theme intent is reviewable in one place.
palette = "catppuccin-mocha"
accent = "amber"
# Public-facing forge URL — surfaced in templates via
# `{{ config.extra.forge_url }}`. Update this when the canonical
# public hyperhive mirror lands; the current value is the operator's
# berlin.ccc.de instance (per the project README at that mirror).
forge_url = "https://git.berlin.ccc.de/vinzenz/hyperhive"