puckeditor/puck has 13,635 GitHub stars and 1,035 forks. GitHot measured +7 stars in 24 hours and +81 in 7 days. Last checked 2026-11-06 04:58 UTC. Last push 2026-10-29.
The visual editor for React.
Measured star growth
- in 24h
- +7
- in 7 days
- +81
- in 15 days
- Update delayed
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalThe 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:
npm i @puckeditor/core --save # or npx create-puck-app my-app
Render the editor:
// Editor.jsx
import { Puck } from "@puckeditor/core";
// Create Puck component config
const config = {
components: {
HeadingBlock: {
fields: {
children: {
type: "text",
},
},
render: ({ children }) => {
return <h1>{children}</h1>;
},
},
},
};
// Describe the initial data
const initialData = {};
// Save the data to your database
const save = (data) => {};
// Render Puck editor
export function Editor() {
return <Puck config={config} data={initialData} onPublish={save} />;
}
Render the page:
// Page.jsx
import { Render } from "@puckeditor/core";
export function Page() {
return <Render config={config} data={data} />;
}
Recipes
Use create-puck-app to quickly spin up a a pre-configured app based on our provided recipes:
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
Explore related projects
freeCodeCamp/freeCodeCamp
freeCodeCamp.org's open-source codebase and curriculum. Learn math, programming, and computer science for free.
458,654 starsdonnemartin/system-design-primer
Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.
377,061 starsreact/react
The library for web and native user interfaces.
252,136 starsvuejs/vue
This is the repo for Vue 2. For Vue 3, go to https://github.com/vuejs/core
212,563 stars