
26.2k stars · BSD-3-Clause · v0.23.6 (2026-08-26) · Track this in Rising ↗
Drag-and-drop builder for landing pages and, through its newsletter preset, email-safe table HTML.
Radar check
What we found when we opened it. Every bar is one fact, with its date.
Last code pushed 21 Oct 2026, 6 days before this check.
Latest release v0.23.8 on 15 Oct 2026.
Public since January 2016, a little over 10 years.
26,338 stars and 4,654 forks.
32 commits and 7 new issues in the last 90 days.
231 contributors. 29 pull requests merged in 90 days.
No security policy file says how to report a problem. No published security advisories.
How the bars are scored
- Alive. Days since the last code push: a week or less 100, a month 90, three months 70, six months 50, a year 30, eighteen months 15, older 0.
- Releases. Age of the latest GitHub release, on a similar scale; no bar when the project publishes no releases.
- Maturity. Age of the project: eight years 100, five 90, three 70, two 55, one 40, six months 25, younger 10.
- Adoption. Stars on a log scale: 100,000 stars is 100, 10,000 is 80, 1,000 is 60, 100 is 40.
- Activity. Commits in the last 90 days: 300 or more 100, 100 85, 30 65, 10 45, any 25.
- Community. People who have contributed: 100 or more 100, 30 80, 10 60, 5 40, 2 25, one 10.
- Security. A published security policy 80, none 40; published advisories are listed, not scored.
Checked by Repo Radar on 25 Oct 2026 from the repository on GitHub. Covered in Edition 6.
▶Repo detailsthe review · specs · pros & cons · install
What it does
It gives a canvas, a set of draggable blocks, a panel for changing colours and spacing, a tree of the layers on the page, and a place to keep images. It comes with ready-made configurations, called presets: one for web pages and one for newsletters. The newsletter preset writes old-style table layout, which is the layout that mail programs still draw correctly. Everything it builds comes out as plain HTML and CSS, the two languages a browser reads, with nothing of the editor left behind. The latest release is v0.23.6, published on 26 August 2026, and the licence is BSD-3-Clause, which allows use inside a paid product. What it is not is a finished application. There is nothing to install and open; a working editor has to be assembled from the presets and plugins first, and it does not store or send anything itself.
Why it matters
Who it suits. Teams that write landing pages or newsletters by hand and are tired of it. It suits a product even better: if customers need to lay out their own pages or reports, this is an editor that can legally be built into a commercial product, which is unusual. Skip it if the need is one page a month, because assembling the editor costs more than writing that page.
Verdict. Worth an evening, and only if a visual editor will be used more than once. The honest cost is that first evening: presets, plugins and configuration before anything is usable. The code it writes is wrapper-heavy, so it is fine for email and worth tidying before it goes into a page that must load fast. One trap to know: the releases page on the code host looks out of date, and the package registry is where the real pace shows. puckeditor/puck is the better choice if the blocks must be existing React components.
Summary (Key Points)from the README
Key features
- Visual editing panels: Blocks, Style Manager, Layer Manager, Code Viewer and Asset Manager cover building and editing templates.
- Built-in commands: Default commands handle creating and managing different components.
- Storage: Supports both local and remote storage of templates.
- Template-system focus: Designed to create dynamic templates for use inside a CMS, separating structure (HTML), style (CSS) and variables that the server fills in.
- Official plugins: Plugins can be added to extend the editor.
- Community extensions: The README lists 25 extensions, including a CKEditor RTE replacement, a Filestack uploader, a PostCSS CSS parser, IndexedDB and Firestore storage, and a click-to-add block option.
- Presets: Ready-made Webpage Builder and Newsletter Builder presets, plus a Newsletter Builder preset with MJML components.
- React wrapper: `@grapesjs/react` lets you build a declarative UI for the editor in React.
Ways to install
| Platform or method | What it needs | Effort |
|---|---|---|
| CDN (UNPKG, latest version) | A script tag in your page; the README does not show the exact URL | Add script tags |
| CDN (CDNJS) | A script tag; replace X.X.X with the version you want | Add script tags and set the version |
| NPM | Node.js and npm | One command: `npm i grapesjs` |
| Git | Git, to clone the repository | Clone, then follow the Contributing Guide for development |
Important
- Studio SDK alternative: The README points to the Studio SDK as a ready-made embeddable visual builder with GrapesJS team support included, which may suit those who want an embedded editor without building one.
- Community plugins: Community extensions are third-party projects listed separately from the official plugins, so check their maintenance and compatibility yourself.
- Demos only: The demos show what is possible but are not a finished product; the README points to the demo code for a practical example.
- Documentation links: The getting started guide and API reference are linked from the README, but the README itself gives no usage code.
- Testing: The Testing section in the README is empty, so it gives no testing instructions.
- License: BSD 3-clause.
Written by an AI model from the project’s README; not part of the review, and it can be wrong.
- BSD-3-Clause, the most permissive licence in this edition, and safe inside a paid product.
- The newsletter preset writes email-safe table layout, which is the part people get wrong by hand.
- Output is plain HTML and CSS with nothing to run afterwards, so nothing built in it is trapped inside it.
- It is a toolkit, not an application. A usable editor has to be assembled first.
- The releases page on the code host looks stale; only the package registry shows the real pace.
- The page code it writes is long and full of extra wrappers, so a fast page needs it cleaned up.
Export the HTML and paste it into Listmonk's template, or into an Astro page beside the Starlight docs.
npm install grapesjs grapesjs-preset-newsletter


