Skip to content

Latest commit

 

History

History
66 lines (51 loc) · 4.35 KB

CONTRIBUTING.md

File metadata and controls

66 lines (51 loc) · 4.35 KB

Contributing to nxtbn

Thank you for considering contributing to nxtbn! This guide provides an overview of how to contribute to our project and outlines the terms and conditions for contributions. Please read it carefully before you start.

Ways to Contribute

  • Code: Contribute code to fix bugs, add new features, or improve existing functionality.
  • Documentation: Help with documentation updates and creating user guides.
  • Community: Engage in discussions, answer questions, and support other contributors.

How to Contribute

  1. Fork the Repository: Click "Fork" at the top of the repository page to create your copy.
  2. Create a New Branch: Use a descriptive branch name for your contribution.
  3. Make Changes: Implement your changes following our coding guidelines.
  4. Run Tests: Ensure that your changes do not introduce errors.
  5. Submit a Pull Request: Open a pull request (PR) from your branch to the main branch, providing a clear description of the changes.

Getting Started

  • Check Open Issues: Before you start working on a contribution, check the issue tracker to see if someone else is already working on it or if there's an existing issue related to your idea.
  • Communication: If you're unsure about a task or need guidance, open an issue or join ongoing discussions. Collaboration is encouraged.

Coding Guidelines

  • Coding Style: Follow PEP 8 for Python code and standard conventions for React/JavaScript code.
  • Python Black Formatting: We use Black to format Python code. Ensure your code is formatted with Black before committing.
  • Existing Patterns: Follow existing code structures and naming conventions in the codebase to maintain consistency.
  • Comments and Documentation: Add comments to explain complex logic, and update relevant documentation or docstrings as needed.

Commit Guidelines

  • Commit Messages: Use clear and consistent commit messages. Follow this format:
    • feat: for new features.
    • fix: for bug fixes.
    • docs: for documentation changes.
    • style: for formatting changes.
    • refactor: for code restructuring without changing functionality.
  • Commit Frequency: Commit after completing a logical unit of work. Keep commits manageable.
  • Review Commits: Review your commits before pushing to ensure proper formatting and clear messages.

Pull Request Guidelines

  • Branch Naming: Use descriptive branch names, like feature/add-login or fix/bug-123.
  • Pull Request Description: Describe your changes thoroughly. Include what problem it solves, how to test it, and any related issues.
  • Automated Tests: Ensure your changes pass existing tests and add new tests if required.
  • Review and Feedback: Be open to feedback and willing to adjust your code based on reviewer comments.

Best Practices

  • Code Consistency: Follow the existing code patterns. Consistency helps maintainers and other contributors understand your changes.
  • Security: Ensure your changes don't introduce security vulnerabilities. If you find a security issue, report it privately to the maintainers.
  • Collaboration: Work with other contributors and maintainers. Communication is key to successful contributions.
  • Testing: Always test your changes before submitting a pull request. Use automated tests to ensure code quality.

Code of Conduct

All contributors must follow our Code of Conduct. We expect a respectful and inclusive environment.

Terms and Conditions

By contributing to nxtbn, you agree to the following:

  • Contributions are owned by Bytenyx Limited, the project maintainer, or its successors.
  • Intellectual property rights from contributions are transferred to Bytenyx Limited.
  • Contributions must comply with the project's licensing terms as defined in the LICENSE file.

Right to Modify

Bytenyx Limited reserves the right to change, modify, update, or terminate any terms and conditions or policies related to this project at any time. You will be notified of significant changes, and by continuing to contribute, you agree to abide by the updated terms.

Need Help?

If you have questions or need support, please create an issue in the repository or contact us at support@bytenyx.com.

Thank you for contributing to nxtbn!