- JavaScript 76%
- HTML 12.7%
- CSS 8.7%
- Dockerfile 2.6%
| css | ||
| js | ||
| scripts | ||
| src | ||
| test | ||
| .dockerignore | ||
| .gitignore | ||
| AGENTS.md | ||
| apple-touch-icon.png | ||
| Caddyfile | ||
| CNAME | ||
| Dockerfile | ||
| favicon-32.png | ||
| favicon.ico | ||
| favicon.svg | ||
| index.html | ||
| package-lock.json | ||
| package.json | ||
| pinterest-41d5c.html | ||
| README.md | ||
| robots.txt | ||
| site.webmanifest | ||
| sitemap.xml | ||
lindner.earth
Julian Lindner's personal site: https://www.lindner.earth/
The repository retains its xq0.net name for historical reasons. The canonical
host is lindner.earth.
The site is served from oddie-apps/static-sites, not from this repository.
It was consolidated there on 2026-07-12. The k8s/ manifests and the
.forgejo/workflows/docker.yaml push-to-deploy pipeline that described the
superseded deployment were removed on 2026-08-26; Dockerfile and Caddyfile
remain and nothing builds them. Every runtime file here is byte-identical to the
deployed copy as of 2026-08-26, but nothing keeps them that way. Read the note at
the top of AGENTS.md before building or copying anything out of here.
Development
The readable application source is src/xq.js. Browsers load the generated,
obfuscated js/xq.js; commit both whenever the source changes.
npm ci
npm run build
npm test
npm run build uses a pinned javascript-obfuscator version and fixed seed, so
the same source produces the same bundle. npm run check exits non-zero when
the committed bundle is stale. The Docker build runs the complete static test
suite before copying an explicit runtime asset allowlist into the final image;
src/, build scripts, tests, and dependencies are never served.