Contributing - janardhanhere/langgraph-deployment-kit GitHub Wiki

Contributing

Thank you for your interest in contributing to the LangGraph Deployment Kit! This guide will help you get started with contributing to the project.

Getting Started

  1. Fork the repository on GitHub
  2. Clone your fork locally:
    git clone https://github.com/your-username/langgraph-deployment-kit.git
    cd langgraph-deployment-kit
    
  3. Set up a development environment:
    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
    pip install -e ".[dev]"  # Install with development dependencies
    

Development Workflow

  1. Create a new branch for your feature or bug fix:

    git checkout -b feature/your-feature-name
    
  2. Make your changes and ensure tests pass:

    pytest
    
  3. Format your code using ruff:

    ruff format .
    
  4. Submit a pull request to the main repository

Project Structure

  • src/ - Main source code
    • agents/ - Agent implementations
    • core/ - Core functionality and settings
    • memory/ - Persistence implementations
    • schema/ - Data models and schemas
    • service/ - FastAPI service implementation
  • examples/ - Example projects using the kit
  • tests/ - Test suite
  • agent-react-hook/ - React hook for frontend integration

Adding a New Agent

See the Creating Agents guide for detailed instructions on adding new agents.

Testing

Run the test suite to ensure your changes don't break existing functionality:

pytest

For specific test files:

pytest tests/service/test_service.py

Documentation

When adding new features, please update the corresponding documentation:

  • Update the README.md if needed
  • Add or update Wiki documentation
  • Add comments to your code

Code Style

We follow these coding conventions:

  • Use type hints for all function parameters and return values
  • Format code using ruff
  • Write descriptive docstrings for functions and classes
  • Use meaningful variable names
  • Keep functions focused on a single responsibility

Pull Request Process

  1. Update the README.md or documentation with details of changes
  2. Update the tests to cover your changes
  3. Your PR should pass all CI checks
  4. Get approval from at least one maintainer

License

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