[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-3636":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":23,"hasPages":25,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":39,"readmeContent":40,"aiSummary":41,"trendingCount":16,"starSnapshotCount":16,"syncStatus":42,"lastSyncTime":43,"discoverSource":44},3636,"grapesjs","GrapesJS\u002Fgrapesjs","GrapesJS","Free and Open source Web Builder Framework. Next generation tool for building templates without coding","https:\u002F\u002Fgrapesjs.com",null,"TypeScript",25899,4622,469,34,0,6,12,84,21,96.4,"Other",false,"dev",true,[27,28,29,30,31,32,33,34,35,36,37,38],"drag-and-drop","framework","no-code","nocode","page-builder","site-builder","site-generator","template-builder","ui-builder","web-builder","web-builder-framework","website-builder","2026-06-12 04:00:18","# [GrapesJS](http:\u002F\u002Fgrapesjs.com)\n\n[![Build Status](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fgrapesjs\u002Factions\u002Fworkflows\u002Fquality.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fgrapesjs\u002Factions)\n[![Chat](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fchat-discord-7289da.svg)](https:\u002F\u002Fdiscord.gg\u002FQAbgGXq)\n[![CDNJS](https:\u002F\u002Fimg.shields.io\u002Fcdnjs\u002Fv\u002Fgrapesjs.svg)](https:\u002F\u002Fcdnjs.com\u002Flibraries\u002Fgrapesjs)\n[![npm](https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002Fgrapesjs.svg)](https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Fgrapesjs)\n\n> If you looking to embed the [Studio](https:\u002F\u002Fapp.grapesjs.com\u002Fstudio) editor in your application, we now offer the [Studio SDK](https:\u002F\u002Fapp.grapesjs.com\u002Fdashboard\u002Fsdk\u002Flicenses?ref=repo-readme), a ready-to-use visual builder that's easy to embed in external applications, with GrapesJS team support included.\n\n\u003Cp align=\"center\">\u003Cimg src=\"http:\u002F\u002Fgrapesjs.com\u002Fassets\u002Fimages\u002Fgrapesjs-front-page-m.jpg\" alt=\"GrapesJS\" width=\"500\" align=\"center\"\u002F>\u003C\u002Fp>\n\nGrapesJS 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\n\n\u003Cbr\u002F>\n\u003Cp align=\"center\">\u003Cimg src=\"http:\u002F\u002Fgrapesjs.com\u002Fassets\u002Fimages\u002Fgjs-concept.png\" alt=\"GrapesJS - Style Manager\" height=\"400\" align=\"center\"\u002F>\u003C\u002Fp>\n\u003Cbr\u002F>\n\nGenerally 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.\n\nThis demos show examples of what is possible to achieve:\u003Cbr\u002F>\nWebpage Demo - http:\u002F\u002Fgrapesjs.com\u002Fdemo.html\u003Cbr\u002F>\nNewsletter Demo - http:\u002F\u002Fgrapesjs.com\u002Fdemo-newsletter-editor.html\u003Cbr\u002F>\n\n## Table of contents\n\n- [Features](#features)\n- [Download](#download)\n- [Usage](#usage)\n- [Development](#development)\n- [Documentation](#documentation)\n- [API](#api)\n- [Testing](#testing)\n- [Plugins](#plugins)\n- [Support](#support)\n- [Changelog](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fgrapesjs\u002Freleases)\n- [Contributing](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fgrapesjs\u002Fblob\u002Fdev\u002FCONTRIBUTING.md)\n- [License](#license)\n\n## Features\n\n| Blocks                                                                                                                                   | Style Manager                                                                                                                         | Layer Manager                                                                                                                          |\n| ---------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |\n| \u003Cimg  src=\"http:\u002F\u002Fgrapesjs.com\u002Fassets\u002Fimages\u002Fsc-grapesjs-blocks-prp.jpg\"  alt=\"GrapesJS - Block Manager\"  height=\"400\"  align=\"center\"\u002F> | \u003Cimg  src=\"http:\u002F\u002Fgrapesjs.com\u002Fassets\u002Fimages\u002Fsc-grapesjs-style-2.jpg\"  alt=\"GrapesJS - Style Manager\"  height=\"400\"  align=\"center\"\u002F> | \u003Cimg  src=\"http:\u002F\u002Fgrapesjs.com\u002Fassets\u002Fimages\u002Fsc-grapesjs-layers-2.jpg\"  alt=\"GrapesJS - Layer Manager\"  height=\"400\"  align=\"center\"\u002F> |\n\n| Code Viewer                                                                                                                      | Asset Manager                                                                                                                          |\n| -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |\n| \u003Cimg  src=\"http:\u002F\u002Fgrapesjs.com\u002Fassets\u002Fimages\u002Fsc-grapesjs-code.jpg\"  alt=\"GrapesJS - Code Viewer\"  height=\"300\"  align=\"center\"\u002F> | \u003Cimg  src=\"http:\u002F\u002Fgrapesjs.com\u002Fassets\u002Fimages\u002Fsc-grapesjs-assets-1.jpg\"  alt=\"GrapesJS - Asset Manager\"  height=\"250\"  align=\"center\"\u002F> |\n\n- Local and remote storage\n\n- Default built-in commands (basically for creating and managing different components)\n\n## Download\n\n- CDNs\n  - UNPKG (resolves to the latest version)\n    - `https:\u002F\u002Funpkg.com\u002Fgrapesjs`\n    - `https:\u002F\u002Funpkg.com\u002Fgrapesjs\u002Fdist\u002Fcss\u002Fgrapes.min.css`\n  - CDNJS (replace `X.X.X` with the current version)\n    - `https:\u002F\u002Fcdnjs.cloudflare.com\u002Fajax\u002Flibs\u002Fgrapesjs\u002FX.X.X\u002Fgrapes.min.js`\n    - `https:\u002F\u002Fcdnjs.cloudflare.com\u002Fajax\u002Flibs\u002Fgrapesjs\u002FX.X.X\u002Fcss\u002Fgrapes.min.css`\n- NPM\n  - `npm i grapesjs`\n- GIT\n  - `git clone https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fgrapesjs.git`\n\nFor the development purpose you should follow instructions below.\n\n## Usage\n\n```html\n\u003Clink rel=\"stylesheet\" href=\"path\u002Fto\u002Fgrapes.min.css\" \u002F>\n\u003Cscript src=\"path\u002Fto\u002Fgrapes.min.js\">\u003C\u002Fscript>\n\n\u003Cdiv id=\"gjs\">\u003C\u002Fdiv>\n\n\u003Cscript type=\"text\u002Fjavascript\">\n  var editor = grapesjs.init({\n    container: '#gjs',\n    components: '\u003Cdiv class=\"txt-red\">Hello world!\u003C\u002Fdiv>',\n    style: '.txt-red{color: red}',\n  });\n\u003C\u002Fscript>\n```\n\nFor a more practical example I'd suggest looking up the code inside this demo: http:\u002F\u002Fgrapesjs.com\u002Fdemo.html\n\n## Development\n\nFollow the [Contributing Guide](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fgrapesjs\u002Fblob\u002Fdev\u002FCONTRIBUTING.md).\n\n## Documentation\n\nCheck the getting started guide here: [Documentation]\n\n## API\n\nAPI References could be found here: [API-Reference]\n\n## Testing\n\n```sh\n$ pnpm test\n```\n\n## Plugins\n\n[Official Plugins](https:\u002F\u002Fgithub.com\u002Forgs\u002FGrapesJS\u002Frepositories?q=-repo%3Agrapesjs%2Fgrapesjs&type=source) | [Community Plugins](https:\u002F\u002Fgithub.com\u002Ftopics\u002Fgrapesjs-plugin)\n\n### Wrappers\n\n- [@grapesjs\u002Freact](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Freact) - GrapesJS wrapper for React that allows you to build custom and declarative UI for your editor.\n\n### Extensions\n\n- [grapesjs-plugin-export](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fexport) - Export GrapesJS templates in a zip archive\n- [grapesjs-plugin-filestack](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Ffilestack) - Add Filestack uploader in Asset Manager\n- [grapesjs-plugin-ckeditor](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fckeditor) - Replaces the built-in RTE with CKEditor\n- [grapesjs-tui-image-editor](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Ftui-image-editor) - GrapesJS TOAST UI Image Editor\n- [grapesjs-blocks-basic](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fblocks-basic) - Basic set of blocks\n- [grapesjs-plugin-forms](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fcomponents-forms) - Set of form components and blocks\n- [grapesjs-navbar](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fcomponents-navbar) - Simple navbar component\n- [grapesjs-component-countdown](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fcomponents-countdown) - Simple countdown component\n- [grapesjs-style-gradient](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fstyle-gradient) - Add `gradient` type input to the Style Manager\n- [grapesjs-style-filter](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fstyle-filter) - Add `filter` type input to the Style Manager\n- [grapesjs-style-bg](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fstyle-bg) - Full-stack background style property type, with the possibility to add images, colors, and gradients\n- [grapesjs-blocks-flexbox](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fblocks-flexbox) - Add the flexbox block\n- [grapesjs-lory-slider](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fcomponents-lory) - Slider component by using [lory](https:\u002F\u002Fgithub.com\u002Fmeandmax\u002Flory)\n- [grapesjs-tabs](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fcomponents-tabs) - Simple tabs component\n- [grapesjs-tooltip](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fcomponents-tooltip) - Simple, CSS only, tooltip component for GrapesJS\n- [grapesjs-custom-code](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fcomponents-custom-code) - Embed custom code\n- [grapesjs-touch](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Ftouch) - Enable touch support\n- [grapesjs-indexeddb](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fstorage-indexeddb) - Storage wrapper for IndexedDB\n- [grapesjs-firestore](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fstorage-firestore) - Storage wrapper for [Cloud Firestore](https:\u002F\u002Ffirebase.google.com\u002Fdocs\u002Ffirestore)\n- [grapesjs-parser-postcss](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fparser-postcss) - Custom CSS parser for GrapesJS by using [PostCSS](https:\u002F\u002Fgithub.com\u002Fpostcss\u002Fpostcss)\n- [grapesjs-typed](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fcomponents-typed) - Typed component made by wrapping Typed.js library\n- [grapesjs-ui-suggest-classes](https:\u002F\u002Fgithub.com\u002Fsilexlabs\u002Fgrapesjs-ui-suggest-classes) - Enable auto-complete of classes in the SelectorManager UI\n- [grapesjs-fonts](https:\u002F\u002Fgithub.com\u002Fsilexlabs\u002Fgrapesjs-fonts) - Custom Fonts plugin, adds a UI to manage fonts in websites\n- [grapesjs-symbols](https:\u002F\u002Fgithub.com\u002Fsilexlabs\u002Fgrapesjs-symbols) - Symbols plugin to reuse elements in a website and accross pages\n- [grapesjs-click](https:\u002F\u002Fgithub.com\u002Fbgrand-ch\u002Fgrapesjs-click) - Grab and drop blocks and components with click (no more drag-and-drop)\n- [grapesjs-float](https:\u002F\u002Fgithub.com\u002Fbgrand-ch\u002Fgrapesjs-float) - Anchor a floating element next to another element (selected component, ...)\n\n### Presets\n\n- [grapesjs-preset-webpage](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fpreset-webpage) - Webpage Builder\n- [grapesjs-preset-newsletter](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fpreset-newsletter) - Newsletter Builder\n- [grapesjs-mjml](https:\u002F\u002Fgithub.com\u002FGrapesJS\u002Fmjml) - Newsletter Builder with MJML components\n\nFind out more about plugins here: [Creating plugins](https:\u002F\u002Fgrapesjs.com\u002Fdocs\u002Fmodules\u002FPlugins.html)\n\n## Support\n\nIf you like the project and you wish to see it grow, please consider supporting us with a donation of your choice or become a backer\u002Fsponsor via [Open Collective](https:\u002F\u002Fopencollective.com\u002Fgrapesjs)\n\n[![PayPalMe](http:\u002F\u002Fgrapesjs.com\u002Fassets\u002Fimages\u002Fppme.png)](https:\u002F\u002Fpaypal.me\u002Fgrapesjs)\n[![Bitcoin](https:\u002F\u002Fuser-images.githubusercontent.com\u002F11614725\u002F52977952-87235f80-33cf-11e9-9607-7a9a354e1155.png)](https:\u002F\u002Fcommerce.coinbase.com\u002Fcheckout\u002Ffc90b940-558d-408b-a166-28a823c98173)\n\n\u003Ca href=\"https:\u002F\u002Fopencollective.com\u002Fgrapesjs\">\u003Cimg src=\"https:\u002F\u002Fopencollective.com\u002Fgrapesjs\u002Ftiers\u002Fsponsors.svg?avatarHeight=64\">\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fopencollective.com\u002Fgrapesjs\">\u003Cimg src=\"https:\u002F\u002Fopencollective.com\u002Fgrapesjs\u002Ftiers\u002Fbackers.svg?avatarHeight=64\">\u003C\u002Fa>\n\n\u003Cbr>\n\n[![BrowserStack](https:\u002F\u002Fuser-images.githubusercontent.com\u002F11614725\u002F39406324-4ef89c40-4bb5-11e8-809a-113d9432e5a5.png)](https:\u002F\u002Fwww.browserstack.com)\u003Cbr\u002F>\nThanks to [BrowserStack](https:\u002F\u002Fwww.browserstack.com) for providing us browser testing services\n\n## License\n\nBSD 3-clause\n\n[Documentation]: https:\u002F\u002Fgrapesjs.com\u002Fdocs\u002F\n[API-Reference]: https:\u002F\u002Fgrapesjs.com\u002Fdocs\u002Fapi\u002F\n[CMS]: https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FContent_management_system\n","GrapesJS 是一个免费且开源的网页构建框架，用于无需编码即可快速轻松地创建HTML模板。其核心功能包括拖放式布局、样式管理和变量定义等，支持用户通过直观的界面设计网页、邮件模板或移动应用界面。项目采用TypeScript编写，提供了丰富的API和插件系统，允许开发者根据需求扩展功能。GrapesJS特别适用于需要在内容管理系统(CMS)中加速动态模板创建的场景，也适合希望提供无代码编辑体验的应用程序集成。",2,"2026-06-11 02:55:10","top_language"]