Go native-only: remove the Python POC, move the Swift app to the top level

Adds --check (compile every effect without camera or window), EFFECTS.md
(the contract for writing effects) and AGENTS.md. The POC stays available
at the 'poc' tag.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Rasyidan Akbar F. 2026-10-05 20:33:18 +07:00
commit a20d3310db
29 changed files with 160 additions and 775 deletions

14
AGENTS.md Normal file
View file

@ -0,0 +1,14 @@
# MotionLab
A small native macOS app: camera in, a chain of Metal shader effects, out to a window, a recording or a virtual camera.
- **Adding or changing an effect:** read `EFFECTS.md` first. An effect is one file in `effects/`; the Swift code does not need to change.
- **Build:** `swift build -c release` (Command Line Tools are enough, no Xcode).
- **Check effects without a camera or window:** `.build/release/MotionLab --check`
- **Run:** `.build/release/MotionLab` (options are listed at the top of `Sources/MotionLab/main.swift`).
Layout:
- `Sources/MotionLab/` the app. `Shaders.swift` holds the wrapper every effect is compiled into; `Analysis.swift` computes the motion inputs; `Renderer.swift` runs the chain.
- `effects/` one `.metal` file per effect.
- `captures/` screenshots and recordings (not in git).