- HTML 80.7%
- JavaScript 14.8%
- CSS 4.5%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
|
||
| .forgejo/workflows | ||
| css | ||
| img | ||
| js | ||
| next | ||
| spec | ||
| .gitignore | ||
| CLAUDE.md | ||
| index.html | ||
| LICENSE | ||
| pubkey.pem | ||
| README.md | ||
| reference.html | ||
| workflow.html | ||
ZDDC website
Hand-edited content for zddc.varasys.io. Two files:
index.html— landing page + install snippets.reference.html— the ZDDC file-naming convention specification.
Plus css/, js/, img/ for shared styles and assets.
This repo intentionally does not contain release artifacts. The
ZDDC tools (archive, browse, landing) and the zddc-server
binary are built from the source repo at
https://codeberg.org/VARASYS/ZDDC and published by its release
pipeline as a separate image (sites/zddc-releases) that the origin
serves as /releases/ — never in this repo's git history.
Preview locally
git clone https://codeberg.org/VARASYS/ZDDC-website
cd ZDDC-website
python3 -m http.server 8000
# open http://localhost:8000/
The preview won't have a /releases/ directory unless you also have
the source repo and run its build pipeline. That's expected — the
two repos are intentionally decoupled.
Publishing
.forgejo/workflows/image.yml runs on every push to main (and on
manual dispatch). It stages a copy of the repo, drops /.git*,
/.forgejo*, /ci, /README.md, /LICENSE, and /releases/, refuses
to continue if index.html is missing, and builds the rest into a
FROM-scratch OCI content image — so anything else added at the repo
root will be published. The image is pushed to the registry as
sites/zddc:<date>-<short-sha> and :latest, then the origin host is
told to pull it (refresh-site zddc, over a key the origin pins to that
one command) and serves it at /var/www/zddc/. While the
DEPLOY_ORIGIN/DEPLOY_COMMAND variables are unset the refresh is
skipped with a log line and the origin keeps serving its previous copy.
/releases/ is a separate image owned by the ZDDC source repo's
pipeline, mounted beside this one.
Configuration lives in repository/org variables and secrets, not in the
workflow: variables REGISTRY, IMAGE_REPO, SITE_NAME,
REGISTRY_USER, DEPLOY_ORIGIN, DEPLOY_COMMAND; secrets
REGISTRY_TOKEN, STATIC_DEPLOY_KEY.
Editing notes
js/layout.jsqueries the header for.header-nav,.dropdown,.dropdown-toggle,.dropdown-menu, and.theme-toggle. Both HTML pages need to keep those classes or the theme toggle and Tools dropdown silently break.- Page-specific CSS goes in an inline
<style>in<head>(seeindex.html); only shared rules go incss/style.css. Design tokens (--color-accent, spacing scale, etc.) live at the top ofcss/style.css— prefer those over hardcoded values.
Contributing
Issues + PRs welcome. For changes to the tool source code (not the website), file them at https://codeberg.org/VARASYS/ZDDC.