Public facing website for work & contact routes.
Find a file
2026-05-22 22:38:07 +01:00
assets Add Projects section, foo_gifart animated demo, mobile rack layout 2026-05-22 22:18:46 +01:00
.gitignore Add public repo README and ignore local snapshots 2026-05-22 22:38:07 +01:00
index.html Add Projects section, foo_gifart animated demo, mobile rack layout 2026-05-22 22:18:46 +01:00
README.md Add public repo README and ignore local snapshots 2026-05-22 22:38:07 +01:00

nocfa.net

Source for nocfa.net.

This is my public homepage: signal links, a small status/about section, the live homelab rack, and a short list of projects I am happy to point people at.

It is deliberately simple. No framework, no package manager, no build step. The site is one HTML file and a few assets, because that is enough.

Layout

  • index.html - the whole site: markup, CSS, and JavaScript.
  • assets/fonts/ - self-hosted Commit Mono files.
  • assets/projects/ - screenshots and preview images for the project cards.
  • assets/og-image.png - social preview image.

Local preview

python3 -m http.server 8080

Then open http://127.0.0.1:8080.

The Machines page reads /homelab-status.json. That file is generated outside this repo and is intentionally ignored here, so a local preview will show the offline state unless you drop in a temporary copy.

The music widget calls a public Last.fm proxy. The Last.fm API key is not in this repo.

Publishing notes

Forgejo is the source of truth for this repo:

git remote -v

GitHub and Codeberg can mirror it later, but they should not be treated as the working remote.

Keep the repo public-safe:

  • no .env files
  • no editor project state
  • no generated homelab status snapshots
  • no private machine paths or deploy scripts
  • no API keys, tokens, webhook URLs, or secrets

If the site needs private plumbing, it belongs in the homelab repo or a private worker repo, not here.