README
GrapesJS Bootstrap v5 Blocks Plugin
Summary
- Plugin name:
grapesjs-blocks-bootstrap5 - Components (see Options for list of Blocks)
- Layout
containerrowcolumncolumn_breakmedia_objectmedia_body
- Components
alerttabsbadgecardcard_containercollapsedropdowndropdown_menu
- Typography
textheaderparagraph
- Media
imagevideo
- Forms
formbuttonbutton_groupbutton_toolbarinputinput_groupform_group_inputtextareacheckboxradio
- Layout
Options
{
blocks: {
...
}
blockCategories: {
...
}
labels: {
...
}
formPredefinedActions: null,
optionsStringSeparator: '::'
}
Blocks
|Option|Description|Default|
|-|-|-
|default|Rebuild default component with utility settings|true|
|text|Rebuild text component to re-inherit from default|true|
|link|Rebuild link component to re-inherit from default and give toggle setting|true|
|image|Rebuild image component to re-inherit from default|true|
|video|Rebuild video component to re-inherit from default|true|
|container|Container (fixed/fluid)|true|
|row|Row|true|
|column|Columns of all sizes|true|
|column_break|Column-break (div.w-100)|true|
|media_object|Media object|true|
|alert||true|
|tabs||true|
|badge||true|
|card|Card with settings for images, image overlay, header, body, & footer components|true|
|card_container|Layouts: group, deck, columns|true|
|collapse|Collapse component that can be toggled via link component|true|
|dropdown|Dropdown|true|
|header|H1-H6|true|
|paragraph|P tag with "lead" setting|true|
|form||true|
|button||true|
|button_group||true|
|button_toolbar||true|
|input||true|
|input_group||true|
|form_group_input||true|
|textarea||true|
|checkbox||true|
|radio||true|
Block Categories
These are the different categories of blocks as they are grouped in the Blocks sidebar panel. Set a value to false exclude entire groups of blocks (as well as the associated components).
|Option|Description|Default|
|-|-|-
|layout|Container, row, col, col-break, media object|true|
|components|Bootstrap's Components--alert, button, card, etc.|true|
|typography|Text, header, paragraph, etc.|true|
|basic|Link, image, etc.|true|
|forms|Form, input, textarea, etc.|true|
Labels
Same keys as Blocks, but value is the label for the block.
|Option|Description|Default|
|-|-|-
|text||'Text'|
|header||'Header'|
etc.
Other
|Option|Description|Default|
|-|-|-
|gridDevices|Add devices based on BS grid breakpoints|true|
|gridDevicesPanel|Build a panel in the top-left corner with device buttons (use with editor showDevices=false)|false|
|formPredefinedActions|Pass a list of predefined form actions to generate a select menu: [{name: 'Contact', value: '/contact'}, ...], if no list is passed an input box to add the action is shown|null|
|optionsStringSeparator|Pass a string to identify the separator of values and labels of the select options: optionValue::optionLabel. This setting WILL BE overridden by the gjs-preset-webpage plugin if enabled|'::'|
Download
- NPM
npm i grapesjs-blocks-bootstrap5
- GIT
git clone https://github.com/atravo-io/grapesjs-blocks-bootstrap5.git
Usage
<link href="https://unpkg.com/grapesjs/dist/css/grapes.min.css" rel="stylesheet"/>
<script src="https://unpkg.com/grapesjs"></script>
<script src="path/to/grapesjs-blocks-bootstrap5.min.js"></script>
<div id="gjs"></div>
<script type="text/javascript">
var editor = grapesjs.init({
container : '#gjs',
...
plugins: ['grapesjs-blocks-bootstrap5'],
pluginsOpts: {
'grapesjs-blocks-bootstrap5': {
blocks: {
// ...
},
blockCategories: {
// ...
},
labels: {
// ...
},
// ...
}
},
canvas: {
styles: [
'https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/css/bootstrap.min.css'
],
scripts: [
'https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/js/bootstrap.bundle.min.js'
],
}
});
</script>
Development
Clone the repository
$ git clone https://github.com/atravo-io/grapesjs-blocks-bootstrap5.git
$ cd grapesjs-blocks-bootstrap5
Install dependencies
$ yarn install
Start the dev server
$ yarn start
License
BSD 3-Clause