site/deviant/brand/social/twitter-header-deviation-1500x500.svg

86 lines
4.7 KiB
XML
Raw Normal View History

Sweep: mobile Ariadne updates, Deviant brand + sites, Hephaestus bootstrap, snappymail Broad-scope commit sweeping in work from parallel sessions plus this session's dev-only utilities. No single unifying theme — this is the "commit everything that's ready" pass. Grouped by area below. AriadneResolver / mobile * Small updates to BchFetcher, Bns, MainActivity, AriadneVpnService, and the Android manifest — from a parallel mobile-resolver session. * AriadneResolver/mobile/webpreview/ — new local dev webview (index.html + server.mjs) for iterating on the mobile UI without a device. Email / SnappyMail * Email/snappymail-plugin/silentmode-addresses — new SnappyMail plugin (README, CSS, PHP entry, JS) for surfacing @silentmode.st address management inside the webmail UI. Hephaestus (Forgejo + auth-proxy) * auth-proxy/src/oidc.ts + docker-compose.yml updates. * scripts/bootstrap-auth.sh — idempotent script that registers the wallet auth-proxy as Forgejo's OIDC provider after `docker compose up -d`. All secrets read from .env — no literals in the script. TheseusNavigator / dev tools * dev/list-tlds.mjs — enumerate every registered BNS name grouped by TLD via our own indexer. * dev/show-tlds-bch.mjs — dump the full records payload of the legacy tlds.bch name (kept as a diagnostic for the list-in-one-NFT era). Deviant sites + brand * site/deviant/ — new microsites (anthemus, potidaea, brand, mindmap, main index) plus the full brand kit under site/deviant/brand/ (logos, icons, palette, social exports as SVG source + PNG renders). * site-sirius-x/portal.html — updates. Coordination * _coordination/sessions/mobile-resolver.md — parallel-session notes. Deliberately excluded from this commit: * scratchpad/ — this session's temp drafts (Sia doc mockups, tlds UPD payloads). * TheseusNavigator/_prev/ — ~372 MB of prior release binaries; belongs in a separate artefacts store, not the git tree. Add to .gitignore next pass.
2026-08-30 10:38:49 +02:00
<svg xmlns="http://www.w3.org/2000/svg" width="1500" height="500" viewBox="0 0 1500 500" role="img" aria-label="Deviant — A response to a default trajectory">
<defs>
<style type="text/css">
@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600&amp;family=DM+Sans:wght@400;500;600;700&amp;family=JetBrains+Mono:wght@500&amp;display=swap');
.display { font-family: 'Fraunces', Georgia, serif; }
.body { font-family: 'DM Sans', -apple-system, 'Segoe UI', Roboto, sans-serif; }
.mono { font-family: 'JetBrains Mono', ui-monospace, monospace; }
</style>
<radialGradient id="sky" cx="28%" cy="30%" r="92%">
<stop offset="0%" stop-color="#0c1220"/>
<stop offset="55%" stop-color="#070d1a"/>
<stop offset="100%" stop-color="#02040a"/>
</radialGradient>
<filter id="acid-glow" x="-50%" y="-50%" width="200%" height="200%">
<feGaussianBlur stdDeviation="4" result="b"/>
<feMerge><feMergeNode in="b"/><feMergeNode in="SourceGraphic"/></feMerge>
</filter>
<filter id="node-glow" x="-100%" y="-100%" width="300%" height="300%">
<feGaussianBlur stdDeviation="10" result="b"/>
<feMerge><feMergeNode in="b"/><feMergeNode in="SourceGraphic"/></feMerge>
</filter>
</defs>
<!-- Same avatar-safe policy: keep critical copy right of x≈340. -->
<rect width="1500" height="500" fill="url(#sky)"/>
<!-- Sparse starfield -->
<g fill="#ffffff">
<circle cx="220" cy="80" r="1.6" opacity="0.5"/>
<circle cx="380" cy="120" r="1.2" opacity="0.35"/>
<circle cx="560" cy="60" r="1.4" opacity="0.4"/>
<circle cx="740" cy="90" r="1.6" opacity="0.45"/>
<circle cx="920" cy="60" r="1.3" opacity="0.4"/>
<circle cx="1100" cy="90" r="1.5" opacity="0.45"/>
<circle cx="1280" cy="60" r="1.7" opacity="0.5"/>
<circle cx="1420" cy="110" r="1.4" opacity="0.4"/>
<circle cx="480" cy="440" r="1.3" opacity="0.35"/>
<circle cx="700" cy="460" r="1.5" opacity="0.4"/>
<circle cx="920" cy="440" r="1.6" opacity="0.45"/>
<circle cx="1140" cy="460" r="1.2" opacity="0.35"/>
<circle cx="1360" cy="440" r="1.5" opacity="0.4"/>
</g>
<!-- Copy: wordmark + tagline (left, past avatar overlap) -->
<text class="display" x="360" y="220" font-weight="500" font-size="120" fill="#f1f4fa" letter-spacing="-2">Deviant</text>
<text class="body" x="362" y="270" font-weight="600" font-size="24" fill="#d6ff3d" letter-spacing="5">POWER YOUR IDEAS.</text>
<text class="display" x="360" y="340" font-style="italic" font-weight="400" font-size="26" fill="#b8c2d4">A response to a default trajectory.</text>
<!-- Deviation chart: exact geometry from the site hero (viewBox 380×240),
transformed to sit on the right side of the banner. Scale 1.85x places it
from roughly x=730..1420, y=115..400. -->
<g transform="translate(708 34) scale(1.85)">
<defs>
<!-- Visible curves: exact hero geometry from deviant_website.html:679-681 -->
<path id="path-default" d="M 12 70 C 110 96, 150 120, 200 138 C 255 158, 305 176, 368 198"/>
<path id="path-deviation" d="M 200 138 C 250 120, 300 84, 368 44"/>
<!-- Text-baseline offsets: parallel copies shifted perpendicular to each
curve so labels sit BELOW the default (down-drift) and ABOVE the
deviation (up-lift). Same control-point shape, y shifted uniformly. -->
<path id="path-default-below" d="M 12 86 C 110 112, 150 136, 200 154 C 255 174, 305 192, 368 214"/>
<path id="path-deviation-above" d="M 200 122 C 250 104, 300 68, 368 28"/>
</defs>
<!-- Default trajectory: dashed, muted, curves down-right -->
<use href="#path-default" stroke="#6a7488" stroke-width="1.8" fill="none" opacity="0.75"
stroke-dasharray="4 8" stroke-linecap="round"/>
<!-- Branch dot at the divergence -->
<circle cx="200" cy="138" r="4" fill="#6a7488"/>
<!-- Deviation: solid, acid, curves up-right -->
<use href="#path-deviation" stroke="#d6ff3d" stroke-width="3" fill="none" stroke-linecap="round"
filter="url(#acid-glow)"/>
<!-- Terminal acid node -->
<circle cx="368" cy="44" r="6" fill="#d6ff3d" filter="url(#node-glow)"/>
<!-- Labels run parallel to their respective curves via textPath. Start offsets
chosen so labels sit near the mid/end of each curve. -->
<text class="mono" font-size="10" fill="#6a7488" letter-spacing="2.5">
<textPath href="#path-default-below" startOffset="4%">DEFAULT TRAJECTORY</textPath>
</text>
<text class="mono" font-size="10" fill="#d6ff3d" letter-spacing="2.5">
<textPath href="#path-deviation-above" startOffset="30%">DEVIATION</textPath>
</text>
</g>
</svg>