First off, thank you for considering contributing to FlashStat! It's people like you that make FlashStat a great tool for the Unichain ecosystem.
FlashStat is a monorepo consisting of:
- Rust Backend: The core monitoring engine, JSON-RPC server, and TEE verifier.
- TypeScript SDKs: Client libraries for Core, Viem, and React integration.
- Rust: Latest stable (edition 2024).
- Node.js: v18 or later.
- pnpm: v9 or later (used for SDK workspace management).
- Docker: For running the infrastructure locally.
git clone https://github.com/One-Block-Org/FlashStat.git
cd FlashStat
# Install SDK dependencies
cd sdks/typescript
pnpm installWe value high-quality tests. Before submitting a PR, please ensure all tests pass.
cargo test --all-featurescd sdks/typescript
pnpm test- Run
cargo fmt --allbefore committing. - Ensure
cargo clippy --all-targets --all-featureshas no warnings.
- We use Prettier for formatting.
- Ensure your changes are fully typed (no
anyunless absolutely necessary).
- Fork the repo and create your branch from
main. - Make your changes. If you've added code that should be tested, add tests.
- Update documentation if you've changed APIs or added features.
- Submit a PR. Describe your changes clearly and link to any related issues.
If you have questions or want to discuss a feature, feel free to open a GitHub Issue.
Thank you for helping us make Unichain safer!