furtka/website/README.md
Daniel Maksymilian Syrnicki defd2eda06
Some checks failed
CI / lint (push) Successful in 24s
CI / test (push) Successful in 32s
CI / validate-json (push) Successful in 23s
CI / markdown-links (push) Failing after 2s
feat: publish public website at furtka.org
Hugo static site with an intentionally minimal single-page copy — English
default, German under /de/ — while the project stays pre-alpha. No CMS, no
external theme, no webfonts, no external requests. System-UI sans on a
paper-white / near-black palette with a deep crimson accent; a small
wicket-gate SVG as the sole brand mark.

Hosting: nginx on forge-runner-01 serves /var/www/furtka.org; the upstream
openresty proxy terminates TLS so the VM itself only speaks plain HTTP.
Deploy is ./website/deploy.sh (rsync + remote hugo --minify). One-time VM
bootstrap in ops/nginx/setup-vm.sh.
2026-04-14 10:27:51 +02:00

1.8 KiB

website/ — furtka.org

Hugo source for furtka.org. Intentionally minimal while the project is pre-alpha: a single idea page in English and German, nothing more. More pages will come back when there's something real to show.

Local build

cd website
hugo server        # http://localhost:1313

Requires Hugo extended ≥ 0.140.

Deploy

Hosted on forge-runner-01 (Proxmox VM, Ubuntu 24.04). Hugo runs on the VM; nginx serves the built output from /var/www/furtka.org. TLS is terminated by an upstream openresty reverse proxy — the VM itself only speaks plain HTTP.

First time only, on the VM:

ssh forge-runner
sudo /srv/furtka-site/ops/nginx/setup-vm.sh   # or copy the script over first

From then on, deploy from your dev machine:

./website/deploy.sh

The script rsyncs website/ to /srv/furtka-site/ on the VM and runs hugo --minify into /var/www/furtka.org.

Structure

hugo.toml            Hugo config (multilingual: en default, de)
content/             Markdown pages
  _index.md          Home (EN)
  _index.de.md       Home (DE)
layouts/             Custom inline theme — no external theme or framework
  _default/          baseof, single, list
  partials/          head, header, footer, gate SVG, lang switcher
  index.html         Home-only layout with editorial hero
assets/css/main.css  Stylesheet (fingerprinted + minified on build)
static/favicon.svg   Gate mark in crimson
deploy.sh            Rsync + remote Hugo build

Design

Modern-minimal on paper-white light / near-black dark. System-UI sans (no webfonts — zero external requests, matches the self-hosting ethos). Deep crimson accent, prefers-color-scheme switch.

The gate SVG is the one brand mark — a small wicket-gate glyph repeated in the header, footer, and favicon.