Skip to content
JEM

JEMs Roadmap

This document outlines the major components needed to evolve JEM coin toward a secure, user-ready platform. Each section lists actionable tickets that can be tracked individually.

1. PoE-VRF Consensus & Committee Finality

  • <input type="checkbox" disabled /> **Consensus design**
  • <input type="checkbox" disabled /> **VRF implementation**
  • <input type="checkbox" disabled /> **Committee finality**
  • - [ ] Specify a Proof of Epoch (PoE) scheme and VRF-based leader selection - [ ] Define block structure, committee membership, and slashing rules - [ ] Adopt a secure VRF library such as hash-vrf or ristretto255 - [ ] Integrate VRF calls into the block proposal flow - [ ] Introduce a HotStuff-style protocol for block finalization - [ ] Define quorum thresholds and message propagation rules

2. Networking, Validation & Transaction Processing

  • <input type="checkbox" disabled /> **Peer-to-peer networking**
  • <input type="checkbox" disabled /> **Transaction pool**
  • <input type="checkbox" disabled /> **Block validation**
  • - [ ] Employ libp2p or similar for discovery, connections, and gossip - [ ] Collect and expose bandwidth and latency metrics - [ ] Implement a mempool with validation logic and spam prevention - [ ] Support priority rules for transaction selection - [ ] Verify blocks and transactions against consensus rules and signatures - [ ] Apply state transitions and reject invalid data

3. RPC & GraphQL APIs

  • <input type="checkbox" disabled /> **RPC layer**
  • <input type="checkbox" disabled /> **GraphQL gateway**
  • <input type="checkbox" disabled /> **API documentation**
  • - [ ] Provide JSON-RPC endpoints for node info, account queries, transaction submission, and chain metadata - [ ] Design schemas for blocks, transactions, accounts, and event subscriptions - [ ] Auto-generate reference docs using OpenAPI or GraphQL introspection - [ ] Host the generated documentation for developers

4. Wallet Integration & User Actions

  • <input type="checkbox" disabled /> **Wallet APIs**
  • <input type="checkbox" disabled /> **Sample wallet/UI**
  • <input type="checkbox" disabled /> **User testing**
  • - [ ] Define methods for key management, signing, and broadcasting transactions - [ ] Ensure compatibility with hardware wallets when possible - [ ] Provide a reference web or desktop wallet for send/receive, balance display, and history - [ ] Gather feedback from real users to refine UX and detect bugs

5. Documentation, Tests & Production Hardening

  • <input type="checkbox" disabled /> **Documentation**
  • <input type="checkbox" disabled /> **Testing**
  • <input type="checkbox" disabled /> **Security & reliability**
  • - [ ] Expand README and docs covering consensus details, APIs, setup guides, and architecture - [ ] Add unit tests for consensus logic - [ ] Create integration tests for networking and mempool - [ ] Implement end-to-end tests for RPC and wallet flows - [ ] Audit cryptographic usage and enforce logging/metrics - [ ] Perform load testing to validate production readiness