{"id":18290395,"url":"https://github.com/landofcoder/strapi-pagebuilder","last_synced_at":"2026-03-19T03:43:31.620Z","repository":{"id":99605235,"uuid":"357829348","full_name":"landofcoder/strapi-pagebuilder","owner":"landofcoder","description":"Strapi CMS pagebuilder plugin","archived":false,"fork":false,"pushed_at":"2021-12-30T03:45:15.000Z","size":396,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-09-12T22:27:56.840Z","etag":null,"topics":["content-builder","pagebuilder","strapi-cms"],"latest_commit_sha":null,"homepage":"https://landofcoder.com","language":"SCSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/landofcoder.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-04-14T08:22:32.000Z","updated_at":"2024-03-30T11:47:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"c6a3f6c1-90f4-4042-8629-20d124da5f3b","html_url":"https://github.com/landofcoder/strapi-pagebuilder","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/landofcoder/strapi-pagebuilder","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/landofcoder%2Fstrapi-pagebuilder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/landofcoder%2Fstrapi-pagebuilder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/landofcoder%2Fstrapi-pagebuilder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/landofcoder%2Fstrapi-pagebuilder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/landofcoder","download_url":"https://codeload.github.com/landofcoder/strapi-pagebuilder/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/landofcoder%2Fstrapi-pagebuilder/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29380604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-12T19:05:20.189Z","status":"ssl_error","status_checked_at":"2026-02-12T19:01:44.216Z","response_time":55,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["content-builder","pagebuilder","strapi-cms"],"created_at":"2024-11-05T14:10:43.936Z","updated_at":"2026-02-12T20:32:04.004Z","avatar_url":"https://github.com/landofcoder.png","language":"SCSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# strapi-plugin-page-builder\nAdd GrapesJS builder to your own strapi application\nThis is simple pagebuilder for Strapi\n\n![Webpage builder demo](/admin/src/components/GrapesEditor/assets/img/demo.png)\n\n# Setup\nInstall package\n```sh\nnpm i --save page-builder\n# or\nyarn add page-builder\n```\n\nCreate or edit `your-project/admin/admin.config.js` and add sass loader (which is required by GrapesJS)\n```javascript\nmodule.exports = {\n  webpack: (config, webpack) =\u003e {\n    // Note: we provide webpack above so you should not `require` it\n    // Perform customizations to webpack config\n    // Important: return the modified config\n\n    // Allow scss modules\n    config.resolve = { ...config.resolve, extensions: [...config.resolve.extensions, '.scss'] };\n\n    // Configure a SASS loader\n    config.module.rules.push({\n      test: /\\.s[ac]ss$/i,\n      use: [\n        'style-loader',\n        'css-loader',\n        'sass-loader',\n        {\n          loader: 'sass-loader',\n          options: {\n            implementation: require('sass'),\n          },\n        },\n      ],\n    });\n\n    return config;\n  },\n};\n```\n\nEdit your model(e.g. the model that'll handle web builder field) controllers (`your-project/api/your-model/controllers/your-model.js`).\n\u003e At the time of this release, strapi does not allow to add custom private fields to model so all the data required to init editor will be stored in your model. The following step prevent useless data to be returned on get requests:\n```javascript\n'use strict';\nconst { sanitizeEntity } = require('strapi-utils');\n\nconst cleanupEntity = (entity) =\u003e {\n  const { content } = entity;\n\n  return { ...entity, content: { html: content.html, css: content.css } };\n};\n\nmodule.exports = {\n  async find(ctx) {\n    let entities;\n    if (ctx.query._q) {\n      entities = await strapi.services.yourModel.search(ctx.query); /* eslint-disable-line no-undef */\n    } else {\n      entities = await strapi.services.yourModel.find(ctx.query); /* eslint-disable-line no-undef */\n    }\n\n    return entities.map((entity) =\u003e {\n      return sanitizeEntity(cleanupEntity(entity), { model: strapi.models.yourModel } /* eslint-disable-line no-undef */);\n    });\n  },\n  async findOne(ctx) {\n    const { id } = ctx.params;\n\n    const entity = await strapi.services.yourModel.findOne({ id }); /* eslint-disable-line no-undef */\n\n    return sanitizeEntity(cleanupEntity(entity), { model: strapi.models.yourModel } /* eslint-disable-line no-undef */);\n  },\n};\n```\n\u003e NB: this code assumes that you named a field `content` with type `json` in model `yourModel`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flandofcoder%2Fstrapi-pagebuilder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flandofcoder%2Fstrapi-pagebuilder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flandofcoder%2Fstrapi-pagebuilder/lists"}