Next.jsReactStarter

turbo-start-contentful — Next.js Starter Template

By robotostudio

A monorepo starter template built on Next.js App Router, Contentful CMS, Shadcn UI, and Turborepo, with a built-in page builder and blog system.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

3 previews
Desktop homepage1 / 3
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 3

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-04View source

What stands out

A quick read of the recorded project description.

01

Monorepo structure: apps/web application separated from shared ui, eslint-config, and typescript-config packages

02

Contentful headless CMS integration with rich text rendering, preview mode, and image optimization

03

Page builder supports reusable blocks such as Hero, CTA, FAQ, and feature cards

04

Built-in blog system and SEO support (metadata, sitemap, JSON-LD, robots.txt)

05

UI built with Shadcn UI and Tailwind CSS, with TypeScript used across the full stack

06

Scripts such as dev, build, lint, and type-check managed centrally via TurboRepo

Template Details

This is a monorepo starter template maintained by Roboto Studio that places the Next.js frontend application and shared packages in a single repository. The repository is structured into apps/web (the Next.js application) and three shared packages under packages: ui, eslint-config, and typescript-config, with build tasks managed centrally via turbo.json at the root.

The content layer uses Contentful as a headless CMS, supporting the composition of reusable blocks such as Hero, CTA, FAQ, and feature cards through a page builder, and provides a blog system with rich text rendering. The template includes a preview mode for draft content and image optimization based on the Contentful Delivery API. For SEO, it provides metadata, sitemaps, JSON-LD structured data, and robots.txt.

Before use, you need Node.js 24+, pnpm, and a Contentful account and space, and you must configure .env.local under apps/web with the space ID, access token, preview token, environment name, and preview secret. After adding new content types, run typegen to generate TypeScript types, then add the corresponding rendering components. The deployment documentation uses Vercel as an example, where you need to point the root directory to apps/web and configure environment variables; other platforms that support Node.js can also be used for deployment.

Next.jsStarter

Is it right for your project?

Use Cases

  • Building a marketing site or corporate website with Contentful as the content source
  • Using a page builder to let editors freely compose homepage and landing page blocks
  • Maintaining a frontend application alongside shared UI and configuration packages in a monorepo
  • Needing a Next.js project starting point with a blog, preview mode, and basic SEO capabilities

Suitable For

  • Developers familiar with Next.js App Router and TypeScript
  • Teams already using or planning to use Contentful as their CMS
  • Multi-person collaborative projects that need a monorepo and shared component library
  • Individuals or teams who want to build on MIT-licensed code

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    Requires Node.js 24+; pnpm is recommended as the package manager

  2. 2

    You must provide your own Contentful account and space, and create .env.local under apps/web with the space ID, access token, preview token, environment name, and preview secret

  3. 3

    After cloning the repository, run pnpm install, then start with pnpm run dev; the default address is http://localhost:3000

  4. 4

    After adding new Contentful content types, run pnpm --filter web typegen to generate TypeScript types

  5. 5

    When deploying to Vercel, set the root directory to apps/web and configure environment variables; other platforms that support Node.js can also be used

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version under the MIT license in the public repository; the free scope is the code of this version and does not mean that external services or third-party assets are free.

Must comply with when using

  • You may use, modify, commercialize, and distribute the code of this version for free.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses and cannot be judged solely by the code's MIT license.
  • External services such as domains, hosting, databases, payments, or AI may incur additional charges.
  • Using this template requires your own Contentful account and space, which is an external service dependency; you must register yourself and bear the corresponding service costs.
  • Before running, you must configure .env.local under apps/web with the Contentful space ID, access token, preview token, environment name, and other secrets; otherwise content cannot be fetched.
  • Preview mode requires additional configuration of the preview secret CONTENTFUL_PREVIEW_SECRET, which is a project-specific external credential requirement.
  • Requires Node.js 24 or later; lower versions cannot run as documented.
  • The documentation recommends pnpm as the package manager, and installation and script commands are based on pnpm.
  • The deployment example relies on the Vercel platform, requiring you to connect the repository to Vercel and configure environment variables, which is an external hosting service dependency.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

- Contentful account and space

Original README

CONTENTFUL_SPACE_ID=your_space_id CONTENTFUL_ACCESS_TOKEN=your_access_token CONTENTFUL_PREVIEW_ACCESS_TOKEN=your_preview_token CONTENTFUL_ENVIRONMENT=master

Original README

CONTENTFUL_PREVIEW_SECRET=your_preview_secret

Original README

- Node.js 24+

Original README

- pnpm (recommended package manager)

Original README

1. Connect your repository to Vercel

Original README
https://github.com/robotostudio/turbo-start-contentful/blob/main/LICENSEhttps://github.com/robotostudio/turbo-start-contentful/blob/main/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-05. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
GitHub
Documentation and maintenance reference score
More documented · 87 / 100
Technologies
Next.js · React
Website type
Starter
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2026-09-02
Screenshot last checked
2026-10-05

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Next.js as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Review declaration: [email protected] · 2026-10-05

Inspect the recorded source material

SHA-256: 065bdf20368c54c3dc18ef718de289d4127f1a10745ad1352dea70cdefef04f6

2026-10-05T00:25:22.850Z

