• Stars
    star
    143
  • Rank 257,007 (Top 6 %)
  • Language
    JavaScript
  • Created about 8 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

GrapesJS preset configuration for the newsletter editor http://grapesjs.com

GrapesJS Preset Newsletter

This preset configures GrapesJS to be used as a Newsletter Builder with some unique features and blocks composed specifically for being rendered correctly inside all major email clients.

Demo

The demo might include external plugins, you can check the full demo code here.

GrapesJS


Summary

  • Plugin name: grapesjs-preset-newsletter
  • Commands
    • gjs-get-inlined-html Get html with inlined CSS
    • gjs-open-import-template Opens a modal for the import
    • gjs-toggle-images Enable/Disable images
  • Blocks
    • sect100 A section with 1 100% cell inside
    • sect50 A section with 2 50% cells inside
    • sect30 A section with 3 33.3333% cells inside
    • sect37 A section with 2 cells inside: 30% and 70%
    • button Simple button
    • divider Divider block
    • text Simple text component
    • text-sect A block with 2 text components, respectively for the heading and paragraph
    • image Simple image component
    • quote Text component for quotes
    • grid-items Block of 2 components in row
    • list-items List of 2 components

Options

Option Description Default
blocks Which blocks to add All available blocks
block Add custom block options, based on block id (blockId) => ({})
cmdOpenImport Import command id gjs-open-import-template
cmdTglImages Toggle images command id gjs-toggle-images
cmdInlineHtml Get inlined HTML command id gjs-get-inlined-html
modalTitleImport Title for the import modal Import template
modalTitleExport Title for the export modal Export template
modalLabelExport Label for the export modal ''
modalLabelImport Label for the import modal ''
modalBtnImport Label for the import button Import
importPlaceholder Template as a placeholder inside import modal ''
inlineCss If true, inlines CSS on export true
updateStyleManager Update Style Manager with more reliable style properties to use for newsletters true
showStylesOnChange Show the Style Manager on component change true
showBlocksOnLoad Show the Block Manager on load true
codeViewerTheme Code viewer theme hopscotch
juiceOpts Custom options for the juice HTML inliner {}
textCleanCanvas Confirm text before clearing the canvas Are you sure you want to clear the canvas?
useCustomTheme Load custom preset theme true
cellStyle Default style used inside blocks tds { padding: 0, margin: 0, 'vertical-align': 'top' }
tableStyle Default style used for blocks tables { height: '150px', margin: '0 auto 10px auto', padding: '5px 5px 5px 5px', width: '100%' }

Download

  • CDN
    • https://unpkg.com/grapesjs-preset-newsletter
  • NPM
    • npm i grapesjs-preset-newsletter
  • GIT
    • git clone https://github.com/grapesjs/preset-newsletter.git

Usage

Directly in the browser

<link href="path/to/grapes.min.css" rel="stylesheet"/>
<script src="path/to/grapes.min.js"></script>
<script src="path/to/grapesjs-preset-newsletter.min.js"></script>

<div id="gjs"></div>

<script type="text/javascript">
  var editor = grapesjs.init({
      container : '#gjs',
      ...
      plugins: ['grapesjs-preset-newsletter'],
      pluginsOpts: {
        'grapesjs-preset-newsletter': {
          // options
        }
      }
  });
</script>

Modern javascript

import grapesjs from 'grapesjs';
import plugin from 'grapesjs-preset-newsletter';

const editor = grapesjs.init({
  container : '#gjs',
  // ...
  plugins: [plugin],
  pluginsOpts: {
    [plugin]: { /* options */ }
  }
  // or
  plugins: [
    editor => plugin(editor, { /* options */ }),
  ],
});

Development

Clone the repository

$ git clone https://github.com/grapesjs/preset-newsletter.git
$ cd preset-newsletter

Install it

$ npm i

Start the dev server

$ npm start

Build before the commit. This will also increase the patch level version of the package

$ npm run build

License

BSD 3-Clause

More Repositories

1

grapesjs

Free and Open source Web Builder Framework. Next generation tool for building templates without coding
TypeScript
17,231
star
2

grapesjs-mjml

Newsletter Builder with MJML components in GrapesJS
TypeScript
527
star
3

cimice

Experimental user session recorder http://artf.github.io/cimice/
JavaScript
328
star
4

grapesjs-preset-webpage

GrapesJS Plugin Webpage Preset
TypeScript
246
star
5

grapick

Easy configurable gradient picker, with no dependencies
JavaScript
107
star
6

ajaxable

Make your forms instantly ajaxable
JavaScript
94
star
7

grapesjs-plugin-ckeditor

This plugin replaces the default Rich Text Editor with the one from CKEditor
JavaScript
74
star
8

grapesjs-cli

GrapesJS CLI helper for the development
JavaScript
63
star
9

grapesjs-tui-image-editor

GrapesJS TOAST UI Image Editor
TypeScript
62
star
10

grapesjs-blocks-basic

Basic blocks for the GrapesJS editor
TypeScript
53
star
11

grapesjs-plugin-export

Export GrapesJS templates in a zip archive
TypeScript
53
star
12

grapesjs-plugin-forms

Set of form components and blocks for the GrapesJS editor
TypeScript
47
star
13

grapesjs-custom-code

GrapesJS component for the embed of custom code
TypeScript
45
star
14

grapesjs-firestore

Cloud Firestore storage wrapper for GrapesJS
TypeScript
30
star
15

grapesjs-plugin-boilerplate

[DEPRECATED use https://github.com/artf/grapesjs-cli] GrapesJS Plugin Boilerplate
JavaScript
29
star
16

grapesjs-blocks-flexbox

Add the flexbox block
JavaScript
29
star
17

grapesjs-tabs

Simple tabs component plugin for GrapesJS
JavaScript
27
star
18

grapesjs-aviary

Add the Aviary Image Editor in GrapesJS
JavaScript
26
star
19

grapesjs-navbar

Simple navbar component for the GrapesJS editor
TypeScript
24
star
20

codemirror-formatting

Codemirror formatting addon http://codemirror.net/2/demo/formatting.html
JavaScript
21
star
21

grapesjs-lory-slider

GrapesJS Slider Component by using lory
JavaScript
20
star
22

grapesjs-style-bg

Full-stack background style property type for GrapesJS, with the possibility to add images, colors, and gradients
TypeScript
20
star
23

grapesjs-parser-postcss

Custom CSS parser for GrapesJS by using PostCSS
JavaScript
18
star
24

grapesjs-tooltip

Simple, CSS only, tooltip component for GrapesJS
TypeScript
17
star
25

grapesjs-indexeddb

IndexedDB storage wrapper for GrapesJS
TypeScript
17
star
26

grapesjs-style-filter

Add filter type input to the Style Manager in GrapesJS
JavaScript
16
star
27

grapesjs-typed

GrapesJS Typed component made by wrapping Typed.js library
JavaScript
16
star
28

grapesjs-plugin-filestack

Enable Filestack uploader inside the Asset Manager
JavaScript
16
star
29

grapesjs-touch

Enable touch support in GrapesJS
JavaScript
14
star
30

grapesjs-component-countdown

Simple countdown component for the GrapesJS Editor
TypeScript
14
star
31

grapesjs-style-gradient

Add gradient input to the Style Manager in GrapesJS
TypeScript
11
star
32

EmojiBelt

A Chrome Extension which tries to enable emoji panel on inputs
JavaScript
4
star