# Contributing to Wan2.1 Thank you for your interest in contributing to Wan2.1! This document provides guidelines and instructions for contributing to the project. ## Table of Contents - [Code of Conduct](#code-of-conduct) - [Getting Started](#getting-started) - [Development Setup](#development-setup) - [Making Changes](#making-changes) - [Code Quality](#code-quality) - [Testing](#testing) - [Documentation](#documentation) - [Pull Request Process](#pull-request-process) - [Release Process](#release-process) ## Code of Conduct By participating in this project, you agree to abide by our [Code of Conduct](CODE_OF_CONDUCT.md). Please read it before contributing. ## Getting Started ### Prerequisites - Python 3.10 or higher - CUDA 11.8+ (for GPU support) - Git - Basic knowledge of PyTorch and diffusion models ### Finding Issues to Work On - Check the [Issues](https://github.com/Kuaishou/Wan2.1/issues) page for open issues - Look for issues labeled `good first issue` if you're new to the project - Issues labeled `help wanted` are specifically looking for contributors - If you want to work on a new feature, please open an issue first to discuss it ## Development Setup 1. **Fork and clone the repository** ```bash git clone https://github.com/YOUR_USERNAME/Wan2.1.git cd Wan2.1 ``` 2. **Create a virtual environment** ```bash python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate ``` 3. **Install in development mode** ```bash pip install -e .[dev] ``` 4. **Install pre-commit hooks** ```bash pre-commit install ``` 5. **Verify installation** ```bash pytest tests/ -v python -c "from wan.modules.model import WanModel; print('Import successful')" ``` ## Making Changes ### Branch Naming Convention Create a descriptive branch name following this pattern: - `feature/description` - New features - `fix/description` - Bug fixes - `docs/description` - Documentation updates - `refactor/description` - Code refactoring - `test/description` - Test additions or modifications Example: ```bash git checkout -b feature/add-video-preprocessing ``` ### Commit Message Guidelines Follow the [Conventional Commits](https://www.conventionalcommits.org/) specification: ``` ():