Skip to content

feat: org site with project overview, llms.txt and shortlinks - #1

Merged
rdmueller merged 4 commits into
mainfrom
feat/site
Oct 4, 2026
Merged

rdmueller merged 4 commits into
mainfrom
feat/site

Conversation

@raifdmueller

Copy link
Copy Markdown

What

Static org website for https://llm-coding.github.io/, generated by generate.py from the GitHub API.

  • index.html: all LLM-Coding repos with GitHub Pages (not archived, without this repo), each with icon, description and link. Readable without JavaScript.
    • The icon comes from the site itself: the largest apple-touch-icon, then rel=icon, then /favicon.ico. It is copied into icons/ at build time.
    • Several sites share the same icon (the docToolchain default on arc42-generator, brownfield-experiment and mistral-vibe), so those icons are dropped and a generated initial is shown instead.
    • Empty repo descriptions are filled from descriptions.yaml. The GitHub description wins as soon as one is set.
    • The URL comes from the Pages API, so custom domains work (ultrathink.club).
  • llms.txt: the same list as plain text, plus the shortlinks.
  • Shortlinks: each key in links.yaml becomes /<key>/index.html, with a meta refresh, a canonical link and a visible link. sl.html lists them all in a table. The first entry is f → fahrrad-reparatur-architektur. Keys are validated: format, reserved names, collisions with repo page paths, and http(s) targets only.
  • Design: plain CSS with light/dark mode, responsive down to 360 px. Version and build date are in the footer (VERSION, now 0.1.0).
  • Workflow pages.yml: tests and a build run on PRs. On push to main, daily at 04:17 UTC and manually, it builds and deploys via actions/deploy-pages.

Verification

  • 15 pytest tests (network-free)
  • Built locally from the live API and checked with Playwright: index (1280 light, 360 dark, no horizontal overflow), sl.html, and /f/, which forwards to the Fahrrad site.

After merge

Pages source must be "GitHub Actions" (see the comment in the PR).

🤖 Generated with Claude Code

rdmueller and others added 4 commits October 4, 2026 10:31
Static org site built from the GitHub API: index.html lists all
LLM-Coding repos with GitHub Pages (icon, description, link), llms.txt
mirrors the list, links.yaml becomes /<key>/ redirect pages plus the
sl.html overview. A workflow rebuilds daily and on push and deploys
to Pages. First shortlink: f -> fahrrad-reparatur-architektur.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Review findings on PR #1:
- hotlink SVG icons instead of serving foreign SVGs from our origin
- fetch only http(s) URLs; ignore non-http(s) repo homepages
- check shortlink keys against all repo names, archived included
- bump actions to current majors, pin pyyaml/pytest in requirements.txt
- note that GitHub pauses the daily schedule after 60 idle days

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
overrides.yaml replaces descriptions.yaml: name and description per
repo, both winning over the GitHub values so the daily rebuild keeps
them. mistral-vibe now shows as "Mistral Vibe Doku" with a description
of the documentation site.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Forks are skipped automatically unless overrides.yaml sets include: true
(mistral-vibe keeps its documentation site listed); exclude: true hides
a repo for good. Removes arc42-generator (fork) and brownfield-experiment
from the overview and llms.txt.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@rdmueller
rdmueller merged commit 37b4e19 into main Oct 4, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants