Skip to content

Latest commit

 

History

History
141 lines (107 loc) · 3.99 KB

CONTRIBUTING.md

File metadata and controls

141 lines (107 loc) · 3.99 KB

Contributing to The Research Scientist Pod

First off, thank you for considering contributing to The Research Scientist Pod! 🎉

We welcome contributions from researchers, developers, and enthusiasts at all experience levels. Whether you're fixing a bug, improving documentation, or implementing a new feature, your help is appreciated.

📋 Table of Contents

Code of Conduct

Our community is dedicated to providing a welcoming and inclusive experience for everyone. We expect all participants to adhere to the following principles:

  • Be respectful and inclusive
  • Exercise empathy and kindness
  • Provide and receive constructive feedback gracefully
  • Focus on what's best for the community
  • Show courtesy and respect in all interactions

Getting Started

  1. Fork the Repository

    • Visit the project repository you want to contribute to
    • Click the "Fork" button in the top right
    • Clone your fork locally
  2. Set Up Development Environment

    • Ensure you have Python 3.8+ installed
    • Create a virtual environment:
      python -m venv venv
      source venv/bin/activate  # On Windows: venv\Scripts\activate
      
    • Install dependencies:
      pip install -r requirements.txt
      
  3. Create a Branch

    • Base your work on the main branch
    • Create a new branch for your feature/fix:
      git checkout -b feature/your-feature-name
      

Development Process

  1. Choose an Issue

    • Look for issues labeled good first issue or help wanted
    • Comment on the issue to express your interest
    • Wait for assignment or confirmation before starting work
  2. Make Changes

    • Write clear, commented code
    • Include appropriate tests
    • Update documentation as needed
    • Keep commits focused and atomic
  3. Testing

    • Ensure all tests pass
    • Add new tests for new features
    • Check code coverage
    • Verify changes locally

Pull Request Process

  1. Before Submitting

    • Update your fork with the latest changes from main
    • Resolve any merge conflicts
    • Run the full test suite
    • Update documentation if needed
  2. PR Guidelines

    • Use our PR template
    • Include a clear description of changes
    • Link related issues
    • Add screenshots for UI changes
    • Request review from maintainers
  3. Review Process

    • Address reviewer feedback
    • Make requested changes
    • Respond to comments
    • Be patient and respectful

Coding Standards

  • Follow PEP 8 style guide for Python code
  • Use meaningful variable and function names
  • Comment complex logic and algorithms
  • Keep functions focused and modular
  • Maintain consistent formatting
  • Use type hints where appropriate

Documentation Guidelines

When updating documentation:

  • Use clear, concise language
  • Include code examples where helpful
  • Add comments explaining complex concepts
  • Update relevant README files
  • Verify links and references
  • Include setup/installation steps

Version Control

  • Write meaningful commit messages
  • Use present tense ("Add feature" not "Added feature")
  • Reference issue numbers when applicable
  • Keep commits focused and atomic
  • Squash multiple commits if needed

Community

  • Join discussions about features and improvements
  • Help others with issues and questions
  • Share your knowledge and experiences
  • Provide feedback on proposed changes
  • Be welcoming to newcomers

Questions?

If you have questions about contributing, please:

  1. Check existing documentation
  2. Search through issues
  3. Contact us at suf@researchdatapod.com

Thank you for contributing to The Research Scientist Pod! 🚀

Note: These guidelines are not rules. Use your best judgment, and feel free to propose changes to this document in a pull request.