This is the repository of the pdoom.org website. It is a fork of distillpub/template.
First, run npm install to install all node modules required. If that fails, try npm install --legacy-peer-deps. Then, run npm run dev to start a watching build rollup server on localhost:8088.
Edit pages directly in public/. The only files generated by the rollup build are template.v2.js and transforms.v2.js; everything else under public/ is hand-edited, except the crowd-cast docs under public/docs/crowd-cast/, which are generated from the Astro project in docs/ (see Documentation below).
Please note that blog.html is not automatic yet, so if you add a new blog post, you need to manually add it there.
The crowd-cast docs served at /docs/crowd-cast/ are generated from the Astro/Starlight project in docs/. Edit the Markdown/MDX source under docs/src/content/docs/, never the built HTML in public/docs/crowd-cast/ (it is overwritten on every build).
- Edit with live reload:
cd docs && npm install && npm run dev, then open the printedhttp://localhost:4321/docs/crowd-cast/URL. Source edits hot-reload, no rebuild needed. - Rebuild the static output:
cd docs && npm run build(runsastro build, writing topublic/docs/crowd-cast/). This is what the mainnpm run devserver onlocalhost:8088serves and what gets deployed, so run it after editing the docs and before committing or pushing.
Deployment is automated via GitHub Actions. Pushing to main triggers .github/workflows/deploy-pages.yml, which ships public/ to GitHub Pages.
git push origin main
The repo's Pages source must be set to GitHub Actions under Settings → Pages.
To give feedback, report a bug, or request a feature, please open an issue.
To contribute a change, check out the contributing guide.
This project is research code. It is not an official product of p(doom) or any other institution supporting p(doom).
Copyright 2026 p(doom).
Licensed under the Apache License, Version 2.0
See the full license.