Guiadalajara
We built Guiadalajara: Guadalajara's super-app, designed to welcome the world for the FIFA World Cup 2026. We didn't ship another directory; we solved the gap between the tools a local business juggles today — Maps, social media, delivery apps — by uniting them in a single multi-tenant platform where people find the business, book it, order delivery, pay and follow it, all in their own language. It rests on a serious domain: a 79-model Prisma schema with strict multi-tenancy (tenantId on every table) and per-business IAM, 102 Next.js pages, a 41-route admin panel, slot-based reservations, map-drawn polygon delivery zones, payments and wallets via Stripe Connect, a full social layer with gamification, and genuine 8-language internationalization including reviewed RTL Arabic. It runs in production with horizontal replicas and zero-downtime deploys, on hardened infrastructure. The proof isn't a demo: it's measured, deployed production code.
Category
Super-App
Stack
Next.js, Flutter, TypeScript
The problem
A World Cup host city receives millions of foreign-language visitors who don't know the local businesses, while those businesses are scattered across Google Maps, social media and delivery apps that own the customer relationship and take a heavy cut. The problem isn't any single tool, it's the gap between them: a business has no home of its own where people can find it, book it, order from it and follow it in the tourist's own language. Guiadalajara closes that gap with one local platform.
What we built
- —Geographic directory navigable by country, state, category and subcategory, with 32 categories and ~376 subcategories and per-category/per-business translations across all 8 languages
- —Public "link-in-bio" business profiles (/n/username routes) with image gallery, products/services, social links and business hours
- —Reservation engine with slot-based availability and reservation states, kept separate from the business's operating hours
- —Full food delivery: orders, line items, courier assignment and map-drawn polygon delivery zones (Leaflet/MapLibre)
- —Payments and monetization with Stripe: PaymentIntent, Stripe Connect with destination charges, plan-based subscriptions, and digital wallets with transaction history
- —Social layer: posts, reactions, comments, follows on users and businesses, saved posts, badges/gamification and push notifications
- —Verified reviews and a reviewer program: review tasks with an 8-state workflow, evidence, check-ins, strikes and rankings
- —Admin panel spanning 41 routes (businesses, orders, commissions, site protection) plus an owner "mi-cuenta" panel with a 3-step operation wizard
- —Real multi-tenancy (tenantId on every table) and per-business IAM with roles and members, on a 79-model, 24-enum schema
- —Cascading commission hierarchy (Global → Category → Subcategory → Business) with audit trail and monthly summaries
- —End-to-end internationalization in 8 languages, including reviewed RTL support for Arabic
- —Native apps: a Flutter (melos) monorepo with multiple apps alongside the Next.js web frontend