prometheus/service
Local Dev 8e0830f046 prometheus: SVG icons for the 8 categories
Replaces the emoji glyphs (💬🛡️💸🎮🧰🎧⚙️✨) in the category grid with
dedicated SVG icons under /static/icons/cat-<slug>.svg, following the
same visual family as the sibling .x marks (theseus, sirius, ariadne,
pithos, aegis): 12-radius dark square + acid-green mark, legible at
16 px tab-icon size and 40 px grid size.

Designs chosen to not blur with the Silent Mode product icons also
rendered on the site:
  cat-communication  speech bubble + three dots (not an envelope — too
                     close to the Hephaestus letter imagery elsewhere)
  cat-privacy        shield + checkmark (DISTINCT from aegis.svg's
                     shield+chevron, so category + listing don't collide)
  cat-wallets        stacked coins + B serif (hints at the BCH coin)
  cat-games          stylised controller (d-pad + two action buttons)
  cat-devtools       code brackets < / > (reads as "code" at 16 px
                     where a wrench/hammer blurs with the Utilities gear)
  cat-media          play triangle in a circle (equally "player" and
                     "publish/broadcast")
  cat-utilities      gear with hollow centre (less visual weight than
                     the Media circle; the two side-by-side don't
                     crowd each other)
  cat-other          sparkle burst + two smaller sparkles (sibling of
                     sirius.svg's 4-point mark, extras so the two don't
                     look identical)

pages-browse.js: CATEGORIES[].icon is now the path to the SVG, not an
emoji string. The three places the icon rendered — grid card, category
hero, and the inline chip on listing detail — all now use <img> at the
size they need (40, 56, 14 respectively). The CSS entry
`.cat .ico` loses the font-size + grayscale (text styling) and gains
width/height for the image plus a tiny hover rotation that matches the
existing lift transform.

Also: when a listing has no `icon` of its own, the detail page's icon
slot now falls back to the category's SVG (centered + padded) instead
of a plain 📦 emoji, so the detail hero always has a vector icon.
2026-10-22 21:30:13 +03:00
..
lib prometheus: signed listings — BIP-137 publisher sign, SQLite index 2026-10-08 01:48:12 +02:00
admin-pages.js prometheus: BCH payments — invoices, price oracle, admin reconcile 2026-10-08 21:52:01 +02:00
admin-session.js prometheus: admin panel — login, listings, 3-mode toggle, audit log 2026-10-08 21:35:48 +02:00
admin.js prometheus: BCH payments — invoices, price oracle, admin reconcile 2026-10-08 21:52:01 +02:00
audit.js prometheus: admin panel — login, listings, 3-mode toggle, audit log 2026-10-08 21:35:48 +02:00
bns.js prometheus: signed listings — BIP-137 publisher sign, SQLite index 2026-10-08 01:48:12 +02:00
clamd.js prometheus: VirusTotal enrichment, gated on VIRUSTOTAL_API_KEY 2026-10-08 21:44:34 +02:00
db.js prometheus: BCH payments — invoices, price oracle, admin reconcile 2026-10-08 21:52:01 +02:00
invoice-api.js prometheus: BCH payments — invoices, price oracle, admin reconcile 2026-10-08 21:52:01 +02:00
layout.js prometheus: standalone identity + first-wave Silent Mode listings 2026-10-09 01:23:21 +02:00
listings.js prometheus: BCH payments — invoices, price oracle, admin reconcile 2026-10-08 21:52:01 +02:00
modes.js prometheus: admin panel — login, listings, 3-mode toggle, audit log 2026-10-08 21:35:48 +02:00
pages-browse.js prometheus: SVG icons for the 8 categories 2026-10-22 21:30:13 +03:00
pages.js prometheus: standalone identity + first-wave Silent Mode listings 2026-10-09 01:23:21 +02:00
payments.js prometheus: BCH payments — invoices, price oracle, admin reconcile 2026-10-08 21:52:01 +02:00
price.js prometheus: BCH payments — invoices, price oracle, admin reconcile 2026-10-08 21:52:01 +02:00
seo.js prometheus: weekly s3 snapshot of the browse surface to bns/prometheus 2026-10-08 21:42:54 +02:00
server.js prometheus: BCH payments — invoices, price oracle, admin reconcile 2026-10-08 21:52:01 +02:00
signing.js prometheus: upload + ClamAV scan + signed scan reports 2026-10-05 22:41:55 +02:00
uploads.js prometheus: VirusTotal enrichment, gated on VIRUSTOTAL_API_KEY 2026-10-08 21:44:34 +02:00
virustotal.js prometheus: VirusTotal enrichment, gated on VIRUSTOTAL_API_KEY 2026-10-08 21:44:34 +02:00