SRI
SV2 Applications

Stratum V2 pool and miner applications from the SRI project 🦀

codecov X (formerly Twitter) Follow

# SV2 Apps Repository This repository contains the application-level crates, currently in **alpha** stage. If you're looking for the low-level protocol libraries, check out the [`stratum` repository](https://github.com/stratum-mining/stratum). Those crates provide the foundational protocol implementations used as dependencies by these applications. ## Contents - `bitcoin-core-sv2/` - Library crate that translates Bitcoin Core IPC into Sv2 Template Distribution Protocol - `pool-apps/` - Pool operator applications - `pool/` - SV2-compatible mining pool server that communicates with downstream roles and Template Providers - `jd-server/` - Job Declarator Server coordinates job declaration between miners and pools, maintains synchronized mempool - `miner-apps/` - Miner applications - `jd-client/` - Job Declarator Client allows miners to declare custom block templates for decentralized mining - `translator/` - Translator Proxy bridges SV1 miners to SV2 pools, enabling protocol transition - `stratum-apps/` - Shared application utilities - Configuration helpers (TOML, coinbase outputs, logging) - Network connection utilities (Noise protocol, plain TCP, SV1 connections) - Payout identity parsing and coinbase output construction/verification helpers - Runtime fallback coordination helpers - RPC client implementation - Key management utilities - Custom synchronization primitives - `integration-tests/` - End-to-end integration tests validating interoperability between all components ## ⛏️ Getting Started To get started with the Stratum V2 Reference Implementation (SRI), please follow the detailed setup instructions available on the official website: [Getting Started with Stratum V2](https://stratumprotocol.org/blog/getting-started/) This guide provides all the necessary information on prerequisites, installation, and configuration to help you begin using, testing or contributing to SRI. ## 🛣 Roadmap Our roadmap is publicly available, outlining current and future plans. Decisions on the roadmap are made through a consensus-driven approach, through participation on dev meetings, Discord or GitHub. [View the SRI Roadmap](https://github.com/orgs/stratum-mining/projects/15) ## 💻 Contribute We welcome contributions to improve our SV2 apps! Here's how you can help: 1. **Start small**: Check the [good first issue label](https://github.com/stratum-mining/sv2-apps/labels/good%20first%20issue) in the main SRI repository 2. **Join the community**: Connect with us on [Discord](https://discord.gg/fsEW23wFYs) before starting larger contributions 3. **Open issues**: [Create GitHub issues](https://github.com/stratum-mining/sv2-apps/issues) for bugs, feature requests, or questions 4. **Follow standards**: Ensure code follows Rust best practices and includes appropriate tests ## 🤝 Support Join our Discord community for technical support, discussions, and collaboration: [Join the Stratum V2 Discord Community](https://discord.gg/fsEW23wFYs) For detailed documentation and guides, visit: [Stratum V2 Documentation](https://stratumprotocol.org) ## 🎁 Donate ### 👤 Individual Donations If you wish to support the development and maintenance of the Stratum V2 Reference Implementation, individual donations are greatly appreciated. You can donate through OpenSats, a 501(c)(3) public charity dedicated to supporting open-source Bitcoin projects. [Donate through OpenSats](https://opensats.org/projects/stratumv2) ### 🏢 Corporate Donations For corporate entities interested in providing more substantial support, such as grants to SRI contributors, please get in touch with us directly. Your support can make a significant difference in accelerating development, research, and innovation. ## 🙏 Supporters SRI contributors are independently, financially supported by following entities:

## 📖 License This software is licensed under Apache 2.0 or MIT, at your option. ## 🦀 MSRV Minimum Supported Rust Version: 1.88.0 --- > Website [stratumprotocol.org](https://www.stratumprotocol.org)  ·  > Discord [SV2 Discord](https://discord.gg/fsEW23wFYs)  ·  > Twitter [@Stratumv2](https://twitter.com/StratumV2)  ·