{"id":13727269,"url":"https://github.com/d4rekanguok/netlify-cms-widgets","last_synced_at":"2025-05-07T22:31:01.130Z","repository":{"id":35030433,"uuid":"197583611","full_name":"d4rekanguok/netlify-cms-widgets","owner":"d4rekanguok","description":"A collection of custom widgets for netlify-cms","archived":true,"fork":false,"pushed_at":"2022-12-10T23:05:57.000Z","size":4724,"stargazers_count":91,"open_issues_count":42,"forks_count":13,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-28T16:53:01.237Z","etag":null,"topics":["cms","custom-widgets","netlify-cms","netlify-cms-widgets","widgets"],"latest_commit_sha":null,"homepage":"https://custom-widgets.netlify.com","language":"TypeScript","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/d4rekanguok.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}},"created_at":"2019-07-18T12:34:29.000Z","updated_at":"2024-12-21T08:10:42.000Z","dependencies_parsed_at":"2023-01-15T12:30:24.742Z","dependency_job_id":null,"html_url":"https://github.com/d4rekanguok/netlify-cms-widgets","commit_stats":null,"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d4rekanguok%2Fnetlify-cms-widgets","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d4rekanguok%2Fnetlify-cms-widgets/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d4rekanguok%2Fnetlify-cms-widgets/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/d4rekanguok%2Fnetlify-cms-widgets/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/d4rekanguok","download_url":"https://codeload.github.com/d4rekanguok/netlify-cms-widgets/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252965298,"owners_count":21832865,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["cms","custom-widgets","netlify-cms","netlify-cms-widgets","widgets"],"created_at":"2024-08-03T01:03:47.066Z","updated_at":"2025-05-07T22:30:59.951Z","avatar_url":"https://github.com/d4rekanguok.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"\u003e Hi! If you are here for the file relation widget, NetlifyCMS now supported [this feature out of the box](https://www.netlifycms.org/docs/widgets/#relation). Docs is a bit spare, feel free to open an issue if you get stuck (a) using this new feature or (b) migrating away from `ncw-file-relation`. \n\n\n\u003ch1 align=\"center\"\u003eNetlifyCMS Custom Widgets\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003eA collection of custom widgets for \u003ca href=\"https://www.netlifycms.org/\"\u003enetlify-cms\u003c/a\u003e\u003c/p\u003e\n\n---\n\n\u003cp align=\"center\"\u003e⚠ Unstable: Under active development\u003c/p\u003e\n\n---\n\n## What's inside\n\nnpm package | description | docs\n---|---|---\n@ncwidgets/id | Generate a unique ID for new entries in a folder collection | \n@ncwidgets/file-relation | Dropdown select widget for a field inside a file collection (the default relation widget only works for folder collections) | [docs](packages/widget-file-relation/readme.md)\n@ncwidgets/reorder | Drag \u0026 drop to order entries in a folder collection | [docs](packages/widget-reorder/readme.md)\n@ncwidgets/netlify-cms | Custom netlify-cms build with file-relation \u0026 id built in | see [here](#drop-in)\n\n\n## How to use\n\n```js\nimport cms from 'netlify-cms-app'\nimport { Widget as IdWidget } from '@ncwidgets/id'\nimport { Widget as ReorderWidget } from '@ncwidgets/reorder'\nimport { Widget as FileRelationWidget } from '@ncwidgets/file-relation'\n\ncms.registerWidget(IdWidget)\ncms.registerWidget(ReorderWidget)\ncms.registerWidget(FileRelationWidget)\n\ncms.init()\n```\n\n### Drop-in\n\n`@ncwidgets/netlify-cms` is a drop-in replacement* for `netlify-cms`, but includes file-relation \u0026 id widget.\n\n```diff\n- \u003cscript src=\"https://unpkg.com/netlify-cms@^2.0.0/dist/netlify-cms.js\"\u003e\u003c/script\u003e\n+ \u003cscript src=\"https://unpkg.com/@ncwidgets/netlify-cms@^0.7.0/dist/netlify-cms.js\"\u003e\u003c/script\u003e\n```\n\n\\*Note that `@ncwidgets/netlify-cms` is **not a fork**. Since we only register additional custom widgets, it's very easy to keep the build up-to-date. It's also currently not a complete drop-in replacement — deprecated `dist/cms.js` and `cms.css` are not included.\n\n### With Gatsby\nEasiest way is to use the official netlify cms plugin. Please follow the instruction [here](https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-netlify-cms).\n\n```sh\nnpm i gatsby-plugin-netlify-cms netlify-cms-app\n```\n\nConfigure `gatsby-plugin-netlify-cms`:\n\n```js\n// gatsby-config.js\n\nmodule.exports = {\n  plugins: [\n    {\n      resolve: `gatsby-plugin-netlify-cms`,\n      options: {\n        manualInit: true,\n        modulePath: `${__dirname}/src/cms/cms.js`,\n      },\n    },\n  ]\n}\n\n```\n\nThen, install the widgets you need\n```sh\nnpm i @ncwidgets/id\n```\n\nAnd register them\n\n```js\n// src/cms/cms.js\n\nimport cms from 'netlify-cms-app'\nimport { Widget as IdWidget } from '@ncwidgets/id'\n\ncms.registerWidget(IdWidget)\ncms.init()\n```\n\n### With Hugo\nPlease see this example demo: https://github.com/d4rekanguok/ncwidgets-hugo-example\n\n## Contribute\n\nHas an idea for a widget? Please feel free to send over a PR, or open an issue with the `idea` tag.\n\n### Build\nThis is a monorepo with yarn workspace \u0026 lerna.\n\n```bash\n# Setup\nyarn\nyarn bootstrap\n\n# Launch the playground with \n# all the custom widgets at localhost:\nyarn playground:dev\n\n# Build widgets\nyarn build\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fd4rekanguok%2Fnetlify-cms-widgets","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fd4rekanguok%2Fnetlify-cms-widgets","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fd4rekanguok%2Fnetlify-cms-widgets/lists"}