Choose generated initials background colors by stable link ID instead of group, retaining title-derived initials and the existing high-contrast palette.
Replace the README screenshot with a compact 850 × 635 light-theme capture showing eight real service logos and two initials fallbacks.
Add regression coverage for variation within groups and color stability through title/group changes, plus a patch changeset.
Screenshot assets
The capture configuration and real logo assets remain local in the existing ignored apps/web/config/ and apps/web/public/demo/ directories, as intended. Only the final screenshot is tracked; docs/directory.example.yaml is unchanged.
Production build and bootstrap TypeScript compilation passed.
Svelte check: zero errors or warnings.
Formatting, lint, and diff checks passed for changed source files; changeset formatting passed.
Inspected the final screenshot; all eight logos and two initials loaded, search was enabled, and no browser page errors occurred.
## Summary
- Remove the unused root `demo/` directory.
- Choose generated initials background colors by stable link ID instead of group, retaining title-derived initials and the existing high-contrast palette.
- Replace the README screenshot with a compact 850 × 635 light-theme capture showing eight real service logos and two initials fallbacks.
- Add regression coverage for variation within groups and color stability through title/group changes, plus a patch changeset.
## Screenshot assets
The capture configuration and real logo assets remain local in the existing ignored `apps/web/config/` and `apps/web/public/demo/` directories, as intended. Only the final screenshot is tracked; `docs/directory.example.yaml` is unchanged.
## Validation
- 474 web unit tests passed.
- 14 focused browser tests passed (generated logos, image fallback, and configured images).
- Production build and bootstrap TypeScript compilation passed.
- Svelte check: zero errors or warnings.
- Formatting, lint, and diff checks passed for changed source files; changeset formatting passed.
- Inspected the final screenshot; all eight logos and two initials loaded, search was enabled, and no browser page errors occurred.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
demo/directory.Screenshot assets
The capture configuration and real logo assets remain local in the existing ignored
apps/web/config/andapps/web/public/demo/directories, as intended. Only the final screenshot is tracked;docs/directory.example.yamlis unchanged.Validation