puckeditor /puck

The visual editor for React.

★ 13,615⑂ 1,033👁 61⑃ 818● 764▤ 46
TypeScriptCreated 2023-06-02puckeditor.com
13,615
stars
+0+14+160
1,033
forks
61
watchers
818
prs
764
issues
46
releases
–
discussions

README

_The visual editor for React_

Documentation • Demo • Discord • Contributing

⭐️ Enjoying Puck? Please leave a star!







 What is Puck?

Puck is a modular, open-source visual editor for React.js. You can use Puck to build custom drag-and-drop experiences with your own application and React components.

Because Puck is just a React component, it plays well with all React.js environments, including Next.js. You own your data and there’s no vendor lock-in.

Puck is also licensed under MIT, making it suitable for both internal systems and commercial applications.

 Quick start

Install the package:

sh
npm i @puckeditor/core --save  or npx create-puck-app my-app


Render the editor:

jsx
// Editor.jsx
import { Puck } from "@puckeditor/core";

// Create Puck component config
const config = {
  components: {
    HeadingBlock: {
      fields: {
        children: {
          type: "text",
        },
      },
      render: ({ children }) = {
        return {children};
      },
    },
  },
};

// Describe the initial data
const initialData = {};

// Save the data to your database
const save = (data) = {};

// Render Puck editor
export function Editor() {
  return ;
}


Render the page:

jsx
// Page.jsx
import { Render } from "@puckeditor/core";

export function Page() {
  return ;
}


 Recipes

Use create-puck-app to quickly spin up a a pre-configured app based on our provided recipes:

sh
npx create-puck-app my-app


Available recipes include:

- next: Next.js example, using App Router and static page generation
- react-router: React Router v7 app example, using dynamic routes to create pages at any level

 Community

- Discord server for discussions
- awesome-puck community repo for plugins, custom fields & more

 Get support

If you have any questions about Puck, please open a GitHub issue or join us on Discord.

Or book a discovery call for hands-on support and consultancy.

 License

MIT © The Puck Contributors

Snapshot: 2026-11-04T14:00:00Z · Data license Apache-2.0 · JSON