Files
zeekayandHanzo Dev 0d70ce83e9 feat(oss): per-app pages, a README badge, and a door to submit an app
The gallery could only search and deploy: a card had no way in, so the only way
to learn what an app actually was meant leaving for GitHub. Cards now open
#app=<id> — a real URL, so a specific app can be linked, shared and reloaded,
and Back closes it because the hash is the single source of truth for what is
open.

The panel answers what a tile cannot: which containers a deploy starts and
which images they pull, read from the blueprint's own docker-compose.yml rather
than restated from the catalog row. Verified against the real corpus — 400 of
400 blueprints parse, 812 services, none silently empty. A blueprint without
compose simply omits the section instead of implying nothing runs.

Two things the catalog needed and had nowhere to put:
  - "Add it to your repo" — the markdown badge a maintainer pastes into their
    README so their own users can deploy in one click. badge.svg ships here so
    the snippet is not a dead link, and it carries no external font because
    READMEs render where remote CSS is blocked.
  - "Suggest an app" — submitting was previously undocumented; it is now a
    prefilled issue from the catalog itself and from the footer.

Native <dialog>, so focus trapping, Esc and inertness are the platform's job.
Still no framework, still no innerHTML: the panel is built with the DOM API, so
a hostile description cannot inject.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-26 19:14:41 -07:00

735 B