BrandChecker — AI Luxury Brand Authenticator
Project Info
- Client Self-funded SaaS
- Year 2025 → present
- Category SaaS / AI Vision
- Stack Next.js 15 (web), React Native (Expo SDK 55, Expo Router), TypeScript, Prisma 6 + Postgres, NextAuth v5, Wayforpay, monorepo workspaces
- AI Claude Vision (claude-sonnet-4-6) — OCR + authenticity verdict
Project Description
BrandChecker is a pay-per-check (from $0.20) authenticity service for luxury and premium goods that I built end-to-end. Users photograph an item plus its label, stitching, hardware, and serial number; Claude Vision OCRs the serial, validates it against a brand-specific regex, then runs the full authenticity analysis and returns a confidence-scored verdict with a detailed HTML report and a public share link. The native Android app is live on Google Play; the iOS App Store build is in submission. The UI ships localized into 19 languages.
Architecture: a TypeScript monorepo with three workspaces — Next.js 15 web/API (App Router), Expo SDK 55 mobile (Expo Router + expo-camera + expo-secure-store), and a shared package holding the brand rules, types, and i18n strings (19 locales) used by both clients. Postgres + Prisma 6 stores users, checks, brand rules, and a 10-brand seed (LV, Dior, Chanel, Gucci, Hermes, Prada, Burberry, Fendi, Balenciaga, YSL) on top of 154+ recognised brands in the system.
The tricky parts: a split NextAuth config (the edge-compatible half powers the middleware so it still runs at the edge with the Credentials provider isolated to the Node runtime), HMAC-MD5-signed Wayforpay callbacks for pay-per-check billing, and a guided camera flow on mobile that enforces three required shots plus optional extras before submitting a check. Auth supports email/password, Google, and Apple Sign-In.
