Skip to content

Files

Latest commit

923ce9d · Jan 26, 2025

History

History
91 lines (69 loc) · 2.29 KB

CONTRIBUTING.md

File metadata and controls

91 lines (69 loc) · 2.29 KB

Contributing to Rhesis SDK

Thank you for your interest in contributing to Rhesis SDK! This document provides guidelines and instructions for contributing.

Development Setup

  1. Clone the repository:
git clone https://github.com/rhesis-ai/rhesis-sdk.git
cd rhesis-sdk
  1. Install Poetry (our dependency manager):
curl -sSL https://install.python-poetry.org | python3 -
  1. Install dependencies including development tools:
poetry install --with dev

Optionally, you can install the development tools and documentation:

poetry install --with dev,docs

Development Workflow

  1. Create a new branch for your feature:
git checkout -b feature/your-feature-name
  1. Enable pre-commit hooks:
poetry run pre-commit install
  1. Make your changes and ensure all checks pass:
poetry run black .        # Format code
poetry run flake8        # Lint code
poetry run mypy          # Type check
poetry run pytest        # Run tests
  1. Commit your changes:
git add .
git commit -m "feat: your descriptive commit message"
  1. Push your changes and create a Pull Request:
git push origin feature/your-feature-name

Pull Request Guidelines

  • Follow the Conventional Commits specification for commit messages
  • Include tests for new features
  • Update documentation as needed
  • Ensure all checks pass before requesting review

Code Style

We use several tools to maintain code quality:

Testing

  • Write tests for all new features and bug fixes
  • Tests should be placed in the tests/ directory
  • Run the test suite with poetry run pytest

Documentation

  • Update documentation for any changed functionality
  • Include docstrings for new functions and classes
  • Keep the README.md up to date with any user-facing changes

Questions or Need Help?

If you have questions or need help with the contribution process: