Live site: https://tom-doerr.github.io/repo_posts/
- Feed (Atom): https://tom-doerr.github.io/repo_posts/feed.xml
 - Status: Built via GitHub Pages (workflow in 
.github/workflows/Deploy Jekyll site). 
- On push to 
mainthat changesdocs/_posts/**: the “Generate Related Data” workflow runs a quick owner-based related pass and rebuildsdocs/assets/search-index.json. - Every 30 minutes (schedule): the same workflow loads/stores embeddings (
docs/_data/embeddings.npz), computes only missing neighbors, updatesdocs/_data/related.json, and writesdocs/_data/status.json. - After each run: the README coverage line between the markers below is updated, and the live Status page (
/status.html) shows current counts and sizes. 
A Jekyll site stored under docs/ using the Minimal theme. Posts live in docs/_posts/ and screenshots in docs/assets/.
- Layout override: 
docs/_layouts/default.html(adds per‑post image and a link back to the index; auto dark mode). - Homepage: 
docs/index.md(lists posts, adds anchors, lazy images, and an RSS link). - Issue template: 
.github/ISSUE_TEMPLATE/bug_report.yml. 
We don't accept repository suggestions via Issues/PRs. The site is curated automatically. Please use issues only for site bugs and improvements.
- Trigger: push to 
mainbuildsdocs/and deploys to Pages. - Workflow: 
.github/workflows/Deploy Jekyll site(standard Pages Jekyll build). - Optional CI: image compression runs on PRs that touch 
docs/assets/**. 
repo_posts/
  docs/
    _posts/      # content
    assets/      # images
    _layouts/    # layout override
    index.md     # homepage
  .github/
    ISSUE_TEMPLATE/
    workflows/
MIT for code/config — see LICENSE.
Content licensing — see CONTENT-LICENSE.md. Screenshots in docs/assets/ and third‑party text in docs/_posts/ remain the property of their respective owners; no license is granted for those assets.
Related coverage: pending…
Liquid math is integer by default. If you compute a percentage like:
{{ s.related_renderable | times: 100 | divided_by: s.posts }}%
it truncates to an integer. To get a decimal percentage, make one operand a float:
{{ s.related_renderable | times: 100.0 | divided_by: s.posts | round: 1 }}%
or:
{{ s.related_renderable | times: 1.0 | divided_by: s.posts | times: 100 | round: 1 }}%