Thank you for your interest in contributing to the JADE code! This document provides guidelines and instructions for contributing to this project.
- Code of Conduct
- Getting Started
- Development Workflow
- Coding Standards
- Documentation
- Issue Reporting
- Communication
Please be respectful, inclusive, and constructive in all interactions.
- Fork the repository on GitHub by clicking the "Fork" button at the top-right of the repository page.
- Clone your fork locally:
git clone https://github.com/YOUR-USERNAME/JADE.git cd JADE - Add the original repository as an upstream remote:
git remote add upstream https://github.com/JADE-Exoplanets/JADE.git
-
Create a virtual environment (recommended):
python -m venv venv source venv/bin/activate # On Windows, use: venv\Scripts\activate
-
Install development dependencies:
pip install -r requirements.txt
main: The primary branch containing stable code- Create feature branches from
mainwith descriptive names:git checkout -b feature/new-atmospheric-model
- Write clear, concise commit messages
- Include references to issues if applicable (#issue-number)
- Keep commits focused on single changes when possible
-
Keep your fork updated:
git fetch upstream git checkout main git merge upstream/main
-
Create your feature branch from the updated main
-
When ready to submit your changes:
- Push your branch to your fork
git push origin feature/new-atmospheric-model
- Create a pull request from your fork to the main repository
- Provide a clear title and description
- Link any related issues
-
Respond to feedback and reviews
- Make requested changes
- Push additional commits to your branch (they will automatically appear in the PR)
-
Once approved, a maintainer will merge your changes
- Follow PEP 8 style guidelines for Python code
- Use meaningful variable and function names
- Include docstrings for all functions, classes, and modules
- Use type hints where appropriate
- Organize imports alphabetically within their sections
- Update documentation for any changed or new functionality
- Follow the existing documentation style
- Write clear, concise explanations
- Include examples where appropriate
When reporting issues, please include:
- A clear, descriptive title
- Steps to reproduce the issue
- Expected behavior
- Actual behavior
- System information (Python version, OS, etc.)
- Any relevant logs or output
- For general issues: Open an issue to discuss
- For security issues: Please report directly to maintainers
Thank you for contributing to JADE!