feat: rename to paperspec and add the website

- Rename manuspec to paperspec everywhere outside pixi.toml: prose, the
  tools, provenance tool names and the fixture key derivations, so every
  fixture and vector is rebuilt.
- Move the namespace addresses under the site, mirroring the repository:
  schema $id https://paperspec.scient.ing/schemas/<file>, the JSON-LD
  context https://paperspec.scient.ing/context/scienting-1.jsonld, and
  term IRIs https://paperspec.scient.ing/vocab#<term>. Format
  identifiers (scienting-*) and URNs (urn:scienting:) are unchanged.
- tools/site.py (standard library only) builds _site/: every file of the
  repository at its own path, each Markdown file rendered as a page with
  sidebar navigation, heading anchors matching the forge's, folder
  listings, a vocabulary page for the context's IRIs, a heading search
  and a 404 page; light and dark themes.
- check.py builds the site and checks that every Markdown file has a
  page, every internal link and fragment resolves, no Markdown is left
  unrendered, and every $id, the context address and the vocabulary IRIs
  are files of the site.
- deploy/: a Caddyfile with the media types and CORS the data needs, and
  a guide; .gitea/workflows/site.yml builds on main and publishes with
  rsync when the SITE_* secrets are set.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
alexmandClaude committed 2026-10-14 21:27:21 -04:00
1 parent ea0a7efa78
commit 76d76353d9
213 files changed
+1233 -386

No files matched your search

@@ -1 +1 @@
{"doc":"scienting-doc/1","files":[{"path":"document.json","sha256":"e2188bfff9eded02b17ddc4f90ffb56c3f8fc5f1be2d38a03d7ae1c85cb39128","size":935},{"path":"locations.jsonl","sha256":"ce16ce5996a9e9fe9f1024ebc9d8cda5328c041ae214b3c626da10472ae3de10","size":1161},{"path":"nodes.jsonl","sha256":"0fccd6492121fb91ebd1d32487e23ca5b30ad92627e7d3a0801d77549e1a2f94","size":8669},{"path":"pages.jsonl","sha256":"d356f4a78bd2427e750943648c9d37977ac0144ff85bedc013b60d934b1501cf","size":170},{"path":"provenance.json","sha256":"b1af404b3a07d4b102f0a45237285315dc1ff60f243636c22aef3e1c20b46912","size":224},{"path":"references.jsonl","sha256":"e7ddfb86d4a079d8a8ad51fc16f1933ef64f5d6ac4244959efa9d06419f1d7d7","size":332},{"path":"witnesses.json","sha256":"7bb40440b8b04d5193600f04ba6452cb4062046652f0f924d60d6b0c5aa86876","size":1901}],"format":"scienting-package/1","key":"okafor2025open"}
{"doc":"scienting-doc/1","files":[{"path":"document.json","sha256":"e2188bfff9eded02b17ddc4f90ffb56c3f8fc5f1be2d38a03d7ae1c85cb39128","size":935},{"path":"locations.jsonl","sha256":"ce16ce5996a9e9fe9f1024ebc9d8cda5328c041ae214b3c626da10472ae3de10","size":1161},{"path":"nodes.jsonl","sha256":"0fccd6492121fb91ebd1d32487e23ca5b30ad92627e7d3a0801d77549e1a2f94","size":8669},{"path":"pages.jsonl","sha256":"d356f4a78bd2427e750943648c9d37977ac0144ff85bedc013b60d934b1501cf","size":170},{"path":"provenance.json","sha256":"4bc7649bf6d3113f6c72b4016713654f57c8f03069632eabd1e6025c05cb9dac","size":226},{"path":"references.jsonl","sha256":"e7ddfb86d4a079d8a8ad51fc16f1933ef64f5d6ac4244959efa9d06419f1d7d7","size":332},{"path":"witnesses.json","sha256":"7bb40440b8b04d5193600f04ba6452cb4062046652f0f924d60d6b0c5aa86876","size":1901}],"format":"scienting-package/1","key":"okafor2025open"}