Ty 1c58f12c5d feat(fe): replace threshold mask with client-side sheet BG removal (flood-fill)
The green/black-sheet luminance threshold could not separate the slab from
the 'black' sheet, which in real photos reads at lum ~50 and overlaps the
slab's bark/shadow tones (measured on the user's samples: 0% green, 60-80%
dark, no brightness gap) - it removed 100% of the image. Replace the mask
pass with connectivity-based background removal: sample the sheet tone from
the border, flood-fill from the border marking sheet-connected pixels as
background, keep the connected remainder as the slab. Robust to tonal
overlap. Adds bgRemoval.ts (removeBackground + sampleSheetTone) with unit
tests proving a sheet-toned slab pixel survives via enclosure.
2026-09-25 09:07:39 -07:00
2026-08-24 11:00:51 -07:00

SlabUploader

Lists one-of-a-kind wood slabs on Whidbey Wood Store.

Start at docs/README.md for goals, what already shipped, and Milestone 3.

Artifact File
Docs map docs/README.md
Structure contract docs/STRUCTURE.md
Requirements (normative) docs/REQUIREMENTS.md
Milestones (ID subsets) docs/MILESTONES.md
Product overview docs/PRODUCT.md
Invariants and agent context AGENTS.md
Milestone 1 Capture (shipped) docs/capabilities/CAPTURE.md
Milestone 2 Photos (shipped) docs/capabilities/PHOTOS.md
Milestone 3 Create (paused — requirements reconciliation) docs/capabilities/CREATE.md
UAT practice walk docs/UAT-PRACTICE.md
Hosting deploy/

Owner: Ty. Store: https://www.whidbeywoodstore.com/ Repo: Ty_Tech/SlabUploader

S
Description
SlabUploader — mobile-first live-edge slab capture → WooCommerce publish (design + implementation). Mirrored from local TrueNAS TyTech_Internal/SlabUploader.
Readme MIT 21 MiB
Languages
TypeScript 43.5%
Python 37%
Svelte 18.8%
Shell 0.4%
Dockerfile 0.2%