Skip to content

Contributing Guide

See the full Contributing Guide on GitHub.

Quick Start

  1. Fork and clone the repository
  2. Install:

    uv sync --extra dev
    
    pip install -e ".[dev]"
    
  3. Test: uv run pytest

  4. Submit a pull request

Key Topics

The contributing guide covers:

  • Architecture - Three-stage pipeline: Kaitai > Parsers > Models
  • ChunkField descriptors - Write-through to binary, serialization roundtrips
  • CLI tools - aep-validate, aep-compare, aep-visualize
  • Adding features - New attributes, layer types, boolean flags, enum mappings
  • Testing - Parse tests, roundtrip tests, creating samples
  • Code style - Type hints, linting, documentation conventions