New top-level Prometheus/ directory holds the Node service that will own prometheus.x once the on-chain record flips from the silentmode.st redirect to ip+tls. Nothing dynamic yet — this milestone delivers the site skeleton and proves the family's visual conventions port cleanly to a dynamic server. Shape: Prometheus/service/server.js node:http listener + map-based router Prometheus/service/layout.js document shell, topnav, footer Prometheus/service/pages.js home / browse / submit / publish / boundaries Prometheus/public/style.css ported silentmode.st tokens + category grid Prometheus/public/favicon.svg flame mark Routes: /, /browse, /submit, /publish, /boundaries, /static/*. Dynamic routes (/api/upload, /api/manifest, /api/publish, /api/pay, /admin/*) land here in later milestones per the architecture doc. Launch config .claude/launch.json gets a prometheus-service entry on port 3700 so the preview harness can run it. The pre-pivot WordPress-based scaffold at site-prometheus-x/ is left in place for the next session to delete deliberately — the architecture doc marks it as abandoned for prometheus.x but keeps the Sirius Press infra fixes it carried in.
38 lines
1.4 KiB
Markdown
38 lines
1.4 KiB
Markdown
# Prometheus
|
|
|
|
The service behind `prometheus.x` — a standalone website that accepts app
|
|
listings, scans the binaries, generates APS1 records for publishers to sign,
|
|
and serves the browse pages.
|
|
|
|
The architecture decisions and the reasoning behind them live at
|
|
[`_coordination/sessions/prometheus-x-architecture.md`](../_coordination/sessions/prometheus-x-architecture.md).
|
|
Read that before touching the code; it answers the questions this directory
|
|
otherwise invites ("why isn't this on Sia?", "why isn't the admin on another
|
|
subdomain?", "why Node?").
|
|
|
|
```
|
|
service/ Node HTTP server, templates, scanner, storage, payments
|
|
public/ Static assets served under /static/
|
|
content/ Prose content in a form the templates render into pages
|
|
```
|
|
|
|
## Run it locally
|
|
|
|
```bash
|
|
cd Prometheus
|
|
npm install # none yet; placeholder for when deps show up
|
|
node service/server.js
|
|
```
|
|
|
|
Opens on `http://127.0.0.1:3700` by default. Override with `PORT=xxxx`.
|
|
|
|
## Layout
|
|
|
|
The server is one `node:http` listener behind a trivial map-based router.
|
|
Pages are plain functions that return `{title, description, body}` and
|
|
`layout()` wraps them in the common document shell. Static files under
|
|
`public/` are served directly.
|
|
|
|
There's no framework and no templating engine on purpose — a site this
|
|
small does not earn a dependency surface, and the response-rendering path
|
|
is short enough to read at a glance.
|