Skip to content

Latest commit

 

History

History
104 lines (62 loc) · 2.05 KB

File metadata and controls

104 lines (62 loc) · 2.05 KB

Contributing to Sharif OCW Scrapy's Downloader

Guidelines for contributing to this project

🚀 Getting Started

Thank you for considering contributing to Sharif OCW Scrapy's Downloader! This document outlines the process for contributing to the project and addresses common questions.

📝 Code of Conduct

This project adheres to a Code of Conduct that all participants are expected to follow. Please read CODE_OF_CONDUCT.md before contributing.

🔄 Development Workflow

Setting Up the Development Environment

  1. Fork the repository and clone your fork locally

  2. Install dependencies:

    make setup_dev

or

make uv_sync_all
  1. Create a branch for your changes:

    git checkout -b feature/your-feature-name

Making Changes

  1. Make your changes following our coding standards

  2. Write tests for your changes

  3. Run tests to ensure everything passes:

    make uv_run_tests
  4. Update documentation as needed

Submitting Changes

  1. Commit your changes using conventional commit messages
  2. Push to your fork
  3. Submit a pull request

📊 Coding Standards

  • Follow PEP 8 guidelines

  • Use type hints

  • Write docstrings in the Google format

  • Ensure code passes our linters:

    make uv_sync_lint

📚 Documentation

Updates to documentation are just as important as code changes. Please:

  • Update the docs to reflect your changes

  • Add examples where appropriate

  • Use our documentation tools:

    make setup_docs
    make uv_mkdoc_build

🧪 Testing

  • Write unit tests for new features
  • Ensure existing tests continue to pass
  • Aim for high test coverage

🔍 Review Process

  1. A maintainer will review your PR
  2. Changes may be requested
  3. Once approved, your PR will be merged

📄 License

By contributing, you agree that your contributions will be licensed under the project's MIT License.


Thank you for your contributions! 🙏