Skip to content

Latest commit

 

History

History
114 lines (80 loc) · 3.32 KB

CONTRIBUTING.md

File metadata and controls

114 lines (80 loc) · 3.32 KB

Contributing to CntxtPY

First off, thank you for considering contributing to CntxtPY! It's people like you that make CntxtPY such a great tool.

🤝 Code of Conduct

By participating in this project, you are expected to uphold our Code of Conduct:

  • Use welcoming and inclusive language
  • Be respectful of differing viewpoints and experiences
  • Gracefully accept constructive criticism
  • Focus on what is best for the community
  • Show empathy towards other community members

🚀 How Can I Contribute?

Reporting Bugs

Before creating bug reports, please check the issue list as you might find out that you don't need to create one. When you are creating a bug report, please include as many details as possible:

  • Use a clear and descriptive title
  • Describe the exact steps which reproduce the problem
  • Provide specific examples to demonstrate the steps
  • Describe the behavior you observed after following the steps
  • Explain which behavior you expected to see instead and why
  • Include screenshots if relevant
  • Include your environment details (OS, Java version, etc.)

Suggesting Enhancements

Enhancement suggestions are tracked as GitHub issues. When creating an enhancement suggestion, please include:

  • A clear and descriptive title
  • A detailed description of the proposed functionality
  • Any possible drawbacks
  • Example use cases
  • Mock-ups or examples if applicable

Pull Requests

  1. Fork the repo and create your branch from main
  2. If you've added code that should be tested, add tests
  3. Ensure all tests pass
  4. Make sure your code follows the project's style guidelines
  5. Issue that pull request!

💻 Development Process

  1. Create an issue or respond to an existing one to discuss proposed changes
  2. Fork the repository and create a new branch
  3. Write and test your changes
  4. Document your changes if necessary
  5. Submit a pull request

Setting Up Your Development Environment

# Clone your fork
git clone https://github.com/your-username/CntxtPY.git

# Add the main repository as 'upstream'
git remote add upstream https://github.com/brandondocusen/CntxtPY.git

# Install dependencies
pip install -r requirements.txt

# Create a new branch for your feature
git checkout -b feature-name

Code Style Guidelines

  • Follow PEP 8 for Python code
  • Use meaningful variable and function names
  • Comment your code where necessary
  • Keep functions focused and modular
  • Write descriptive commit messages

📝 Documentation

  • Update the README.md if you change functionality
  • Maintain docstring coverage
  • Update any relevant examples
  • Add comments for complex logic

✅ Testing

  • Write unit tests for new functionality
  • Ensure all tests pass before submitting PR
  • Update tests if you modify existing functionality
  • Include both positive and negative test cases

🎯 Areas We Need Help With

  • Improving visualization capabilities
  • Adding support for more Javascript frameworks
  • Enhancing documentation
  • Performance optimization
  • Test coverage
  • UI/UX improvements

⚡️ Quick Links

📫 Questions?

Feel free to open an issue or reach out to the maintainers if you have any questions about contributing!


Thank you for contributing to CntxtPY! 🎉