No description
Find a file
iris 817a38ec59 readme: AI-generation disclosure banner (vibec0re style)
mara on PR #1: \"add AI generated note to README (in vibec0re
style)\".

Block-glyph banner in the same `░▒▓█▓▒░` rendering as the
dashboard chrome + agent terminals (\`hyperhive/branding/...\`
fingerprint), plus a short prose disclosure noting that copy /
theme / layout / flake here are AI-authored by an agent in the
swarm itself, reviewed by the operator before merge. Hex motif
art stays attributed upstream (hand-drawn).

Visual rhyme is intentional — the website's identity is the
swarm rendering its own door, and the disclosure should read in
that voice instead of legalese.
2026-05-27 13:26:46 +02:00
content initial landing scaffold (hyperhive/website MVP) 2026-05-27 10:08:56 +02:00
sass initial landing scaffold (hyperhive/website MVP) 2026-05-27 10:08:56 +02:00
static dedupe: single canonical hyperhive.svg for favicon + og + hero 2026-05-27 12:55:04 +02:00
templates config: hoist forge URL out of templates + add nginx deploy snippet 2026-05-27 12:56:34 +02:00
.gitignore initial landing scaffold (hyperhive/website MVP) 2026-05-27 10:08:56 +02:00
config.toml config: point forge_url at forge.darkest.space/hyperhive/hyperhive 2026-05-27 12:57:05 +02:00
flake.nix flake: drop flake-utils, match hyperhive's hand-rolled forAllSystems 2026-05-27 12:57:56 +02:00
README.md readme: AI-generation disclosure banner (vibec0re style) 2026-05-27 13:26:46 +02:00

hyperhive website

Marketing landing for hyperhive, deployed at hyperhive.darkest.space.

Built with Zola, the Rust static site generator. Single-page landing for now; nav / blog / docs land via follow-up issues in this repo if scope grows.

░▒▓█▓▒░  scaffolded by `iris`, a claude agent in the swarm  ░▒▓█▓▒░
                ▣  the hive renders its own door  ◇

Copy, theme, layout, and the flake here are AI-authored — templates / SCSS / nix / markdown all from an agent in this same hyperhive deployment, reviewed by the operator before merge. Hex motif art lives upstream in hyperhive/branding/; everything else came out of one prompt-and-iterate session against the #502 thread.

Build

# one-shot build to ./public
nix build .#website
# → result/ is the dist, ready to drop under any static host

# dev server (live reload on http://127.0.0.1:1111/)
nix develop
zola serve

Layout

config.toml          # zola config (single source of truth for site meta)
content/_index.md    # landing page copy — edit here for prose changes
templates/
  base.html          # base layout (head, footer, og tags)
  index.html         # landing template extending base
sass/
  main.scss          # theme — Catppuccin Mocha + amber accent
static/
  hyperhive.svg      # single canonical hex motif — favicon + og:image
                     # + inline hero (via Zola `load_data`)
flake.nix            # `nix build` → site dist, `nix develop` → zola shell

Deploy

The build output is a plain public/ directory of static files — drop it under any HTTP server's docroot. nginx vhost example for serving it at hyperhive.darkest.space:

server {
    listen      80;
    listen      [::]:80;
    server_name hyperhive.darkest.space;

    # If you've got TLS in front, the usual `return 301
    # https://$host$request_uri;` redirect goes here and the
    # listen lines move to a sibling server { listen 443 ssl …; }
    # block. Keeping this snippet minimal — plain HTTP on a
    # cert-managed host is the smallest working config.

    # Point at wherever `nix build .#website && cp -r result/. …`
    # lands. The dist is fully self-contained: no server-side
    # rendering, no rewrites, no API.
    root        /var/www/hyperhive-website;
    index       index.html;

    location / {
        try_files $uri $uri/ =404;
    }

    # 7-day cache on the immutable assets (SVG, CSS, fonts).
    # `nix build` produces a fresh path each rebuild, so caching
    # is safe — operator can just `mv -T result-new /var/www/…`
    # to swap, no cache-busting hashes needed.
    location ~* \.(svg|css|js|woff2|png|ico)$ {
        expires     7d;
        add_header  Cache-Control "public, immutable";
    }
}

If you're running NixOS, the equivalent module config is:

services.nginx.virtualHosts."hyperhive.darkest.space" = {
  enableACME = true;
  forceSSL = true;
  root = "${pkgs.callPackage ./website {}}";  # or nix build path
};

Theme

Catppuccin Mocha palette + the hyperhive amber from the swarm's identity hex mark. Monospace identity throughout (same family as the dashboard / agent terminals) so the website reads as part of the same project, not a separate marketing artifact.

Theme variables live in sass/main.scss (single source of truth). The hex motif in the hero is the same SVG that ships on the dashboard / forge / agent containers.