Zero Day Document Control

A file-naming convention and a small set of single-file HTML tools for managing project deliverables. Self-contained, offline-capable, dependency-free.

What is it?

ZDDC is a convention, not a platform. Every deliverable's filename encodes its tracking number, revision, status, and title; every transmittal folder is date-prefixed and self-describing. A plain shared folder becomes a fully searchable, auditable information-management system — no server, no database, no software required to read the archive.

The four tools below are optional interfaces around this structure. Each is a single self-contained HTML file that works two ways: open it locally and point it at a folder on your disk, or put it behind any web server (including the optional zddc-server described below) and use it over the network. Same on-disk layout either way.

Read the full specification →

Try the tools

Each tool is published in three channels. Stable is versioned and immutable; beta and alpha are mutable previews of in-flight work.

Archive Browser
Browse, search, and filter your project folder. Group by transmittal; filter by tracking number, revision, status, or free text. Export selections as ZIP.
Transmittal Creator
Fill in metadata, drag in files, publish a self-contained HTML transmittal record with SHA-256 checksums. Optional digital signatures. The published file is the transmittal record.
Document Classifier
Spreadsheet-like interface for bulk-renaming files into ZDDC format. Copy/paste with Excel. Point it at a folder, fill in the columns, save all at once.
Markdown Editor
Browser-based markdown editor with live preview, YAML front matter, and table of contents. Direct local file access via the File System Access API.

Append ?v=alpha (or ?v=0.0.4, etc.) to any URL to switch versions for a single request — useful for sharing a link to an exact build. Direct local-folder access requires a Chromium-based browser (the File System Access API is unavailable in Firefox / Safari). Browse all versions →

zddc-server (optional)

The tools work two ways over the same on-disk archive. Pick whichever fits your team:

Local directory mode

Open a tool, click Add Directory, point it at a folder. The tool reads files via the File System Access API. No upload, no server, no account.

Enough for individual users and small teams on a shared drive (network share, Dropbox, OneDrive, syncthing).

Online mode

Take the same local directory and put it behind any web server (nginx, Caddy, Apache, or zddc-server). The Archive Browser tool talks to the server's directory listings instead of the local filesystem — read-only, works in any browser.

zddc-server is a small Go binary purpose-built to serve ZDDC archives. Any web server gives you online mode; zddc-server adds things a generic web server can't:

The on-disk layout is the same in both modes. Stop the server and the directory is still a perfectly valid ZDDC archive that opens in local-directory mode. The server is convenience, not lock-in.

Source, environment-variable contract, container image, and ACL syntax: codeberg.org/VARASYS/ZDDC zddc/ · pre-built image at codeberg.org/varasys/zddc-server (channel-tagged :stable, :beta, :alpha).

Install on your server

Each option below is a short shell snippet. cd into your deployment directory, copy-paste one of the four blocks into your terminal, and the files land in CWD. All four use curl; nothing else to install.

Self-contained install

Use when: you want a deployment that does not depend on zddc.varasys.io after install. Downloads the five current-stable tool HTMLs (~1.8 MB total) plus a _template/ directory with level-1 stubs to copy into project subdirectories. Re-run to update.

set -eu
B=https://zddc.varasys.io
for t in archive transmittal classifier mdedit; do
  curl -fsSL "$B/releases/${t}_stable.html" -o "${t}.html"
done
curl -fsSL "$B/releases/landing_stable.html" -o index.html
mkdir -p _template
for t in archive transmittal classifier mdedit; do
  curl -fsSL "$B/bootstrap/level1/${t}.html" -o "_template/${t}.html"
done

Track stable channel

Use when: you want auto-updates whenever stable advances. Installs five tiny stubs (~10 KB total) that fetch zddc.varasys.io on every page load — visitors need network access. Switch channels later by re-running with track-beta or track-alpha.

set -eu
B=https://zddc.varasys.io/bootstrap/track-stable
for f in archive transmittal classifier mdedit index; do
  curl -fsSL "$B/${f}.html" -o "${f}.html"
done

Track beta channel

Use when: you want to soak the next release before it goes stable. Same shape as the stable tracker, fetching the beta channel. Beta is overwritten in place; expect occasional updates.

set -eu
B=https://zddc.varasys.io/bootstrap/track-beta
for f in archive transmittal classifier mdedit index; do
  curl -fsSL "$B/${f}.html" -o "${f}.html"
done

Track alpha channel

Use when: you want bleeding-edge work. Alpha is rebuilt without notice, sometimes daily, and may break — fine for a personal sandbox or to verify a fix you're tracking, not for shared deployments.

set -eu
B=https://zddc.varasys.io/bootstrap/track-alpha
for f in archive transmittal classifier mdedit index; do
  curl -fsSL "$B/${f}.html" -o "${f}.html"
done

See bootstrap/README.md for the level-1 / level-2 model, the per-project / per-tool override pattern, and the audit grep that lets you see what every project on a deployment is pointing at.

Learn more