Skip to content

stratum-mining/stratum

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

3,771 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 


SRI
SV2 Libraries

Stratum V2 protocol libraries from the SRI project ๐Ÿฆ€

codecov X (formerly Twitter) Follow

Stratum Repository

This repository contains the low-level crates. If youโ€™re looking to run Sv2 applications at the most recent changes, check out the sv2-apps repository. Those crates are application-level, currently in alpha stage.

Contents

  • sv1/ - Stratum V1 protocol implementation and utilities
  • sv2/ - Stratum V2 protocol implementations
    • binary-sv2/ - Binary encoding/decoding for SV2 messages
    • buffer/ - Buffer management and pooling
    • channels-sv2/ - Channel management for SV2
    • codec-sv2/ - SV2 message codec with encryption support
    • framing-sv2/ - SV2 message framing utilities
    • handlers_sv2/ - SV2 message handler traits
    • noise-sv2/ - Noise protocol implementation for SV2
    • parsers-sv2/ - Message parsing utilities
    • subprotocols/ - SV2 subprotocol implementations
  • stratum-core/ - Entrypoint for all the low-level crates in sv2/ and sv1/implementations
    • stratum-translation - Stratum V1 โ†” Stratum V2 translation utilities

Local Integration Testing

To run integration tests locally:

./scripts/run-integration-tests.sh

This will:

  1. Clone/update the integration test framework
  2. Update dependencies to use your local changes
  3. Run the full integration test suite
  4. Restore the original configuration

๐Ÿ›ฃ Roadmap

Our roadmap is publicly available as part of the broader SRI project, outlining current and future plans. Decisions are made through a consensus-driven approach via dev meetings, Discord, and GitHub.

View the SRI Roadmap

๐Ÿ’ป Contribute

We welcome contributions to improve these SV2 libraries! Here's how you can help:

  1. Start small: Check the good first issue label in the main SRI repository
  2. Join the community: Connect with us on Discord before starting larger contributions
  3. Open issues: Create GitHub 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

For detailed documentation and guides, visit: Stratum V2 Documentation

๐ŸŽ 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

๐Ÿข 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.75.0


Website stratumprotocol.org ย ยทย  Discord SV2 Discord ย ยทย  Twitter @Stratumv2 ย ยทย 

About

Stratum V2 protocol libraries

Resources

License

Unknown and 2 other licenses found

Licenses found

Unknown
LICENSE.md
Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors

โšก