Development Guide
Welcome to the QEM development documentation. This guide is for contributors who want to help improve QEM.
Getting Started
To contribute to QEM:
Fork the repository on GitHub
Set up your development environment
Make your changes
Run tests and ensure code quality
Submit a pull request
Development Setup
# Clone your fork
git clone https://github.com/yourusername/qem.git
cd qem
# Create development environment
conda create -n qem-dev python=3.11
conda activate qem-dev
# Install in development mode
pip install -e ".[dev]"
# Install pre-commit hooks
pre-commit install
Code Standards
QEM follows these coding standards:
PEP 8 style guide
Type hints for all public functions
Docstrings in NumPy format
Tests for all new functionality
Ruff for linting and formatting
Running Tests
# Run all tests
pytest
# Run with coverage
pytest --cov=qem
# Run specific test file
pytest tests/test_model.py
Building Documentation
cd docs
make html
# View documentation
open build/html/index.html
Contributing Guidelines
Please see Contributing to QEM for detailed guidelines on:
Code review process
Submitting issues
Writing documentation
Adding new features