{"repo":"vercel/platforms","free":true,"listed":false,"github":"https://github.com/vercel/platforms","clone":"git clone https://github.com/vercel/platforms.git","description":"A full-stack Next.js app with multi-tenancy.","language":"TypeScript","stars":6698,"topics":["nextjs","vercel","tailwindcss","multi-tenancy","multi-tenant-applications"],"license":null,"category":"dashboards-admin","readme_excerpt":"Next.js Multi-Tenant Example A production-ready example of a multi-tenant application built with Next.js 16, featuring custom subdomains for each tenant. Features - ✅ Custom subdomain routing with Next.js proxy - ✅ Tenant-specific content and pages - ✅ Shared components and layouts across tenants - ✅ Redis for tenant data storage - ✅ Admin interface for managing tenants - ✅ Emoji support for tenant branding - ✅ Support for local development with subdomains - ✅ Compatible with Vercel preview deployments Tech Stack - Next.js 16 with App Router - React 19 - Upstash Redis for data storage - Tailwind 4 for styling - shadcn/ui for the design system Getting Started Prerequisites - Node.js 20.9.0 or later - pnpm (recommended) or npm/yarn - Upstash Redis account (for production) Installation 1. Clone the repository: 2. Install dependencies: 3. Set up environment variables: Create a .env.local file in the root directory with: 4. Start the development server: 5. Access the application: - Main site: http://localhost:3000 - Admin panel: http://localhost:3000/admin - Tenants: http://[tenant-name].localhost:3000 Multi-Tenant Architecture This application demonstrates a subdomain-based multi-tenant architecture where: - Each tenant gets their own subdomain ( tenant.yourdomain.com ) - The proxy handles routing requests to the correct tenant - Tenant data is stored in Redis using a subdomain:{name} key pattern - The main domain hosts the landing page and admin interface - Subdomains are dynami","default_branch":null,"files":null,"tree":[],"storefront":"/r/vercel","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/vercel/platforms/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}