This repository is the standalone API process (src/startup.rs loads
config and connects the kernel). It exposes REST on top of the node's
internal kernel RPC
(specification §7.5 / §7.8).
- The public REST service layer (multi-tenant, hosted-wallet surface).
- Planned API-local scope (not implemented yet): LNURL mappings, aliasing, rate limits, push subscriptions. Coins, proofs, and the nullifier accumulator stay in the node — this layer never touches the node's database directly.
- No SPEND keys, no Bitcoin access — proving, broadcasting, and chain scanning stay in the node.
- Default branch is
develop; open PRs against it. - Commit messages: English, concise, what not how.
- House rules for the trust model and Rust style follow
zk-coins/node/CONTRIBUTING.md.
Workflow here differs: PRs target
develop(this repo has nostaging), there is no Node.githookssetup, and CI is the singlelint-and-buildjob in.github/workflows/ci.yaml.
- zk-coins/node — trustless kernel.
- zk-coins/sdk — TypeScript client consuming this surface.
- zk-coins/docs — specification (docs.zkcoins.com).