Pay3 L1 is in active development — a single-node testnet prototype runs today, see Run It Yourself.
Pay3Pay3Docs
Testnet

Current Limitations

The clearest, most important page in these docs. l1_node is a teaching/prototype skeleton, not a production chain — here's exactly what that means in practice, and what changes before it isn't.

Nothing about the current testnet is audited. Don't point real users at it as anything more than a demo, and never fund any key used with it with anything of real value.

What's simplified today

This is deliberate scoping, not an oversight — the current prototype exists to exercise the full wallet → RPC → mempool → block → balance loop end to end before the harder consensus and networking work is built. Each item below links to where the eventual design is documented.

AreaTodayPlanned
ConsensusSingle-authority — one process seals every block on a fixed 3-second timerA real validator set with BFT voting — see Consensus Mechanism
NetworkingNone — one process, one RPC endpointrust-libp2p-based gossip so multiple nodes agree together — see Network Layer
State rootA simple hashA provable Merkle/Verkle trie — see State & Storage
ExecutionTransfers onlyFull EVM compatibility via revm — see Execution Layer
StorageIn-memory — restarting the node wipes the chain back to genesisPersisted to RocksDB
Transaction historyComputed by scanning every block on each requestIndexed, the way a real chain serves history

Security notes for a public testnet

  • The faucet private key is testnet-only. Never reuse it, never fund it with anything of real value, and treat it as public once it's stored as a platform secret/variable other collaborators can see — rotate it if the team changes.
  • Nothing in this stack is audited. It's a demo/testnet, not something to point real users or real funds at.
  • CORS is currently wide open (any origin), so the dashboard can reach the node from any *.vercel.app deploy. Fine for a testnet; should be tightened to the dashboard's exact domain before it matters.
  • Redeploys and restarts reset the chain to genesis, on either hosting option — see the Storage row above. The faucet address stays constant (tied to the env var/secret), but its balance and every transaction since genesis do not survive a redeploy.