Mario Lavoie 148180c12e Full implementation - Vision AI, config, improved pipeline
Major changes:
- vision_analyzer.py: Real OpenAI/Anthropic vision API integration
  - Component detection with confidence scores
  - Atomizer hints extraction (objectives, constraints, parameters)
  - Material and feature identification
  - Timeline correlation with transcript

- config.py: Full configuration system
  - API settings (provider, keys, models)
  - Processing settings (Whisper model, frame interval, scene detection)
  - Output settings (BOM, hints, PDF template)
  - Config file support (~/.cad-documenter.toml)

- audio_analyzer.py: Enhanced transcription
  - Audio stream detection
  - Graceful fallback for missing audio
  - Keyword extraction
  - Technical term detection
  - Timeline correlation

- video_processor.py: Smart frame extraction
  - Scene change detection via ffmpeg
  - Configurable thresholds
  - Best frame selection

- doc_generator.py: Improved output
  - Better Markdown templates
  - BOM CSV export
  - Atomizer hints JSON
  - Component cards

- cli.py: Rich CLI with progress indicators
  - Config file support
  - --init-config flag
  - Verbose mode
  - Better error messages

- tests: Comprehensive test suite
2026-01-27 20:16:44 +00:00

CAD-Documenter

One video → Complete engineering documentation.

Transform video walkthroughs of CAD models into comprehensive, structured documentation — ready for CDRs, FEA setups, and integration with the Atomaste engineering ecosystem.

The Problem

  • Documentation is tedious — Engineers spend hours documenting CAD models manually
  • Knowledge lives in heads — Verbal explanations during reviews aren't captured
  • CDR prep is painful — Gathering images, writing descriptions, creating BOMs
  • FEA setup requires context — Atomizer needs model understanding that's often verbal

The Solution

Input

  • 📹 Video of engineer explaining a CAD model
  • Optional: CAD file references, existing P/N databases

Output

  • 📄 Markdown documentation — Structured, version-controlled
  • 📊 Bill of Materials — With standardized P/N
  • 🔧 Component registry — Parts, functions, materials, specs
  • 🎯 Atomizer hints — Parameters, constraints, objectives for FEA
  • 📑 CDR-ready PDF — Via Atomaste Report Standard

Installation

# Clone the repo
git clone http://100.80.199.40:3000/Antoine/CAD-Documenter.git
cd CAD-Documenter

# Install dependencies (using uv)
uv sync

Requirements

  • Python 3.12+
  • ffmpeg (for video/audio processing)
  • Whisper (for transcription)

Usage

# Basic documentation
cad-doc video.mp4

# Full pipeline with all integrations
cad-doc video.mp4 \
  --output docs/my_assembly/ \
  --atomizer-hints \
  --bom \
  --pdf

# Just extract frames
cad-doc video.mp4 --frames-only --output frames/

Architecture

┌─────────────────────────────────────────────────────────────────────┐
│                         CAD-DOCUMENTER                              │
│                                                                     │
│  ┌──────────┐    ┌──────────┐    ┌──────────┐    ┌──────────┐     │
│  │  Video   │───►│  Frame   │───►│  Vision  │───►│  Struct  │     │
│  │  Input   │    │  Extract │    │ Analysis │    │  Output  │     │
│  └──────────┘    └──────────┘    └──────────┘    └──────────┘     │
│       │              │                │               │            │
│       ▼              ▼                ▼               ▼            │
│  ┌──────────┐    ┌──────────┐    ┌──────────┐    ┌──────────┐     │
│  │  Audio   │───►│ Whisper  │───►│ Correlate│───►│ Generate │     │
│  │  Track   │    │Transcribe│    │ Timeline │    │   Docs   │     │
│  └──────────┘    └──────────┘    └──────────┘    └──────────┘     │
└─────────────────────────────────────────────────────────────────────┘

Integrations

  • Atomizer → FEA setup instructions from verbal explanations
  • Part Manager → Standardized P/N lookup
  • Atomaste Report Standard → Professional PDF generation

Project Status

🚧 Phase 1: Core Pipeline (MVP) — In Progress

See ROADMAP.md for full implementation plan.

License

MIT

Description
Video walkthrough → Complete engineering documentation
Readme 408 KiB
Languages
Python 100%