Skip to content

Latest commit

 

History

History
82 lines (58 loc) · 3.53 KB

CONTRIBUTING.md

File metadata and controls

82 lines (58 loc) · 3.53 KB

Contributing to MultiSigEnterpriseVault

Thank you for considering contributing to MultiSigEnterpriseVault! I welcome contributions from the community and am excited to work with you.

How to Contribute

Reporting Bugs

  • Ensure the bug was not already reported by searching on GitHub under Issues.
  • If you're unable to find an open issue addressing the problem, open a new one. Be sure to include a title and clear description, as much relevant information as possible, and a code sample or an executable test case demonstrating the expected behavior that is not occurring.
  • When opening a new issue, select the appropriate template that best matches your report (e.g., Bug Report).

Suggesting Enhancements

  • Search the existing Issues for enhancement suggestions to avoid duplicates.
  • If you find a related issue, feel free to add your thoughts and suggestions.
  • If you don't find an existing issue, open a new one and describe the enhancement in detail.
  • Use the provided template for feature requests to ensure all necessary information is included.

Submitting Pull Requests

  • Fork the repository and create your branch from main.
  • If you've added code that should be tested, add tests.
  • Ensure the test suite passes.
  • Make sure your code lints.
  • Use the pull request template to ensure all necessary information is included.
  • Follow the checklist in the template to verify that your pull request meets the project requirements.
  • Issue that pull request!

Code Style

  • Follow the existing code style and use forge fmt to format your code.
  • Document all functions using NatSpec comments.
  • Write clear, concise commit messages.

Branch Naming Guidelines

To keep a clean and understandable Git history, always base new branches off the main branch and follow these branch naming conventions:

  • Feature Branches: For new features use: feat/<feature-name>
    • Example: feat/owner-role
  • Enhancement Branches: For existing feature enhancements or improvements use: perf/<enhancement-description>
    • Example: perf/owner-access
  • Bug Fixes: For bug fixes, use: fix/<issue-description>
    • Example: fix/gas-estimation
  • Chores or Refactoring: For maintenance or refactoring tasks, use: chore/<task-description>
    • Example: chore/update-dependencies

Commit Message Guidelines

To maintain a clean and readable commit history, follow these guidelines:

  • Use Conventional Commits: Format your commit messages as follows:

    <type>: <short summary>

    Examples:

    • feat: signer role functionality
    • fix: gas estimation bug
  • Types of Commits:

    • feat: A new feature
    • fix: A bug fix
    • perf: A feature enhancement
    • docs: Documentation-only changes
    • test: Adding or updating tests
    • chore: Routine tasks like refactoring or updating dependencies

Community

  • Follow best practices for collaboration, and ensure tests are written for all new code.
  • Be respectful and considerate in your communication.
  • Follow the Code of Conduct.

Getting Help

If you have any questions, feel free to reach out by opening an issue, join the community chat, or send an email to hello@emmanueljet.com.

I appreciate your contributions and thank you for your support!

Emmanuel Joseph (JET)