Skip to content

Latest commit

Β 

History

History
94 lines (68 loc) Β· 2.68 KB

File metadata and controls

94 lines (68 loc) Β· 2.68 KB

Contributing to Qubit.NET

Hi there! πŸ‘‹
Thank you for considering contributing to Qubit.NET β€” your help is incredibly valuable! πŸš€
This document will guide you through the process.


πŸ›  How to Contribute

  1. Fork the repository
    Create your own copy of the project by clicking β€œFork” in the top right.

  2. Clone your fork

    git clone https://github.com/your-username/Qubit.NET.git
  3. Create a new branch
    Always create a separate branch for your work:

    git checkout -b your-feature-name
  4. Make your changes

    • Follow the existing coding style (naming conventions, formatting, etc.).
    • Keep functions clean and focused.
    • Write clear and concise comments if needed.
    • Write summaries
  5. Test your changes

    • Ensure your code works and doesn't break existing functionality.
  6. Commit your changes Use clear commit messages:

    git add .
    git commit -m "feat: create [name-here] gate"

    Commit message types:

    • feat: A new feature for the user (not a new feature for the build script).
    • fix: A bug fix for the user (not a fix to the build script).
    • docs: Changes to the documentation.
    • style: Formatting, missing semicolons, etc. (no production code change).
    • refactor: Refactoring production code (e.g., renaming a variable).
    • test: Adding missing tests or refactoring tests (no production code change).
    • chore: Updating build tasks, dependencies, etc. (no production code change).
  7. Push to your fork

    git push origin your-feature-name
  8. Open a Pull Request

    • Go to the original repository.
    • Click "New Pull Request" and select your branch.
    • Fill in the description, explaining what your PR changes/adds (add screenshots if needed).

πŸ“œ Code Guidelines

  • Naming: Use clear, descriptive names (e.g., ApplyControlledRx instead of DoStuff).
  • Format: Stick to the formatting style used across the project.
  • Simplicity: Prefer simple solutions over complex ones.
  • Testing: If you add a new functionality, add a basic usage example.

πŸ’¬ Communication

If you are unsure about anything, feel free to open an Issue first with your question or idea before coding!

We love friendly and respectful collaboration. ❀️


πŸš€ Areas You Can Help With

  • Add new quantum gates and features
  • Improve documentation
  • Write unit tests
  • Optimize existing gate implementations
  • Report bugs
  • Refactor existing codebase
  • Suggest new features

Thank you so much for helping make Qubit.NET better! πŸŽ‰
Let’s build something amazing together.