JavaScripting

The definitive source of the best
JavaScript libraries, frameworks, and plugins.


  • ×

    Free and Open source Web Builder Framework. Next generation tool for building templates without coding
    Filed under 

    • 🔾83%Overall
    • 6,925
    • 14 hours
    • 🕩1199
    • 👥10

    GrapesJS

    Build Status Chat CDNJS npm BrowserStack Status

    GrapesJS

    GrapesJS is a free and open source Web Builder Framework which helps building HTML templates, faster and easily, to be delivered in sites, newsletters or mobile apps. Mainly, GrapesJS was designed to be used inside a CMS to speed up the creation of dynamic templates. To better understand this concept check the image below


    GrapesJS - Style Manager


    Generally any 'template system', that you'd find in various applications like CMS, is composed by the structure (HTML), style (CSS) and variables, which are then replaced with other templates and contents on server-side and rendered on client. This demos show examples of what is possible to achieve: Webpage Demo - http://grapesjs.com/demo.html Newsletter Demo - http://grapesjs.com/demo-newsletter-editor.html ## Table of contents Features Download Usage Development Documentation API Testing Plugins Support Changelog Contributing License ## Features * Blocks

    GrapesJS - Block Manager

    • Style Manager, for component styling

      GrapesJS - Style Manager

    • Layer Manager, that comes handy with nested elements

      GrapesJS - Layer Manager

    • Code Viewer

      GrapesJS - Code Viewer

    • Asset Manager, for uploading and managing images

      GrapesJS - Asset Manager

    • Local and remote storage

    • Default built-in commands (basically for creating and managing different components)

    Download

    • CDNs
      • UNPKG (resolves to the latest version)
        • https://unpkg.com/grapesjs
        • https://unpkg.com/grapesjs/dist/css/grapes.min.css
      • CDNJS (replace X.X.X with the current version)
        • https://cdnjs.cloudflare.com/ajax/libs/grapesjs/X.X.X/grapes.min.js
        • https://cdnjs.cloudflare.com/ajax/libs/grapesjs/X.X.X/css/grapes.min.css
    • NPM
      • npm i grapesjs
    • GIT
      • git clone https://github.com/artf/grapesjs.git

    For the development purpose you should follow instructions below.

    Usage

    <link rel="stylesheet" href="path/to/grapes.min.css">
    <script src="path/to/grapes.min.js"></script>
    
    <div id="gjs"></div>
    
    <script type="text/javascript">
      var editor = grapesjs.init({
          container : '#gjs',
          components: '<div class="txt-red">Hello world!</div>',
          style: '.txt-red{color: red}',
      });
    </script>
    

    You could also grab the content directly from the element with fromElement property

    <div id="gjs">
      <div class="txt-red">Hello world!</div>
      <style>.txt-red{color: red}</style>
    </div>
    
    <script type="text/javascript">
      var editor = grapesjs.init({
          container : '#gjs',
          fromElement: true,
      });
    </script>
    

    For more practical example I suggest to look up the code inside this demo: http://grapesjs.com/demo.html

    Development

    GrapesJS uses Webpack as a module bundler and Babel as a compiler.

    Clone the repository and install all the necessary dependencies

    $ git clone https://github.com/artf/grapesjs.git
    $ cd grapesjs
    $ npm i
    

    Start the dev server

    $ npm start
    

    Once the development server is started you should be able to reach the demo page (eg. http://localhost:8080)

    Documentation

    Check the getting started guide here: Documentation

    API

    API References could be found here: API-Reference

    Testing

    $ npm test
    

    Plugins

    Extensions

    Presets

    Find out more about plugins here: Creating plugins

    Support

    If you like the project support it with a donation of your choice or become a backer/sponsor via Open Collective

    PayPalMe


    BrowserStack
    Thanks to BrowserStack for providing us browser testing services

    License

    BSD 3-clause

    Show All