◇ Case study / 02 · 2026
Wall Street Jr. Academy
Multi-school education platform

◇ The problem
What we were trying to solve
Wall Street Jr wanted to launch Dubai's first multidisciplinary online academy — finance, AI, design, and business under one brand, with cohort-based delivery and an AI-powered academy advisor. The market is owned by Udemy, Coursera, and Wall Street Prep. The fix: position by intent ('multidisciplinary, mentor-led, Dubai-grounded'), not by topic.
◇ The solution
How it shipped
Built on Next.js 14 (App Router) for SSR + SEO, Supabase for course catalog and per-user enrollment state, Vercel edge for global delivery. Integrated a Claude-powered academy advisor ('ATLAS') sitting on every page that captures leads through a multi-turn conversation, then ships them to Google Sheets + Slack via n8n. Stripe payments, Mux video hosting, and Supabase Auth all wired now.
◇ Decisions
Engineering choices worth flagging
Next.js App Router (vs Pages or SPA)
Marketing pages are the SEO surface. Server Components render course catalog and school pages fully indexed; Client Components only where interactivity is needed (cart, ATLAS chat, dashboard). Pages Router would have meant getServerSideProps per dynamic page; a SPA would have meant client-rendered HTML for indexing-critical pages.
Stripe for payments
Already supports MENA (Tax + AED). Built-in coupon logic. Webhook-driven enrollment fits cleanly with Supabase Edge Functions. The alternative (Tap, Network International) would have been faster local checkout for UAE residents but worse global support — and the audience is half Indian + GCC, so Stripe wins on geographic coverage.
Mux for video (over self-hosted or YouTube)
Self-hosted = encoding pipeline + storage + CDN = engineering tax. YouTube = no per-user gating, embeds break the brand, unlisted is not actually private. Mux = signed playback URLs scoped per user + per cohort, automatic captions, encoding handled.
◇ Results
What shipped
◇ Stack
Tools used
◇ Keep exploring