## Contributing to Bulwark
First of all, thank you for taking the time to contribute! ๐ก๏ธโจ
Bulwark is an early-stage Rust project, so contributions of any size are welcome โ from typo fixes to architectural discussions.
---
๐ Ways to Contribute
You donโt have to be a Rust wizard to help. Here are common ways people contribute:
๐ Bug Reports
Found a bug? Please open an issue.
Include:
What you expected to happen
What actually happened
Steps to reproduce (if possible)
๐งช Bug Fixes
Pick an open issue or fix something you noticed.
Small, focused PRs are preferred.
โจ Features & Improvements
New ideas are welcome!
For bigger changes, please open an issue first to discuss.
๐ Documentation
Improve README clarity
Add examples
Fix typos or confusing explanations
---
๐ Development Setup
Requirements
Rust (stable)
Cargo
Clone the Repository
```bash
git clone https://github.com/haqqimuazzam1-hue/Bulwark.git
cd Bulwark
```
Run Checks
Before submitting a PR, please make sure these pass:
```Rust
cargo fmt
cargo clippy
cargo test
```
PRs that fail these checks may be asked to update before review.
---
๐งฉ Code Style & Guidelines
Follow standard Rust formatting (cargo fmt)
Keep APIs simple and consistent
Prefer explicit, readable code over clever tricks
Avoid unnecessary breaking changes
Clippy warnings should be addressed unless there is a strong reason not to.
---
๐ Pull Request Process
1. Fork the repository
2. Create a new branch (feature/xyz or fix/abc)
3. Commit your changes with clear messages
4. Open a Pull Request
5. Describe what you changed and why
Donโt worry if itโs not perfect โ feedback is part of the process ๐
---
๐ค Code of Conduct
Be respectful and constructive. This project follows the principle of:
> Assume good intentions.
Harassment, discrimination, or toxic behavior will not be tolerated.
---
๐ฌ Questions?
If youโre unsure about anything:
Open an issue
Ask in a discussion
Or start with a draft PR
Weโre happy to help and guide new contributors.
---
Thanks for helping make Bulwark better! ๐ก๏ธ