# Planar beta walkthrough media

These nine frames are deterministic Flutter renders from TatMapper's shipping
widget tree, generated by `app/tool/showcase_capture_test.dart` at a
1080 × 2400 physical viewport and 2.5 device-pixel ratio.

They are repository and product-demo media, not Play Store/App Store screenshots
and not evidence of a physical-device pass. Android/iOS system chrome is
intentionally absent. Store screenshots must be recaptured from signed release
builds on the final supported device matrix.

## Frames

1. `01-home.png` — local-first home and sample-project entry point.
2. `02-photo.png` — registered practice-pad photo and same-plane reference.
3. `03-scale.png` — two calibration points, 100 mm input, and computed px/mm.
4. `04-trace.png` — separate photo-backed trace strokes.
5. `05-design.png` — normalized transparent PNG placement controls.
6. `06-export.png` — physical dimensions, scale source, A4 page review, and
   export warning.
7. `07-scale-review-notice.png` — narrow dark-mode Scale review with the
   warning reserved above buttons, matching the owner-reported regression.
8. `08-background-removal.png` — explicit local design cleanup with the
   processed artwork shown on a transparency grid.
9. `09-tiled-export.png` — numbered oversized layout, page count, and final
   physical-measurement warning.

`walkthrough.gif` is a six-frame, 432 × 960 presentation copy of those exact PNG
renders. It does not add, remove, or simulate product UI.

## Provenance

- Product branch: `feat/planar-photo-beta` / draft PR #108. The exact verified
  commit and CI run are recorded in the current release-readiness evidence
  ledger.
- Source media: the synthetic OpenAI-generated practice pad and botanical input
  documented in `app/assets/demo/README.md`.
- The botanical overlay is processed by
  `PlanarMediaService.normalizeDesignImage`, the same production normalization
  used by the in-app sample/import path.
- No personal images, customer data, analytics, or production credentials are
  present.

## Reproduce

From `app/` with the pinned Flutter toolchain:

```bash
flutter pub get
flutter test --no-pub --update-goldens tool/showcase_capture_test.dart
cd ..
python scripts/build_walkthrough.py
```

The GIF builder uses Pillow 11.2.1 and performs only a deterministic resize and
animation assembly; it does not alter or invent product UI.

The PNG output is written to `app/tool/showcase/` and uploaded by CI as the
`tatmapper-showcase-previews` artifact. Review all six frames before updating
the committed media; a passing render test proves reproducibility, not store or
physical-device readiness.
