Product #04 / 12
Audit of MenuCraft — QR menu + online ordering SaaS for restaurants. Next.js 14 with real NextAuth. Marketing page mostly empty on scroll; dashboard-gated pages blocked by the shared basePath auth bug.
MenuCraft is a QR-menu ordering SaaS with admin + restaurant owner panels. The landing page renders a solid hero with iPhone mockup but the sections below (features, pricing, testimonials) don't load their actual content blocks — only placeholders. Login is blocked by the NextAuth basePath issue (same as FundHive BUG-001). Pricing page renders correctly. Features page returns 404.
Credentials seeded: [email protected] / Admin123!, [email protected] / Demo123!, plus 3 real-restaurant test emails.
| Framework | Next.js 14 (App Router, basePath=/menucraft) |
| Port | 3002 |
| Public URL | codemytown.com/menucraft/ |
| DB | Prisma + SQLite, seeded |
| Auth | NextAuth 5-beta (same basePath bug class) |


/auth/login?callbackUrl=/login without basePath → 404. Same class as FundHive BUG-001.

/auth/login. Route exists in source but is behind auth./menucraft/features, redirects to codemytown.com/auth/login?callbackUrl=/... — 404.menucraft.codemytown.com OR upgrade next-auth@^5.0.0-beta.30./'use client' failing to hydrate silently, or missing feature-data array./matcher protects /features (marketing page should be public)/features from protected paths or change the route group.Deploy on subdomain to unblock auth, then debug the landing-page hydration issue (BUG-002). Pricing and core structure are solid — this product is ~2-3 hours of polish from shipping.