GrapesJS Issues

3,464 parsed GitHub issues โ€” 370 solved ยท 90 open. Search, filter and explore battle-tested answers.

1,100 issues found

๐Ÿ” bug
#6654November 19, 2025by zjt-dev4 answers
0 reactions

the rich-text editor cannot be activated

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? chrome v91 Reproducible demo link https://codepen.io/asenper/pen/QwNMwpV Describe the bug I expect the RTE to open when clicking on the text, but nothing happens. Is this a bug or am I missing additional configuration? Cod...

artf

By default the text component is activated with a double-click https://github.com/GrapesJS/grapesjs/blob/f59e981f76ff378f59c06cf706af88e502db098e/packages/core/src/dom_components/view/ComponentTextView.ts#L22

zjt-dev

<img width="1382" height="393" alt="Image" src="https://github.com/user-attachments/assets/6a3850b9-91ed-43de-b9ae-1a2f703e6f02" /> <img width="695" height="468" alt="Image" src="https://github.com/user-attachments/assets/2a62ad3b-ed7a-4d8...

artf

When you import generic HTML it's hard to detect text components properly. If you have the ability to edit HTML you can enforce it via gjs attributes <div data-gjs-type="text">Insert....

#6651November 17, 2025by DavidHarvey2 answers
0 reactions

Droppable is ignored when moving a textable component into text

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrome 142.0.7444.61 Reproducible demo link https://codepen.io/DavidHarvey-the-lessful/pen/ZYWeMbG Describe the bug Component droppable status is ignored when moving a textable component into a text component. How to repro...

artf

https://github.com/GrapesJS/grapesjs/pull/6652#issuecomment-3551018995

GJS Helper

The issue you've encountered where droppable: false on a GrapesJS text component is ignored when a textable component is dragged into it is a known behavior stemming from how GrapesJS integrates its Rich Text Editor (RTE) and handles texta...

#6646November 11, 2025by soul-media3 answers
0 reactions

Javascript error when I want to add padding

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrome & Firefox Reproducible demo link Describe the bug How to reproduce the bug? Chrome & Firefox: Add padding to a image / Text Sometimes the error occurs, sometimes it doesn't. https://github.com/user-attachments/asset...

trebor94

I've been running into the same issue and also using the grapesjs-mjml plugin. Apparently it only occurs when a project is loaded which has the style property present on the attributes of a component when the project is loaded. After each...

trebor94

Unfortunately haven't been able to figure out where or when exactly the style property gets added to the component style when exporting project data from a previously loaded project. Maybe someone else can pinpoint what causes the issue. @...

GJS Helper

It appears you've encountered a bug in GrapesJS, specifically when working with MJML components and applying styles like padding, which leads to invalid attributes being generated and stored. This issue seems to be a regression, as it work...

#6641November 8, 2025by bilogic2 answers
0 reactions

Error when setting defaults of an extended model

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Version 141.0.7390.123 (Official Build) (64-bit) Reproducible demo link https://codesandbox.io/p/sandbox/jovial-elion-js8zgy?file=%2Findex.js%3A1%2C1-15%2C1 Describe the bug The above worked in 0.15.x but not in 0.22.13. A...

artf

Hey @bilogic your demo seems to use the proper API for extending components, the one relying on .extend( was dropped a long time ago

GJS Helper

The issue you're encountering when extending a GrapesJS component model, specifically the 'link' type, and trying to set its defaults property by directly referencing linkType.model.prototype.defaults is a change in behavior between Grapes...

#6634October 28, 2025by ssteele3 answers
0 reactions

Accessibility errors

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrome 141.0.7390.123 Reproducible demo link https://grapesjs.com/demo.html Describe the bug Our application serves clients that require all pages to be accessible for all users. I am running the latest grapesjs libraries:...

niemyjski

I'm also seeing this behavior.

artf

This is related to https://github.com/GrapesJS/preset-webpage You're free to update styles on top of that plugin or submit a PR with the fixes there.

GJS Helper

Achieving full accessibility compliance in a complex, dynamic web editor like GrapesJS requires careful consideration and customization. The WAVE Evaluation Tool often flags issues related to missing ARIA attributes, insufficient contrast,...

#6629October 14, 2025by paolotozzo1 answer
0 reactions

Default component styles incorrectly applied to device-specific media queries in v0.22.10+

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? chrome latest version Reproducible demo link https://app.grapesjs.com/studio Describe the bug How to reproduce the bug? Initialize GrapesJS editor with default device configuration Switch to tablet or mobile device view Ad...

GJS Helper

The issue you've described is a known behavioral change introduced in GrapesJS v0.22.10+, where default component styles are incorrectly applied to device-specific media queries when a component is added while a non-desktop device view is...

#6623October 10, 2025by zhengtulymGh1 answer
0 reactions

Custom Dynamic List freezes after binding array and expanding rows to match length

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? 140.0.7339.214๏ผˆๆญฃๅผ็‰ˆๆœฌ๏ผ‰ (x8664) Reproducible demo link https://codesandbox.io/p/devbox/d27l6n Describe the bug I want to create a custom dynamic list component based on GrapesJS (with 3 rows by default). It can bind to an arr...

GJS Helper

The freezing issue you're encountering with your custom Dynamic List component in GrapesJS is a classic example of an event feedback loop. It occurs because the event listener responsible for updating the row count is too broad, causing it...

#6618October 1, 2025by mohamedsalem4011 answer
0 reactions

Improve Editor performance and fix any memory leak

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrome Reproducible demo link https://grapesjs.com/demo.html Describe the bug Fix passing down collectionsSourceMap if not needed Insure that all listeners are cleaned if not needed Improve Editor.loadProject speed Code of...

GJS Helper

Improving GrapesJS editor performance and preventing memory leaks are crucial for a smooth user experience, especially in complex applications. Let's break down the points raised: Fix passing down collectionsSourceMap if not needed The ter...

#6606September 12, 2025by MisterKeyboard4 answers
2 reactions

Editor takes a long time to load (sometimes over 1 minute)

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Firefox Reproducible demo link https://grapesjs.com/demo.html Describe the bug Description The editor has very slow loading times. On complex pages (e.g. homepage with many elements and plugins such as carousels), it can t...

artf

Thanks @MisterKeyboard for providing the JSON. Your project contains 10K style rules, which is a lot, but still, I'd not expect the load to be impacted that much. @mohamedsalem401 I think we need to verify if data source related changes (e...

mohamedsalem401

@artf Will take a look and give an update on this.

artf

@MisterKeyboard can you share the JSON of the project so we can verify that

#6603September 4, 2025by nanto2 answers
1 reactions

Ampersand is not escaped in attribute value

GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrome v142.0.7392.0 (canary) Reproducible demo link https://jsfiddle.net/xce183nm/1/ Describe the bug How to reproduce the bug? Create an editor instance and load HTML code that contains character references in attribute...

artf

Thanks for providing all the info and details, that was helpful. Thanks also for the PR.

GJS Helper

You've identified a critical bug in GrapesJS's HTML serialization process regarding attribute value escaping. The issue stems from the Component model's renderAttributes method, which directly inserts attribute values into the HTML string...