Landing page of portuus.de with service overview and live status https://portuus.de
  • Astro 30.8%
  • Nix 30.6%
  • CSS 20%
  • TypeScript 17.9%
  • JavaScript 0.7%
Find a file
steffen a3111f6b70
All checks were successful
CI / flake-check (push) Successful in 12s
CI / build (push) Successful in 4s
add TTT2 game server tile
2026-10-31 13:02:48 +01:00
.forgejo initial commit 2026-10-31 10:20:03 +01:00
nix status module: validate ids, allow empty checks, extra hardening, no symlinks 2026-10-31 11:44:19 +01:00
public initial commit 2026-10-31 10:20:03 +01:00
src add TTT2 game server tile 2026-10-31 13:02:48 +01:00
.envrc initial commit 2026-10-31 10:20:03 +01:00
.gitignore initial commit 2026-10-31 10:20:03 +01:00
astro.config.mjs initial commit 2026-10-31 10:20:03 +01:00
flake.lock initial commit 2026-10-31 10:20:03 +01:00
flake.nix initial commit 2026-10-31 10:20:03 +01:00
package-lock.json initial commit 2026-10-31 10:20:03 +01:00
package.json initial commit 2026-10-31 10:20:03 +01:00
README.md initial commit 2026-10-31 10:20:03 +01:00

portuus-website

Landing page of portuus.de, built with Astro.

Development

nix develop
npm install
npm run dev

Services, projects and game servers live in src/data/services.ts, contact details in src/data/contact.ts.

Status

The NixOS module nixosModules.status checks systemd units or URLs every minute and serves the result as /status.json. The page loads it and shows an Online/Offline badge per card. Check ids must match the id fields in src/data/services.ts.

Build

nix build

After changing dependencies, update npmDepsHash in nix/package.nix:

nix run nixpkgs#prefetch-npm-deps -- package-lock.json

The site is deployed by the portuus NixOS config via the portuus-website flake input.