Contributing to Starknet.go
We welcome contributions from the community! This guide will help you get started with contributing to Starknet.go.
Code of Conduct
Please read and follow our Code of Conduct to keep our community approachable and respectable.
How to Contribute
There are many ways to contribute to Starknet.go:
- Reporting bugs
- Suggesting enhancements
- Improving documentation
- Submitting pull requests
Reporting Bugs
If you find a bug, please create an issue on our GitHub repository with:
- A clear title and description
- As much relevant information as possible
- A code sample or test case demonstrating the bug
Suggesting Enhancements
Enhancement suggestions are also welcome. Please create an issue with:
- A clear title and description
- A detailed explanation of the proposed functionality
- Any relevant examples or use cases
Improving Documentation
Documentation improvements are always welcome. You can:
- Fix typos or clarify existing documentation
- Add examples or tutorials
- Expand on technical details
Pull Requests
- Fork the repository
- Create a new branch (
git checkout -b feature/amazing-feature
) - Make your changes
- Run tests to ensure they pass
- Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
Development Setup
Prerequisites
- Go 1.20 or higher
- Git
Setting Up the Development Environment
-
Clone your fork of the repository:
Terminalgit clone https://github.com/yourusername/starknet.go.git cd starknet.go
-
Add the original repository as an upstream remote:
Terminalgit remote add upstream https://github.com/NethermindEth/starknet.go.git
-
Install dependencies:
Terminalgo mod download
Running Tests
Run the test suite to ensure everything is working correctly: