4,800+ Videos
Library
1,000+
Accounts
2,000+
Brands
Tech
Deep Dive
Account System
- Auth Google OAuth and email/password serving 1,000+ accounts with onboarding flow
- Collections Public or private moodboards with notes and collaborator invites
- Submissions Work submission tracking with status filtering and search
- Newsletter Mailchimp with automatic audience tagging based on questionnaire answers

Account dashboard - profile, collections, submissions, and analytics tabs
Awards Program
- Submission Multi-step entry flow with draft saving and Stripe checkout
- Pricing Tiered EUR/USD pricing managed through Stripe's price API
- Voting Community voting on jury-selected entries with one-vote-per-user enforcement

Awards submission flow - select entries, review details, and confirm before checkout
Work Submission
- Claim Flow Multi-field submission form with client-side validation and admin review
- Status Tracking Real-time status updates visible on the user's account dashboard
The Library
- Catalog 4,800+ entries with brand, artist, VFX studio, and campaign metadata
- Search 11 filter categories with relevance-ranked results across the full catalog
- Playback Videos autoplay on hover, with Instagram embed fallback on detail pages
4,800+ FOOH video ads indexed across 2,000+ brands, 500+ artists, and 129 countries.

Video detail page with impact score and full credits
Collections
- Moodboards Create and organize collections with per-item notes
- Sharing Public links and collaborator access for shared collections

Migration Complete
The platform was rebuilt from scratch on Next.js 16 and now serves fooh.com. Since launch it has kept growing with new features for creators and brands. The visuals on this page show the Hugo version it replaced.
- Why Next.js turns the architecture from a catalog into a platform. Entries go live instantly, users can upload directly, and new features ship faster.
- Framework
Hugo→ Next.js 16 - Database
Firestore→ PostgreSQL + Drizzle ORM - Status Live at fooh.com