Source file / repository
# Next.js Monorepo with Contentful CMS

A modern, full-stack monorepo template built with Next.js App Router, Contentful CMS, Shadcn UI, and TurboRepo for building scalable web applications with a top-tier content management system.

Built by [Roboto Studio](https://robotostudio.com/services/contentful) and used in production client builds.

<img width="2401" height="1260" alt="Turbostart contenful opengraph final" src="https://github.com/user-attachments/assets/8172d614-ed00-4d17-b65f-0661484f0e39" />

## What's Inside

This monorepo demonstrates modern web development practices with a focus on developer experience, performance, and maintainability.

### 🏗️ Monorepo Structure

```
turbo-next-contentful/
├── apps/
│   └── web/                 # Next.js frontend application
├── packages/
│   ├── ui/                  # Shared UI components (Shadcn UI)
│   ├── eslint-config/       # Shared ESLint configuration
│   └── typescript-config/   # Shared TypeScript configuration
└── turbo.json              # TurboRepo configuration
```

### 🚀 Frontend Application (`apps/web`)

- **Next.js 16 App Router** - Modern React framework with file-based routing
- **TypeScript** - Type-safe development experience
- **Shadcn UI + Tailwind CSS** - Beautiful, accessible UI components
- **Server Components** - Optimized rendering and performance
- **Dynamic Page Builder** - Flexible content layouts from Contentful
- **Blog System** - Full-featured blog with rich text support
- **SEO Optimized** - Built-in metadata, sitemaps, and structured data

### 📝 Content Management

- **Contentful CMS** - Headless content management system
- **Rich Text Rendering** - Custom rich text components
- **Preview Mode** - Live preview of draft content
- **Image Optimization** - Automatic image optimization and delivery

### 🔧 Development Tools

- **TurboRepo** - Monorepo build system with intelligent caching
- **Shared Packages** - Reusable components, configs, and utilities
- **ESLint & Prettier** - Code quality and formatting
- **TypeScript** - End-to-end type safety

## Getting Started

### Prerequisites

- Node.js 24+
- pnpm (recommended package manager)
- Contentful account and space

### 1. Clone and Install

```bash
git clone <your-repo-url>
cd turbo-next-contentful
pnpm install
```

### 2. Environment Setup

Create a `.env.local` file in `apps/web/`:

```bash
# Contentful Configuration
CONTENTFUL_SPACE_ID=your_space_id
CONTENTFUL_ACCESS_TOKEN=your_access_token
CONTENTFUL_PREVIEW_ACCESS_TOKEN=your_preview_token
CONTENTFUL_ENVIRONMENT=master

# Preview Mode
CONTENTFUL_PREVIEW_SECRET=your_preview_secret
```

### 3. Start Development

```bash
pnpm run dev
```

This starts the Next.js application at [http://localhost:3000](http://localhost:3000).

## Content Structure

The application supports various content types through Contentful:

- **Pages** - Dynamic pages with flexible page builder
- **Blog Posts** - Articles with rich text content
- **Global Settings** - Site-wide configuration
- **Navigation** - Header and footer content
- **Reusable Sections** - Hero, CTA, FAQ, Feature cards

## Key Features

### 🎨 Page Builder

Flexible content sections that can be mixed and matched:

- Hero sections with call-to-actions
- Feature cards with icons
- FAQ accordions
- Call-to-action blocks

### 📱 Responsive Design

Mobile-first approach with Tailwind CSS utilities and responsive components.

### ⚡ Performance

- Server-side rendering with Next.js App Router
- Optimized images with Contentful's delivery API
- Static generation where possible
- Intelligent caching with TurboRepo

### 🔍 SEO Ready

- Automatic sitemap generation
- Structured data (JSON-LD)
- Meta tags and Open Graph support
- Dynamic robots.txt

## Deployment

### Vercel (Recommended)

1. Connect your repository to Vercel
2. Set the root directory to `apps/web`
3. Configure environment variables
4. Deploy automatically on git push

### Other Platforms

The Next.js app can be deployed to any platform that supports Node.js applications.

## Extending the Project

### Adding New Components

Shared components go in `packages/ui/src/components/`. App-specific components go in `apps/web/src/components/`.

### Adding Content Types

1. Create content types in Contentful
2. Run `pnpm --filter web typegen` to generate TypeScript types
3. Add components to render the new content types

### Customizing Styles

The project uses Tailwind CSS with a shared configuration. Customize `tailwind.config.ts` in the respective packages.

## Scripts

- `pnpm run dev` - Start development servers
- `pnpm run build` - Build all applications
- `pnpm --filter web typegen` - Generate TypeScript types from Contentful schema
- `pnpm run lint` - Run ESLint across all packages
- `pnpm run type-check` - Run TypeScript checks

## Learn More

- [Next.js Documentation](https://nextjs.org/docs)
- [Contentful Documentation](https://www.contentful.com/developers/docs/)
- [TurboRepo Documentation](https://turbo.build/repo/docs)
- [Shadcn UI Documentation](https://ui.shadcn.com/)

## Contributing

Contributions are welcome! Please read our contributing guidelines and code of conduct before submitting pull requests.

## License

[MIT](LICENSE) &copy; [Roboto Studio](https://robotostudio.com)
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.