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 area | Where to see it |
|---|---|
| Photographer accounts, events, bulk upload, pricing, sales, profile, analytics | Photographer portal |
| Multi-photographer events with sports, teams, age groups, matches; images stay linked to their photographer | Event page, event wizard |
| Face, bib and jersey search; OCR; auto-tags; filters | Find my photos, gallery filters |
| High-volume upload, thumbnails, watermarking, secure originals, CDN, background processing | Upload pipeline, architecture |
| Hi-res, social, bundles, sponsored free downloads; ZAR; PayFast / Peach / Paystack; automatic commission; refunds; payouts | Photo preview, checkout, sales, payouts |
| Sponsor placements across homepage, search, galleries, previews, emails; scheduling; impressions, clicks, reporting | Admin sponsors, sponsor report |
| Admin dashboard: photographers/users, content, orders/payments, commissions/payouts, sponsors, coupons/refunds, analytics | Admin console |