BUILDER

Features

Pricing

Resources

Login

Get Started

The only visual and headless CMS and page builder for Next.js

Builder's headless CMS for Next.js comes with a powerful drag-and-drop visual editor that lets you create digital experiences in minutes

Get Started

Render Builder pages

Use your components

import { BuilderComponent, builder } from '@builder.io/react'

builder.init('YOUR_KEY')

export default let HomePage = () => {
  const [pageJson, setPage] = useState(null)

  useEffect(() => 
    builder.get('page', { url: '/' }).promise().then(setPage)
  , [])

  return <BuilderComponent model="page" content={pageJson} />
}

Empowering teams and powering content for leading brands

Unlock and unblock non-technical talent...

Create pages and content visually, no coding required

Set scheduled releases and publish content without code changes

Setup A/B tests and create targeted content experiences. No coding required.

See All Features

...while keeping developers happy

Free up developers to write code, not content

Leverage your existing code and components

Completely customize and extend the platform - full control and no limits!

See All Features

The control you need

Import your custom Next.js components, or use our Storybook add-on, to leverage your design system in the visual editor. You can create components in Builder too

Set permissions at the user and content levels to ensure brand guidelines are followed

The experience you deserve

Integrate with our React SDK, HTML API, or GraphQL API

Bring your custom data into Builder using fetch APIs or passing data at runtime

The performance you expect

Supports server-rendering with Next.js as well as single page apps

Blazing fast content delivery at the edge

Asset optimization comes out of the box

Connect Builder to your Next.js site or app in minutes

Simple SDK or API integrations with any tech stack

REST API Example

React Example

Plain JS Example

// example of server side rendering
// Run when your code doesn't match a page to check Builder for one
let page = await request(
  'https://cdn.builder.io/api/v1/html/page?url=' + encodeURIComponent(request.url) + '&apiKey=' + apiKey
)

if (page) {
  // use any template language, just put the html between your header and footer
  response.status(200).send(yourHeaderHtml + page.data.html + yourFooterHtml)
} else {
  response.statua(404).send(notFoundHtml)
}

Getting Started with Builder

Did we mention this website was made with Builder?

Let’s build something!

Using Builder with Next.js

View example

Next.js site registering material UI components

View example

What will you create?

Get Started

BUILDER

Product

Features

Pricing

Sign up

Login

Featured Integrations

React

Angular

Next.js

Gatsby

Get In Touch

Chat With Us

Twitter

Linkedin

Jobs

© 2020 Builder.io, Inc.

Security

Privacy Policy

Terms of Service