Thank you for your interest in contributing to the Custos-Starknet project! This repository contains the smart contracts for Custos, written in Cairo using Scarb. We appreciate contributions of all types, whether it’s a bug fix, new feature, or improvement to our documentation. Please follow the guidelines below to ensure a smooth contribution process.
- Code of Conduct
- How to Contribute
- Setting Up the Project
- Branching and Commit Guidelines
- Pull Requests
- Coding Standards
- Issue Reporting
- Resources
- License
Please adhere to our Code of Conduct. We expect all contributors to maintain professionalism and respect when engaging with the community.
There are several ways to contribute to Custos-Starknet:
- Report Bugs: Open an issue to report bugs.
- Suggest Features: Open an issue to suggest new features.
- Fix Bugs or Implement Features: Check open issues and submit a pull request with your contributions.
- Improve Documentation: Enhancing documentation is always welcome.
To contribute, you need to set up the project locally:
- Fork the repository.
- Clone your fork:
git clone https://github.com/your-username/custos-starknet.git
- Navigate to the project directory:
cd custos-starknet
- Install Scarb if you haven't already: Scarb Installation Guide.
- Install dependencies:
scarb build
- Run tests:
scarb test
- Make sure everything works before making changes.
-
Branch Naming:
feature/your-feature-name
for new features.bugfix/issue-number-description
for bug fixes.
-
Commit Messages:
- Use clear, concise messages that describe what the commit does.
- Example:
feat: add new collateralization feature for loan contracts
- Ensure your branch is up to date with the main branch.
- Push your changes and open a PR against
master
. - Provide a detailed description of your changes.
- Link any relevant issues.
- Cairo Code: Follow the Cairo documentation and best practices.
- Testing: Write tests for your code and ensure all tests pass before submitting a PR.
When reporting issues:
- Use descriptive titles.
- Provide as much detail as possible.
- Include relevant environment information.