services:
  kicad-wasm-builder:
    build:
      context: ..
      dockerfile: docker/Dockerfile
    # Container name is auto-generated with project prefix (set in build.sh)

    # Resource limits (adjust based on your machine)
    deploy:
      resources:
        limits:
          cpus: '10'
          memory: 32G

    volumes:
      # Host source mounted read-only at staging location
      # (rsync'd to /workspace on container start to fix macOS timestamp issues)
      - ..:/workspace-host:ro
      # Synced source in Docker volume (consistent timestamps)
      - workspace-src:/workspace
      # Named volume for build cache (faster than bind mount on macOS)
      - kicad-build-cache:/workspace/build-wasm
      # Output directory for easy access to final WASM files
      - ../output:/workspace/output

    # Keep container running for interactive use
    stdin_open: true
    tty: true

volumes:
  kicad-build-cache:
  workspace-src:
