Commit 0460202
Add SEO, agent-readable surfaces and a static browse page; fix date sort
The site had no sitemap, no robots.txt, no favicon, no meta description and
no social tags, and its default sort was noise. Vercel deploys docs/ on push
to main, so the committed build output is the deployed artefact.
Discoverability:
- astro.config.mjs now sets `site`, without which canonical URLs, Open Graph
URLs and @astrojs/sitemap all silently produce nothing.
- BaseLayout emits canonical, Open Graph, Twitter card, favicon and optional
JSON-LD; every page passes a real description. Repo pages carry
SoftwareSourceCode schema, /browse/ carries an ItemList.
- Added sitemap (253 URLs), robots.txt, 1200x630 og-image, favicon set.
Agent-readable:
- /llms.txt, generated at build time from tagged_repos.json so it cannot drift
from the index. Lists every repo by category plus the JSON endpoints and the
marketplace install commands.
- robots.txt points agents at the JSON surfaces.
Navigation:
- /browse/ is a static listing of all 236 repos. The home page renders its list
client-side, so a crawler without JS saw "Loading repositories..." and found
no repo links at all. This puts them in the initial HTML.
- Hero now leads with the plugin marketplace: a CTA to the install guide and the
`/plugin marketplace add` command inline.
Accessibility:
- Skip link, visible focus rings, prefers-reduced-motion, labelled search input,
aria-live result count, aria-expanded on the nav toggle and dropdown, Escape
closes menus and restores focus, rel="noopener" on external links.
Fixes:
- The "Newest" sort was meaningless. created_date fell back to added_date, which
fell back to *today* on every build, because site_state.json history is capped
at 50 entries and older repos fall off it. 125 of 236 repos claimed they were
created 2026-08-10. Real GitHub creation dates are now fetched into
data/repo_created_dates.json by the new scripts/fetch_created_dates.py, and
added dates persist in data/repo_added_dates.json.
- 26 links on the ideas/ essay pages pointed at repo detail pages that are never
generated. All 24 target repos are gone from GitHub entirely, confirmed against
all 2444 repos on the account including private. Unlinked, prose kept.
- scripts/check_links.py now gates the build on broken internal links, since
dropping a repo from the index silently 404s every essay-page mention of it.
notes/dead-repo-mentions.md records the deleted repos and the editorial cleanup
still outstanding. CLAUDE.md documents the deploy path, the SEO surfaces, why
/browse/ must stay static, and the date persistence rule.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>1 parent 0b4ae11 commit 0460202
305 files changed
Lines changed: 3975 additions & 1775 deletions
File tree
- data
- docs
- _astro
- about
- browse
- ideas
- claude-spaces
- plugins-vs-workspaces
- remote-admin
- the-model
- workspace-spec
- workspace-templates
- non-code
- communications
- financial
- health
- legal
- productivity
- research
- plugins
- repos
- adb-ops
- agent-briefing-gateway
- agent-junction
- agent-relay
- ai-attribution
- ai-engineering
- ai-human-attribution-adder
- ai-ideation-runs
- ai-memory-planning-0426
- ai-model-research
- ai-video-producer
- air-quality-toolkit
- aliexpress-israel-skills
- aliexpress-shopper
- an-ode-to-claude
- android-media-importer
- audio-production
- background-removal
- backup-planner
- bash-alias-manager-claude
- batch-claudemd-repo-creator
- batch-optical-archivist
- browser-data-capture
- budgeting
- business-idea-eval
- buttondown-mgmt
- career
- claude-a2a-research
- claude-adhd-research-workspace
- claude-agent-picker-pattern
- claude-agent-workspace-generator
- claude-anonymisation-assistant-plugin
- claude-app-optimiser
- claude-calls-the-shots
- claude-case-file
- claude-change-my-view
- claude-code-bash-aliases
- claude-code-bugs-and-frs
- claude-code-changelog-notes
- claude-code-context-feature-requests
- claude-code-context-toolkit
- claude-code-feedback
- claude-code-hacks
- claude-code-linux-desktop-slash-commands
- claude-code-linux-notes
- claude-code-marketplace-hub
- claude-code-mcp-command-generator
- claude-code-mcp-list
- claude-code-notes
- claude-code-plugin-meta
- claude-code-plugins-marketplace
- claude-code-repo-managers-claudemd
- claude-context-analysis-0526
- claude-data-analyst
- claude-data-wrangler
- claude-deep-research-model-notes-documentation
- claude-development-agents
- claude-document-nudge
- claude-dolphin-konsole-actions
- claude-dork
- claude-file-organiser-super-slash
- claude-fleet-traffic-shaper
- claude-for-os-mgmt-research
- claude-friction-points
- claude-fx-pair-analyst-template
- claude-hopper
- claude-interview
- claude-is-awesome
- claude-israel
- claude-konsole-launcher
- claude-lan-manager-0126
- claude-linux-desktop-manager-notes-0426
- claude-local-ai-agent-research
- claude-macropad-v2
- claude-mcp-guidelines
- claude-md-chunk
- claude-md-tester
- claude-meta-dorker
- claude-meta-mcp-slash
- claude-model-identifier
- claude-open-router-model-research-plugin
- claude-os-playbook
- claude-os
- claude-pa
- claude-pipewire-skills
- claude-plugin-workspace-vault
- claude-repo-jumper
- claude-rescue-pi
- claude-rescue
- claude-rudder
- claude-skill-definer
- claude-slash-commands
- claude-spec-starter
- claude-sub-agent-network
- claude-system-recovery-mode
- claude-task-manager
- claude-transcription
- claude-user-context-pattern
- claude-user-manual
- claude-user-memory
- claude-vault-idea
- claude-vault
- claude-voice-mode-notes-300426
- claude-website-update-sender
- claude-workspace-setup-helper
- claudemd-turnstile
- contact-support
- content-writing
- context-md
- cool-claude-code-stuff
- copyq-scripting
- daniel-rosehill
- data-annotation
- data-visualisation-and-publishing
- debugging
- decision-evaluation-framework
- declaude
- declutter-genie
- desktop-manager
- dev-debugger
- dev-tools
- digital-evidence
- digital-printing
- document-as-you-go
- document-to-markdown
- donetick
- easy-effects-manager
- favorite-plugins-installers
- filesystem-organiser
- freight-vol-calculator
- geopol-sim
- get-toony
- gimp
- gist-writer
- github-explorer
- gpg-ops
- greeninvoice-ops
- habits-of-claude
- hardware-id-annotation
- hardware-spec-assembly
- home-assistant-mgmt
- home-folder-claude-md
- how-to-mcp
- hp5200-printer
- html-email-designer
- ideation-planning
- image-annotation
- image-production
- israel-agent-skills
- israel-opening-hours
- israel-phonebook-manager
- israel-shopping
- jewish-texts-reference
- jewish-utilities
- kde-claude-runner
- kde-plasma
- kde-plasmoid-dev
- keyboard-scanner
- knowledge-documentation
- label-printer
- legal-investigative
- license-populator
- linux-av-manager
- linux-debugging
- linux-desktop-claudemd-seeder
- linux-packaging
- linux-system-optimisation
- llm-council-creator
- local-claude-plugin-install-research
- local-web-capture
- loose-tasks
- mcpm-claude-code-docs
- media-assistant-ops
- media-library
- nano-tech-diagrams
- netek-disconnect
- network-cups
- new-turn-claude-hook
- nfc-ops
- no-wheel-inventions
- non-code-claude-code
- novelty-text-editor
- obs-mgmt
- opnsense-mgmt
- os-sync-agent
- panel-of-claude
- personal-planning
- pii-scanner
- pr-media-work
- private-and-public-claude-md
- programmatic-doc-generation
- proxmox-mgmt
- purchasing
- repo-mgmt
- repo-to-content
- report-analyst
- research-space
- resource-list-builder
- resume-typesetter
- rtl-email
- schedule-manager
- security-auditor
- security-checkup
- shopping
- skill-creation-research
- smart-home
- smithery-claude-code-mcp-jumpstarter
- snap-it
- social-feedback
- sop-writer
- spamhole
- spec-led-certification
- spec-starter
- split-claude-md-pattern
- stack-evaluator
- state-of-claude-context-0426
- style-switcher
- synology-mgmt
- synthetic-data
- sysadmin-homelab
- system-recovery-mode
- task-queuer
- taxonomy-creation
- teach-this-repo
- technical-docs
- test-project-ideator
- text-corpus-analysis
- text-to-speech-toolkit
- the-user-voice-types
- therapy-tracking
- unofficial-mcp-builder
- user-claude-md
- userscript-development
- video-editing
- visual-communications
- workspace-foundational
- zigbee-home-maintenance
- notes
- public
- scripts
- src
- components
- layouts
- pages
- about
- browse
- ideas
- claude-spaces
- non-code
- plugins
- repos
- styles
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
310 | 310 | | |
311 | 311 | | |
312 | 312 | | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
| 323 | + | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
313 | 363 | | |
314 | 364 | | |
315 | 365 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
| 2 | + | |
2 | 3 | | |
| 4 | + | |
| 5 | + | |
3 | 6 | | |
| 7 | + | |
4 | 8 | | |
5 | 9 | | |
6 | 10 | | |
7 | 11 | | |
| 12 | + | |
8 | 13 | | |
0 commit comments