Download SymbolKit: Pages, Source and Generator
Two archives: the complete generated website, and the source with the generator that builds it. Both are plain files, no account needed.
The source archive includes the setup guide, the data schema and a scaffolding script that creates a new symbol page from a single JSON file.
No symbol on this page matches that search. Try a shorter word.
Download
What is in the source archive
| Path | What it does |
|---|---|
| scripts/build.mjs | Reads the data files and writes the whole site to dist/ |
| scripts/new-page.mjs | Scaffolds a new symbol page from a short spec or an interactive prompt |
| scripts/generators/*.mjs | Programmatic page generators: Roman numerals, currencies, superscript characters |
| scripts/lib/render.mjs | The HTML template: head tags, JSON-LD, copy grids, tables, FAQ |
| data/*.json | One file per symbol page. This is where the content lives |
| docs/SETUP.md | Install, build, run and deploy instructions |
| docs/ADD-A-PAGE.md | How to add a new symbol page, with a worked example |
| docs/DATA-SCHEMA.md | Every field a page data file can contain |
Running it locally
You need Node 18 or newer and nothing else. There are no dependencies to install.
Unzip the source archive, then run the build and serve the output:
- node scripts/build.mjs
- npx serve dist (or: python3 -m http.server -d dist 8080)
- Open http://localhost:8080
Adding a page
Run node scripts/new-page.mjs and answer the prompts, or pass a small JSON spec on the command line. The script writes data/<slug>.json with the right shape, a starter set of groups and placeholder sections for you to fill in.
Rebuild and the new page appears in the navigation, the footer, the sitemap and the related links on other pages automatically.
Deploying it
The archive includes a Dockerfile that builds the site and serves it with busybox httpd on port 8080. Any static host works just as well: upload the contents of dist/ and you are done.
Set SITE_URL before building so canonical tags and the sitemap point at your own domain.