What is real, what is scripted, what we need from you

This is an evaluation build: static HTML that runs entirely in your browser with no server. Everything you click is wired to one shared dataset, so an action in one role shows up in the others.

Requirements traceability

Every line of the scope maps to a module and a screen. Full table in docs/REQUIREMENTS.md.

Scope areaWhere to see it
Photographer accounts, events, bulk upload, pricing, sales, profile, analyticsPhotographer portal
Multi-photographer events with sports, teams, age groups, matches; images stay linked to their photographerEvent page, event wizard
Face, bib and jersey search; OCR; auto-tags; filtersFind my photos, gallery filters
High-volume upload, thumbnails, watermarking, secure originals, CDN, background processingUpload pipeline, architecture
Hi-res, social, bundles, sponsored free downloads; ZAR; PayFast / Peach / Paystack; automatic commission; refunds; payoutsPhoto preview, checkout, sales, payouts
Sponsor placements across homepage, search, galleries, previews, emails; scheduling; impressions, clicks, reportingAdmin sponsors, sponsor report
Admin dashboard: photographers/users, content, orders/payments, commissions/payouts, sponsors, coupons/refunds, analyticsAdmin console