Rust-based framework to Fuzz and Integration test Solana programs to help you ship secure code.
## Documentation
For documentation and guides, visit [ackee.xyz/trident/docs](https://ackee.xyz/trident/docs/).
## Prerequisites
Check [Supported versions](https://ackee.xyz/trident/docs/home/home-installation/#supported-versions) section for further details.
- Install [Rust](https://www.rust-lang.org/tools/install)
- Install [Solana tool suite](https://docs.solana.com/cli/install-solana-cli-tools)
- Install [Anchor](https://www.anchor-lang.com/docs/installation)
- Install [Honggfuzz-rs](https://github.com/rust-fuzz/honggfuzz-rs#how-to-use-this-crate) for fuzz testing
## Installation
```shell
cargo install trident-cli
```
## Features
### Automated Test Generation
Simplifies the testing process by automatically creating templates for fuzz and integration tests for programs written using the [Anchor Framework](https://www.anchor-lang.com/).
### Dynamic Data Generation
Increases test coverage with random instruction data and pseudo-random accounts for unpredictable fuzz test scenarios.
### Custom Instruction Sequences
Provides the flexibility to design specific sequences of instructions to meet particular testing needs or to focus on particular aspects of program behavior during fuzz testing.
### Invariant Checks
Allows for custom invariants checks to spot vulnerabilities and unwanted behaviors.
## Community
Check out the following places for more Trident-related content:
- Follow on [Twitter/X](https://twitter.com/TridentSolana) & [Warpcast](https://warpcast.com/~/channel/trident) for project updates
- Join the discussions on our Trident [warpcast channel](https://warpcast.com/~/channel/trident) or our [discord channel](https://discord.gg/wyBW9Q23aJ)
## Grants
Solana Foundation | Marinade
:-------------------------:|:-------------------------:
[![](https://abchprod.wpengine.com/wp-content/uploads/2024/05/Solana-Foundation.png)](https://ackee.xyz/blog/introducing-trident-the-first-open-source-fuzzer-for-solana-programs/) | [![](https://abchprod.wpengine.com/wp-content/uploads/2024/05/Marinade.png)](https://solana.blog/riptide-hackathon-winners/)
## Contribution
Thank you for your interest in contributing to Trident! Please see the [CONTRIBUTING.md](./CONTRIBUTING.md) to learn how.
## License
This project is licensed under the [MIT license](https://github.com/Ackee-Blockchain/trident/blob/master/LICENSE).