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.
- Code of Conduct
- Getting Started
- Development Process
- Pull Request Process
- Coding Standards
- Documentation Guidelines
- Community
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
-
Fork the Repository
- Visit the project repository you want to contribute to
- Click the "Fork" button in the top right
- Clone your fork locally
-
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
-
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
- Base your work on the
-
Choose an Issue
- Look for issues labeled
good first issue
orhelp wanted
- Comment on the issue to express your interest
- Wait for assignment or confirmation before starting work
- Look for issues labeled
-
Make Changes
- Write clear, commented code
- Include appropriate tests
- Update documentation as needed
- Keep commits focused and atomic
-
Testing
- Ensure all tests pass
- Add new tests for new features
- Check code coverage
- Verify changes locally
-
Before Submitting
- Update your fork with the latest changes from main
- Resolve any merge conflicts
- Run the full test suite
- Update documentation if needed
-
PR Guidelines
- Use our PR template
- Include a clear description of changes
- Link related issues
- Add screenshots for UI changes
- Request review from maintainers
-
Review Process
- Address reviewer feedback
- Make requested changes
- Respond to comments
- Be patient and respectful
- 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
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
- 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
- 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
If you have questions about contributing, please:
- Check existing documentation
- Search through issues
- 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.