How to create new custom manager?
During this time, I tried to add my custom manager to grapesjs on npm. and However, I failed. This is my test code: When I build, I am taking a blank page. Please rescue me from this black hole. Thanks.
Read full answer below ↓Question
Hi @artf,
I am using and developing grapesjs for my project. I want to add new manager such that PackageManager. However, I couldn't find which object includes other managers.
How can I add my custom manager to grapesjs?
Answers (2)
During this time, I tried to add my custom manager to grapesjs on npm.
// editor/index.js
['Styles', 'StyleManager'],
'DeviceManager',
['Devices', 'DeviceManager'],
'PackageManager', //this
].forEach(prop => {
if (Array.isArray(prop)) {
this[prop[0]] = em.get(prop[1]);
and
//editor/model/Editor.js
const deps = [
...
require('block_manager'),
require('package_manager'), // this
];
However, I failed.
This is my test code:
export default () =>{
return {
name : "PackageManager",
test(){
console.log("hello form package manager");
}
}
}
When I build, I am taking a blank page. Please rescue me from this black hole.
Thanks.
Thanks for reporting this, @fzerman.
Great question about QUESTION : How to create new custom manager?. The recommended approach with GrapesJS is to use the event-driven API.
Start here:
- Check the GrapesJS documentation for your specific module
- Look for the
on()event listener method - Most operations can be achieved by listening to editor and component events
Common patterns:
// Listen for changes
editor.on('change', () => console.log('something changed'));
// Component lifecycle
editor.on('component:mount', (c) => console.log('component ready', c));
editor.on('component:update', (c) => console.log('component updated', c));
If you're still stuck:
- Share a minimal CodeSandbox reproduction
- Include what you've already tried
- Mention your GrapesJS version
- The community is here to help!
Related Questions and Answers
Continue research with similar issue discussions.
Issue #3376
Changing upload URL for AssetManager programmatically
I've got an situation where depending on how the Asset Manager is opened I want to pass a slightly different upload URL. In the asset:uploa...
Issue #3339
Question: How to add different aspect ratios to mobile devices in the device manager.
We are working on a cms system that uses grapes js. We came up with a condition where we couldn't add aspect ratio in the "mediaCondition"...
Issue #3255
Custom Style Manager
Hi @artf I am trying to change the type and input values of display property like this way -: But on style-manager Button are not visible....
Issue #3403
Multi page manager
How can I create multiple pages?
Paid Plugins That Match This Issue
Curated by issue keywords and label relevance to help you ship faster.
Loading paid plugin recommendations...
Check the open-source GrapesJS plugins on GitHub or run a quick search in our free catalog.
Browse free plugins →Premium plugins ship with support, regular updates, and production-ready features — save days of integration work.
Browse premium plugins →Related tutorials
In-depth guides on the same topic.
Tutorial
How to Build a Production GrapesJS Editor: The Complete Walkthrough of Brief, Preset, Plugins, and Services
A complete walkthrough of building a production GrapesJS editor: how to choose a preset, pick plugins, and scope setup services without burning a sprint.
Tutorial
Big Updates: TinyMCE 8 and Placeholder 2.0 for GrapesJS
In May we shipped major updates to two of our most popular GrapesJS plugins — TinyMCE Inline Text Editor and Placeholder.
Tutorial
Find the Right GrapesJS Plugin in Seconds: Smarter Discovery Is Live
We're shipping a set of discovery upgrades. New label filters, a proper compatibility switch for GrapesJS vs Studio, one-click and a smarter sort bar.
Browse Plugin Categories
Jump directly to plugin category pages on the marketplace.