Skip to content

Platforms Starter Kit

Next.js template for building multi-tenant applications with the App Router and Redis.

Framework
Database
New Platforms Example

Next.js Multi-Tenant Example

A production-ready example of a multi-tenant application built with Next.js 15, featuring custom subdomains for each tenant.

Features

  • ✅ Custom subdomain routing with Next.js middleware
  • ✅ 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

Getting Started

Prerequisites

  • Node.js 18.17.0 or later
  • pnpm (recommended) or npm/yarn
  • Upstash Redis account (for production)

Installation

  1. Clone the repository:

    git clone https://github.com/vercel/platforms.git
    cd platforms
  2. Install dependencies:

    pnpm install
  3. Set up environment variables: Create a

    .env.local
    file in the root directory with:

    KV_REST_API_URL=your_redis_url
    KV_REST_API_TOKEN=your_redis_token
  4. Start the development server:

    pnpm dev
  5. Access the application:

Multi-Tenant Architecture

This application demonstrates a subdomain-based multi-tenant architecture where:

  • Each tenant gets their own subdomain (
    tenant.yourdomain.com
    )
  • The middleware 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 dynamically mapped to tenant-specific content

The middleware (

middleware.ts
) intelligently detects subdomains across various environments (local development, production, and Vercel preview deployments).

Deployment

This application is designed to be deployed on Vercel. To deploy:

  1. Push your repository to GitHub
  2. Connect your repository to Vercel
  3. Configure environment variables
  4. Deploy

For custom domains, make sure to:

  1. Add your root domain to Vercel
  2. Set up a wildcard DNS record (
    *.yourdomain.com
    ) on Vercel
New Platforms Example

Platforms Starter Kit

Next.js template for building multi-tenant applications with the App Router and Redis.

Framework
Database

Next.js Multi-Tenant Example

A production-ready example of a multi-tenant application built with Next.js 15, featuring custom subdomains for each tenant.

Features

  • ✅ Custom subdomain routing with Next.js middleware
  • ✅ 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

Getting Started

Prerequisites

  • Node.js 18.17.0 or later
  • pnpm (recommended) or npm/yarn
  • Upstash Redis account (for production)

Installation

  1. Clone the repository:

    git clone https://github.com/vercel/platforms.git
    cd platforms
  2. Install dependencies:

    pnpm install
  3. Set up environment variables: Create a

    .env.local
    file in the root directory with:

    KV_REST_API_URL=your_redis_url
    KV_REST_API_TOKEN=your_redis_token
  4. Start the development server:

    pnpm dev
  5. Access the application:

Multi-Tenant Architecture

This application demonstrates a subdomain-based multi-tenant architecture where:

  • Each tenant gets their own subdomain (
    tenant.yourdomain.com
    )
  • The middleware 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 dynamically mapped to tenant-specific content

The middleware (

middleware.ts
) intelligently detects subdomains across various environments (local development, production, and Vercel preview deployments).

Deployment

This application is designed to be deployed on Vercel. To deploy:

  1. Push your repository to GitHub
  2. Connect your repository to Vercel
  3. Configure environment variables
  4. Deploy

For custom domains, make sure to:

  1. Add your root domain to Vercel
  2. Set up a wildcard DNS record (
    *.yourdomain.com
    ) on Vercel

Unleash New Possibilities

Deploy your app on Vercel and unlock its full potential