Craft.js
React framework for building extensible drag-and-drop page editors. Headless, framework-based approach with full plugin support.
Open source alternative to:
Craft.js is a React framework for building extensible drag-and-drop page editors. Rather than shipping a turnkey editor, Craft.js provides the underlying primitives — a node tree, a drag-and-drop engine, and a plugin system — so you can assemble the exact editor your team needs.
Craft.js is MIT-licensed and built in TypeScript. It is headless, ships without a default UI, and gives developers full control over rendering, theming, and the editing experience. The framework is highly extensible: custom drag handles, resizable nodes, custom rules, serializer hooks, and per-component editor controls are all first-class. It works with any React setup and integrates cleanly with Next.js, Remix, and standalone React apps.
Craft.js is a good fit for teams building custom content editors, internal tooling, marketing page builders, or specialized CMS interfaces — anywhere a generic page builder is too rigid and a custom implementation is too expensive. It has a large community, thousands of stars on GitHub, and a permissive license suitable for commercial use.
Categories:
Build with:
Repository details
Sponsor Craft.js
Sponsor Craft.js on GitHub Sponsors
https://github.com/sponsors/prevwongSponsor Craft.js on OpenCollective
https://opencollective.com/craftjs/contributeSponsor Craft.js on Ko-fi
https://ko-fi.com/prevwongCompare Craft.js with
Similar open source alternatives
FlatPress
FlatPress is a lightweight, easy-to-set-up flat-file blogging engine.
WordPress
Ghost
Independent technology for modern publishing, memberships, subscriptions and newsletters.
WordPress
Payload
Payload is an open-source, TypeScript-first headless CMS and application framework built on Next.js, Express, and React.
Contentful
Haven
Self-hostable private blogging
WordPress
Puck
Open-source visual editor for React. Drag-and-drop page builder with a component-based architecture and MIT license.
Builder.io