<p align="center">
<a href="https://usetrident.xyz/">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://abchprod.wpengine.com/wp-content/uploads/2024/05/Trident-Github.png?raw=true">
<img alt="Trident Github" src="https://abchprod.wpengine.com/wp-content/uploads/2024/05/Trident-Github.png?raw=true" width="auto">
</picture>
</a>
</p>
<p align="left">
<a href="https://usetrident.xyz/">
<img height="100" width="100" src="https://abchprod.wpengine.com/wp-content/uploads/2024/05/Trident-Color.png" alt="Trident"/>
</a>
# Trident
<p align="left">
Rust-based Manually Guided Fuzzer to Fuzz Solana programs, designed to help you ship secure code.
<p>
<p align="left">
<a href="https://usetrident.xyz/" target="_blank" rel="noopener noreferrer">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://img.shields.io/badge/website-usetrident.xyz-blue?colorA=21262d&colorB=0000FF&style=flat">
<img src="https://img.shields.io/badge/website-usetrident.xyz-blue?colorA=f6f8fa&colorB=0000FF&style=flat" alt="Website">
</picture>
</a>
<a href="https://ackee.xyz/trident/docs/latest/" target="_blank" rel="noopener noreferrer">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://img.shields.io/badge/docs-ackee.xyz-blue?colorA=21262d&colorB=0000FF&style=flat">
<img src="https://img.shields.io/badge/docs-ackee.xyz-blue?colorA=f6f8fa&colorB=0000FF&style=flat" alt="Documentation">
</picture>
</a>
<a href="https://discord.gg/JhTVXUvaEr" target="_blank" rel="noopener noreferrer">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://img.shields.io/discord/867746290678104064?colorA=21262d&colorB=0000FF&style=flat">
<img src="https://img.shields.io/discord/867746290678104064?colorA=f6f8fa&colorB=0000FF&style=flat" alt="Chat">
</picture>
</a>
<a href="https://crates.io/crates/trident-cli" target="_blank" rel="noopener noreferrer">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://img.shields.io/crates/v/trident-cli?colorA=21262d&colorB=21262d&style=flat">
<img src="https://img.shields.io/crates/v/trident-cli?colorA=f6f8fa&colorB=f6f8fa&style=flat" alt="Version">
</picture>
</a>
<a href="https://github.com/Ackee-Blockchain/trident/blob/master/LICENSE" target="_blank" rel="noopener noreferrer">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://img.shields.io/npm/l/@coinbase/onchainkit?colorA=21262d&colorB=21262d&style=flat">
<img src="https://img.shields.io/npm/l/@coinbase/onchainkit?colorA=f6f8fa&colorB=f6f8fa&style=flat" alt="MIT License">
</picture>
</a>
<a href="https://github.com/Ackee-Blockchain/trident/actions/workflows/lint.yml" target="_blank" rel="noopener noreferrer">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://img.shields.io/github/actions/workflow/status/Ackee-Blockchain/trident/lint.yml?label=Lint&colorA=21262d&style=flat">
<img src="https://img.shields.io/github/actions/workflow/status/Ackee-Blockchain/trident/lint.yml?label=Lint&colorA=f6f8fa&style=flat" alt="Lint">
</picture>
</a>
<a href="https://github.com/Ackee-Blockchain/trident/actions/workflows/fuzz.yml" target="_blank" rel="noopener noreferrer">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://img.shields.io/github/actions/workflow/status/Ackee-Blockchain/trident/fuzz.yml?label=Test%20Fuzz%20Tests&colorA=21262d&style=flat">
<img src="https://img.shields.io/github/actions/workflow/status/Ackee-Blockchain/trident/fuzz.yml?label=Test%20Fuzz%20Tests&colorA=f6f8fa&style=flat" alt="Test Escrow and Turnstile">
</picture>
</a>
</p>
<br />
## Documentation
For documentation and guides, visit [ackee.xyz/trident/docs](https://ackee.xyz/trident/docs/).
## Installation
Check the [Installation steps](https://ackee.xyz/trident/docs/latest/basics/installation/).
```shell
cargo install trident-cli
```
</p>
<br />
## Features
### • Property-based fuzz testing a.k.a. "invariant fuzz testing"
### • Intuitive Anchor-like macros for streamlined testing
### • Stateful fuzz testing
### • High-performance [TridentSVM](https://github.com/Ackee-Blockchain/trident-svm) client powered by [Anza's SVM API](https://www.anza.xyz/blog/anzas-new-svm-api)
### • Random instruction selection with repetition a.k.a. "fuzzing flows"
### • Intuitive HTML dashboard with fuzzing results
### • Regression testing
---
## 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
[](https://ackee.xyz/blog/introducing-trident-the-first-open-source-fuzzer-for-solana-programs/) | [](https://solana.com/news/riptide-hackathon-winners-solana)
## 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).