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.
232 lines
11 KiB
HTML
232 lines
11 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title>Prometheus — apps and programs on the decentralized web — Silent Mode</title>
|
|
<meta name="description" content="Prometheus is a home for apps, programs, and dApps published on the Bitcoin Cash chain. Listings live on chain, binaries live on Sia, endorsements are signed. Anyone can publish; nobody can gatekeep.">
|
|
<meta property="og:type" content="website">
|
|
<meta property="og:site_name" content="Silent Mode">
|
|
<meta property="og:title" content="Prometheus — apps and programs on the decentralized web — Silent Mode">
|
|
<meta property="og:description" content="Prometheus is a home for apps, programs, and dApps published on the Bitcoin Cash chain. Listings live on chain, binaries live on Sia, endorsements are signed. Anyone can publish; nobody can gatekeep.">
|
|
<meta property="og:url" content="https://silentmode.st/prometheus">
|
|
<meta property="og:image" content="https://silentmode.st/brand/og.png">
|
|
<meta property="og:image:width" content="1200">
|
|
<meta property="og:image:height" content="630">
|
|
<meta name="twitter:card" content="summary_large_image">
|
|
<link rel="stylesheet" href="shared.css?v=20260910">
|
|
<style>
|
|
/* Category grid — visually distinct from the homepage's tool cards so the two
|
|
don't blur together. Prometheus is a shop; the homepage is a foyer. */
|
|
.categories{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:1rem}
|
|
.cat{
|
|
background:var(--panel);border:1px solid var(--line);border-radius:14px;
|
|
padding:20px 22px;text-decoration:none;color:inherit;
|
|
transition:transform .18s ease, border-color .18s ease, background .18s ease;
|
|
display:flex;flex-direction:column;gap:.6rem;
|
|
}
|
|
.cat:hover{transform:translateY(-3px);border-color:rgba(214,255,61,.35);background:var(--panel2)}
|
|
.cat .ico{font-size:26px;line-height:1;filter:grayscale(.2)}
|
|
.cat h3{margin:.1rem 0 0;font-size:1.02rem}
|
|
.cat .count{color:var(--dim);font-size:12px;letter-spacing:.02em;margin-top:auto;padding-top:.4rem}
|
|
.cat.empty .count::before{content:"— ";color:var(--dim)}
|
|
|
|
.banner{
|
|
background:linear-gradient(180deg, rgba(214,255,61,.06), rgba(255,255,255,.01));
|
|
border:1px solid rgba(214,255,61,.18);border-radius:14px;
|
|
padding:22px 24px;margin:2rem 0 1.4rem;
|
|
}
|
|
.banner h3{margin:0 0 .3rem;font-size:1.1rem}
|
|
.banner p{margin:.2rem 0 0;color:var(--mut);font-size:14.5px}
|
|
</style>
|
|
<link rel="icon" type="image/svg+xml" href="favicon.svg">
|
|
</head>
|
|
<body>
|
|
|
|
<nav class="topnav">
|
|
<a class="brand" href="./"><svg class="logo" viewBox="0 0 32 20" aria-hidden="true"><rect class="l1" x="1.5" y="3.5" width="17" height="13" rx="6.5" ry="6.5" fill="none" stroke-width="2.6"/><rect class="l2" x="13.5" y="3.5" width="17" height="13" rx="6.5" ry="6.5" fill="none" stroke-width="2.6"/></svg>Silent <span class="g">Mode</span></a>
|
|
<a href="theseus">Theseus</a>
|
|
<a href="prometheus" class="here">Prometheus</a>
|
|
<a href="sirius">Sirius</a>
|
|
<a href="hephaestus">Hephaestus</a>
|
|
<a href="helios">Helios</a>
|
|
<a href="hermes">Hermes</a>
|
|
<a href="tools">Tools</a>
|
|
</nav>
|
|
|
|
<header class="hero">
|
|
<div class="mark" style="font-size:52px">🔥</div>
|
|
<h1>Prometheus
|
|
<span class="pill p-designed" style="vertical-align:middle;font-size:12px;margin-left:.6rem">designed · not yet built</span>
|
|
</h1>
|
|
<p class="tag">A home for apps, programs, dApps, and libraries — <b>listed on the Bitcoin
|
|
Cash chain, hosted on Sia, endorsed by signature</b>. Anyone can publish. Nobody can
|
|
gatekeep. Named for the one who gave fire to humans and did not ask the gods first.</p>
|
|
</header>
|
|
|
|
<div class="wrap">
|
|
|
|
<!-- ============ CATEGORIES ============ -->
|
|
<section class="plain">
|
|
<h2>Browse by category</h2>
|
|
<p class="lede">Where a Google Play or an App Store has one company deciding what fits
|
|
which shelf, Prometheus has the publisher's own label and your own trust list.
|
|
Categories below are the initial shape; anyone can propose more.</p>
|
|
|
|
<div class="categories">
|
|
<a class="cat empty" href="#soon"><div class="ico">💬</div>
|
|
<h3>Communication</h3>
|
|
<p>Messengers, voice, group chats, boards.</p>
|
|
<span class="count">0 listings</span>
|
|
</a>
|
|
<a class="cat empty" href="#soon"><div class="ico">🛡️</div>
|
|
<h3>Privacy & security</h3>
|
|
<p>Tor tooling, mix networks, key managers, disk crypto.</p>
|
|
<span class="count">0 listings</span>
|
|
</a>
|
|
<a class="cat empty" href="#soon"><div class="ico">💸</div>
|
|
<h3>Wallets & payments</h3>
|
|
<p>BCH wallets, cross-chain bridges, payment terminals.</p>
|
|
<span class="count">0 listings</span>
|
|
</a>
|
|
<a class="cat empty" href="#soon"><div class="ico">🎮</div>
|
|
<h3>Games</h3>
|
|
<p>Standalone titles, on-chain leaderboards, in-app purchases without a store cut.</p>
|
|
<span class="count">0 listings</span>
|
|
</a>
|
|
<a class="cat empty" href="#soon"><div class="ico">🧰</div>
|
|
<h3>Developer tools</h3>
|
|
<p>SDKs, libraries, indexers, testnet faucets, protocol utilities.</p>
|
|
<span class="count">0 listings</span>
|
|
</a>
|
|
<a class="cat empty" href="#soon"><div class="ico">🎧</div>
|
|
<h3>Media & publishing</h3>
|
|
<p>Readers, players, one-file blogs, podcast hosts.</p>
|
|
<span class="count">0 listings</span>
|
|
</a>
|
|
<a class="cat empty" href="#soon"><div class="ico">⚙️</div>
|
|
<h3>Utilities</h3>
|
|
<p>File tools, sync, format converters, calculators.</p>
|
|
<span class="count">0 listings</span>
|
|
</a>
|
|
<a class="cat empty" href="#soon"><div class="ico">✨</div>
|
|
<h3>Everything else</h3>
|
|
<p>Anything that doesn't fit above. Propose a new category via a listing.</p>
|
|
<span class="count">0 listings</span>
|
|
</a>
|
|
</div>
|
|
|
|
<div class="banner" id="soon">
|
|
<h3>No live listings yet.</h3>
|
|
<p>The listing protocol (<code class="inline">APS1</code> record on chain) and the
|
|
submission flow are next. In the meantime, <a href="tools">Silent Mode's own
|
|
clients</a> are the working proof that a chain-hosted download flow can be verified
|
|
end-to-end.</p>
|
|
</div>
|
|
</section>
|
|
|
|
<!-- ============ HOW IT WORKS ============ -->
|
|
<section>
|
|
<h2>How Prometheus works</h2>
|
|
<ol class="steps">
|
|
<li><b>A listing is a signed on-chain record.</b>
|
|
<span>Publishing an app writes a small <code class="inline">APS1</code> record
|
|
to Bitcoin Cash — same protocol shape as a BNS name registration, different
|
|
prefix. The payload is a hash pointing at a full manifest stored on Sia:
|
|
name, description, category, icon, version, download URL, binary SHA-256, and
|
|
signing-cert fingerprint. Nobody approves the record; the transaction is the
|
|
publish.</span></li>
|
|
<li><b>The binary lives on Sia.</b>
|
|
<span>App files are uploaded to the Sia storage network — encrypted on the
|
|
publisher's machine, sharded across roughly 30 independent hosts, held by
|
|
nobody in particular. The listing carries the SHA-256 the file must match. If
|
|
the mirror serves a byte off, the client refuses to install it.</span></li>
|
|
<li><b>Reviews are signed endorsements you filter.</b>
|
|
<span>An endorsement is a signed statement on chain: "I, <code class="inline">alice.bch</code>,
|
|
vouch for this app." Your client shows the endorsements from names on trust
|
|
lists you subscribe to — a security researcher's, a friend's, your own. A
|
|
one-star review from a bot you don't follow simply doesn't render. Curated
|
|
registries and formal reputation come later; permissionless comes first.</span></li>
|
|
<li><b>Install verifies against the chain.</b>
|
|
<span>The Ariadne clients pull the file from wherever the listing says (Sia,
|
|
mirror, your own server), check the SHA-256 against the on-chain record, check
|
|
the signing certificate against the fingerprint, and only then install. Same
|
|
principle as verifying a website — the chain is the truth, not the mirror.</span></li>
|
|
</ol>
|
|
</section>
|
|
|
|
<!-- ============ FOR PUBLISHERS ============ -->
|
|
<section>
|
|
<h2>Publishing an app</h2>
|
|
<div class="grid">
|
|
<div class="card">
|
|
<span class="pill p-live">available today</span>
|
|
<h3>Register a name</h3>
|
|
<p>Every publisher needs a name to sign as. Any BNS name works — the same one you'd
|
|
register at <a href="sirius">Sirius</a>. Fractions of a cent, no monthly bill.</p>
|
|
</div>
|
|
<div class="card">
|
|
<span class="pill p-live">available today</span>
|
|
<h3>Host on Sia</h3>
|
|
<p>Upload the app binary + manifest to a Sia bucket you control. Silent Mode's own
|
|
gateway can host on your behalf if you don't want to run a Sia daemon.</p>
|
|
</div>
|
|
<div class="card">
|
|
<span class="pill p-designed">designed</span>
|
|
<h3>Publish the listing</h3>
|
|
<p>One transaction: <code class="inline">APS1</code> record with the manifest hash,
|
|
signed by your name's key. From that moment on, anyone can find your app by
|
|
browsing the category, and the client can install it verifiably.</p>
|
|
</div>
|
|
<div class="card">
|
|
<span class="pill p-designed">designed</span>
|
|
<h3>Ship updates</h3>
|
|
<p>An update is another signed record referencing the same app id. Clients pull
|
|
updates the same way they installed the app — verify against the chain, then
|
|
install. Nobody can push a hostile update without your key.</p>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<!-- ============ HONEST LIMITS ============ -->
|
|
<section>
|
|
<h2>Honest boundaries</h2>
|
|
<div class="grid">
|
|
<div class="card">
|
|
<h3>Not a curator</h3>
|
|
<p>Prometheus does not decide what is on it. Malware can be published — as it can
|
|
on any store. Trust lists and endorsements are what filter your view. If nobody
|
|
you trust endorses it, your client says so.</p>
|
|
</div>
|
|
<div class="card">
|
|
<h3>Not a moderator</h3>
|
|
<p>Content that is illegal in your jurisdiction is your responsibility to avoid,
|
|
same as any other permissionless network. Silent Mode operates infrastructure;
|
|
it does not decide what runs on it.</p>
|
|
</div>
|
|
<div class="card">
|
|
<h3>Storage costs money</h3>
|
|
<p>Sia hosting is inexpensive but not free — publishers pay for the bytes their
|
|
apps take. There is no advertising model, no data harvesting, no subscription.
|
|
Storage is the only cost, and it is small.</p>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<div class="note warn"><b>Status: designed, not yet built.</b> The listing protocol
|
|
(<code class="inline">APS1</code>) exists on paper — see
|
|
<code class="inline">_coordination/sessions/mobile-resolver.md</code>. The browsing UI,
|
|
publish flow, and trust-list plumbing are next. This page will look the same when
|
|
Prometheus is live; the "0 listings" counters just start counting up.</div>
|
|
|
|
</div>
|
|
|
|
<footer>
|
|
<div>Silent Mode — a Deviant project.</div>
|
|
<div class="fine">Named for Prometheus, who gave fire to humans without asking the gods.
|
|
Distinct from the well-known Prometheus monitoring project — both take the name from
|
|
the same myth; neither has anything to do with the other.</div>
|
|
</footer>
|
|
|
|
</body>
|
|
</html>
|