A simple CLI library for helping in GrapesJS plugin development.
The goal of this package is to avoid the hassle of setting up all the dependencies and configurations for the plugin development by centralizing and speeding up the necessary steps during the process.
Create a production-ready plugin in a few simple steps.
mkdir grapesjs-my-plugin
cd grapesjs-my-plugin
npm init -y
git init
npm i -D grapesjs-cli
npx grapesjs-cli init
You can also skip all the questions with -y
option or pass all the answers via options (to see all available options run npx grapesjs-cli init --help
)
npx grapesjs-cli init -y --user=YOUR-GITHUB-USERNAME
src
directory and a bunch of other files inside your project. The src/index.js
will be the entry point of your plugin. Before starting developing your plugin run the development server and open the printed URL (eg. the default is http://localhost:8080)npx grapesjs-cli serve
If you need a custom port use the -p
option
npx grapesjs-cli serve -p 8081
Under the hood we use webpack-dev-server
and you can pass its option via CLI in this way
npx grapesjs-cli serve --devServer='{"https": true}'
npx grapesjs-cli build
If you need to customize the webpack configuration, you can create webpack.config.js
file in the root dir of your project and export a function, which should return the new configuration object. Check the example below.
// YOUR-PROJECT-DIR/webpack.config.js
// config is the default configuration
export default ({ config }) => {
// This is how you can distinguish the `build` command from the `serve`
const isBuild = config.mode === 'production';
return {
...config,
module: {
rules: [ { /* extra rule */ }, ...config.module.rules ],
},
};
}
Show all available commands
grapesjs-cli
Show available options for a command
grapesjs-cli COMMAND --help
Run the command
grapesjs-cli COMMAND --OPT1 --OPT2=VALUE
MIT