Commit graph

6 commits

Author SHA1 Message Date
Local Dev
8d5304e450 releases: keep recent only, generate the page from the manifest; Hermes page catches up
The releases manifest had grown to 63 entries (every Theseus build back to
0.3.59) and the hand-edited page had drifted: Android was two versions
behind and Pithos was never listed. scripts/releases-page.mjs now trims the
manifest to recent versions per product (5 Theseus, 2 others) and rewrites
the page's release blocks from it. Consumers read only the first entry per
product, so nothing they see changes; older builds stay on Sia.

The Hermes subpage still said "designed, not built" and "MVP · desktop".
It now reflects what shipped: web messenger at hermes.x/messenger, three
sign-in paths incl. Theseus ID, three handle spellings, Nostr profiles,
vCard import, opt-in phone discovery, Ariadne's menu entry, and the planned
free sub-identity + Hermes TLDs (mainnet) as designed items.
2026-10-22 03:31:24 +03:00
Local Dev
ac53958af3 brand: PNG social/icon set + generator; Angie vhost tracked with slash-less rules
site/brand/social/ and site/brand/icon/ carry ready-to-upload PNGs at the
sizes X, LinkedIn, Facebook, Instagram, GitHub and PWA manifests want:
X header 1500x500, post 1200x675, LinkedIn 1584x396, Facebook 820x312,
Instagram 1080, avatars 400/1024, icons 512/192, favicons 64/32, plus the
Open Graph 1200x630 that every page already advertises. The brand page
gained a "Social media and icons" section with download links.

scripts/brand-assets.mjs renders the whole set from one HTML template via
scripts/render-html-png.cjs (Electron offscreen). Windows clamps even an
offscreen window to the work area, so captures taller than the screen are
rendered as strips and stitched on a canvas inside the page.

The VPS serves silentmode.st with Angie, not nginx (nginx.service is dead
there), so the URL rules now live in VPS/SilentMode/silentmode-st.angie.conf,
deployed and live. try_files lists $uri/index.html before $uri because a
bare $uri also matches a directory and would 301 to add the slash back.
GOTCHAS and the URL-scheme notes corrected accordingly.
2026-09-22 23:08:46 +02:00
Local Dev
a7224b75ac site: slash-less page URLs; /theseus is the Theseus page, /tools the overview
Canonical silentmode.st URLs no longer carry a trailing slash (/tools, not
/tools/). nginx (tracked now in VPS/SilentMode/silentmode-st.nginx) 301s
the old form and serves <dir>/index.html; sub-sites deployed from other
repos with relative asset paths (deviant, sirius-x, theseus-x, hephaestus.x,
fly.x, code) keep their directory URLs. Every page's internal links are
now site-root-relative, which resolves correctly both at /x on nginx and
under the BNS gateway's injected <base href="/bns/silentmode.bch/"> — the
old ../x/ links were already broken on the gateway route.

/theseus becomes the Silent Mode-headered Theseus page (what it is, what's
inside, Windows + Android downloads with manifest hashes, verify), linking
out to the sovereign theseus.x whose VPS mirror moves to /theseus-x/, the
same split as /sirius vs /sirius-x/. /tools is repurposed as the overview:
every site, the on-chain twins, the other clients (relay, Firefox, the
standalone Ariadne Resolver) and the machine endpoints. The old tools page
carried stale APK and resolver hashes; the new pages use the manifest's,
verified against the files on dl.silentmode.st.

scripts/serve-site.mjs mirrors the nginx rules for local preview.
2026-09-20 17:21:30 +02:00
Local Dev
d6c1f63043 site: cache-bust shared.css (?v=20260910) so the logo rule reaches cached browsers
Browsers held a stale shared.css (no Cache-Control on .css, weeks-old
Last-Modified → long heuristic freshness), so the .brand .logo rule added
on 2026-09-07 never applied for returning visitors and the brand wrapped
onto its own nav row on every page except Hephaestus. All 13 pages now
link shared.css?v=YYYYMMDD; bump it on every shared.css change (GOTCHAS).
2026-09-10 00:42:51 +02:00
Local Dev
9da520d719 docs(site/GOTCHAS): CORS on /js/*.js is required for BCNR pages
Theseus browses BCNR-served sites (sirius.x, theseus.x etc.) under a
'bns://<name>' origin. Those pages import the shared bundles at
silentmode.st/js/*.js — cross-origin. Without an
Access-Control-Allow-Origin header on the JS response the browser
refuses the module and every wallet/register/mint flow silently
breaks (the launcher button does nothing, no visible error unless
you open DevTools).

The nginx block for /js/*.js MUST carry the CORS add_header lines.
Documented what to look for and the exact block to keep so a future
nginx rebuild doesn't drop it.
2026-09-08 12:43:30 +02:00
Local Dev
e82db4c653 site: fix homepage product count, drop stray brand-page copy, add GOTCHAS
- index.html said 'five products' / 'all five' while listing seven cards
- deviant/brand/social/index.html was a copy of brand/index.html with every
  relative link broken (assets live one level up); never deployed, removed
- GOTCHAS.md: never rsync --delete site/ to the VPS (deviant/ there is owned
  by D:/Dev/Deviant/site), manifest lives in three places, archive script

Also shipped to VPS this session (no source change): releases-manifest.json
under /opt/silent-mode/site/ was stuck at 0.3.3 since 0.3.4; now 0.3.16.
2026-09-07 21:06:25 +02:00