The source of https://vortexfps.org. Static HTML with no build step: what is in
site/ is exactly what gets served.
site/ the web root — Caddy's `root` points here, nothing above it is served
index.html the whole page, including the inlined emblem and wordmark
favicon.svg
assets/ the same marks as standalone files, plus the link-preview card
deploy/ how the server pulls this repo (see below)
The emblem and the wordmark come from the Brand Studio in the private VortexBranding
repo, generated from tools/rebrand/spec/brand.json by that repo's own generators. The
emblem in site/assets/vortex-emblem.svg is byte-identical to the one VortexLauncher
ships, which is the point: the site cannot drift from the mark on the products.
Do not hand-edit the SVG paths. To change a mark, change it in the Brand Studio,
re-export the spec, regenerate, and copy the result here. The current mark is the 5-blade
lune model with a radial #1d9bf1 → #1875af fill, drop shadow and gloss sheen, and no
backdrop plate.
The 4-blade flat-#019EF2 mark is a pinned legacy preset ("Reference — Quad Vortex"), not
the current brand. If you see it on a Vortex surface, that surface is out of date.
A push to main is live on vortexfps.org within about a minute. Nothing is pushed to the
server: the server pulls.
The host that serves vortexfps.org keeps a checkout at /srv/www/vortexfps-repo owned by
an unprivileged vortexweb user. A systemd timer runs deploy/deploy.sh
every minute, which fetches origin/main and, only when the SHA has moved, does a
git reset --hard. A fetch with nothing new writes nothing.
There is no webhook and no inbound port for deploys, which is deliberate: that host also runs game servers on its own public IP, and a pull loop adds no internet-reachable surface and stores no credentials.
sudo install -m 0755 deploy/deploy.sh /usr/local/bin/vortex-website-deploy
sudo install -m 0644 deploy/vortex-website-deploy.{service,timer} /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable --now vortex-website-deploy.timerWatch a deploy land:
journalctl -u vortex-website-deploy.service -fPush access to this repo is write access to the website. The deploy does a hard reset
onto whatever origin/main points at, with no review step in between. Branch protection on
main is the control that matters; the server has no opinion.
The checkout is a deploy artifact, not a workspace. deploy.sh refuses to run if the
working tree at /srv/www/vortexfps-repo is dirty, rather than destroying a local edit. If
you see that error, someone edited the live site by hand — find out what they changed before
discarding it.
The code in this repo is free to read. The Vortex Arena name, emblem and wordmark are not covered by any open licence and remain the project's marks.