mirror of
https://github.com/Such-Software/smirk-backend-core.git
synced 2026-10-17 07:21:32 +02:00
Add ready-to-run .env + README recipes (personal, public-free, friends, paid-access, paid-relay, community) and the premium-relay design overview, with audit fixes to the config template and spec: - Drop the inert INSTANCE_ID knob (config never read it) and document the real per-node id, which is derived from ADMIN_PUBLIC_URL. - Warn that a placeholder PUBLIC_API_URL is rejected at boot in production (Nostr identity is on by default); soften the recipe "boots today" status. - Remove dead template vars: BTC/LTC Core-RPC settings and the non-existent PUBLIC_EXPOSE_FEATURES (replaced with the real per-field landing switches). - Mark ALTCHA_HMAC_KEY conditional in PoW-off recipes; blank placeholder payment creds so a recipe doesn't ship a key that fails validation. - Fix premium-relay spec drift: the migration creates no premium_until index, disabled endpoints return 400/200 (not 404), and neutralize operator voice.
1.4 KiB
1.4 KiB
paid-relay — free wallet, paid Nostr posting (the flagship)
A free wallet (open + PoW) plus a paid premium tier for general Nostr posting to your relay. Wallet-functional events — encrypted DMs, tips, swap coordination — stay free for registered users; premium unlocks general posting. Recurring revenue tied to a real service. Implements the premium-relay feature.
- Config:
.env.example—RELAY_WRITE_POLICY=premium-post,PREMIUM_ENABLED=true, tieredPREMIUM_PLANS(a built-in discount curve), and thePAYMENT_*processor block (reused from pay-to-register; BTCPay-compatible). - Free vs paid: the relay is free for what makes the wallet work; you pay to use it as your everyday relay. Reads stay open (v1); premium gates writes.
- Money: you sell access to your relay (a fee), non-custodial + pull-model —
never hold funds.
PAYMENT_CONFIRMATIONS >= 1; validation rejects the unsafe combos. - Content: running a relay means hosting user content — a DMCA designated agent,
a CSAM-reporting process, and acceptable-use terms apply. See
../LEGAL_AND_OPS.md. - Resources: the relay runs beside the wallet backend + LWS, so keep the size /
retention / connection / rate caps (in
.env.exampleand the nostr-rs-relay config underdeploy/relay); move toRELAY_MODE=externalon its own host if load climbs.