{"id":14384594,"url":"https://github.com/nib-edit/nib","last_synced_at":"2025-04-04T19:12:13.877Z","repository":{"id":33751456,"uuid":"161293975","full_name":"nib-edit/nib","owner":"nib-edit","description":"Wysiwyg / Text editor components built using React and Prosemirror","archived":false,"fork":false,"pushed_at":"2023-06-01T12:01:09.000Z","size":8482,"stargazers_count":225,"open_issues_count":26,"forks_count":28,"subscribers_count":8,"default_branch":"master","last_synced_at":"2024-05-05T04:21:17.252Z","etag":null,"topics":["editor","nib","prosemirror","react","reactjs","text-editor","typescript","wysiwyg-editor"],"latest_commit_sha":null,"homepage":"https://nib-edit.github.io/nib/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nib-edit.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":"license.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2018-12-11T07:24:02.000Z","updated_at":"2024-04-21T05:20:08.000Z","dependencies_parsed_at":"2023-01-15T02:30:34.088Z","dependency_job_id":"fd6c68ad-e307-45d3-863b-f0fa32a16083","html_url":"https://github.com/nib-edit/nib","commit_stats":{"total_commits":412,"total_committers":7,"mean_commits":"58.857142857142854","dds":"0.043689320388349495","last_synced_commit":"5ae9da752320c8e306c28f8e20ed4a083f65c6e6"},"previous_names":["jpuri/edit","jpuri/nib"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nib-edit%2Fnib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nib-edit%2Fnib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nib-edit%2Fnib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nib-edit%2Fnib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nib-edit","download_url":"https://codeload.github.com/nib-edit/nib/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247234923,"owners_count":20905854,"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":["editor","nib","prosemirror","react","reactjs","text-editor","typescript","wysiwyg-editor"],"created_at":"2024-08-28T18:01:29.905Z","updated_at":"2025-04-04T19:12:13.861Z","avatar_url":"https://github.com/nib-edit.png","language":"JavaScript","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"readme":"# NIB\n\n## [Demo](http://www.nibedit.com)\n\nDespite various options available for rich text editing in html, it continues to be extremely challenging area. I found [prosemirror](http://prosemirror.net) to be the best available solution for the problem. It is great work by author [Marijn Haverbeke](http://marijnhaverbeke.nl/).\n\nMaking an editor ground up from a framework is still much work, the project aims at building components for rich text editing using prosemirror. These components can be quickly integrated into react or even non-react applications.\n\nNib not only has good rich text editing capabilities but also addresses complex editing requirements like tracking changes made to a document, adding comments in document, collaborative editing and more...\n\n![Editor image](https://i.imgur.com/WyM2rzq.png)\n\n## Setup\n\nSetup of the editor is quite straight forward. It is required to be installed from `npm`.\n\n#### Installing packages:\n\nEither `npm` or `yarn` commands can be used.\n\n```\nnpm i nib-core --save\n```\n\n#### Writing editor component:\n\n```\nimport React from \"react\";\nimport Editor from \"nib-core\";\n\nconst MyEditor = () =\u003e \u003cEditor /\u003e;\n```\n\nPlease note that the lib does not work server side.\n\n## Props\n\nProps supported by the editor.\n\n| S.No. | Name         | Description                                                                                                                                                      |\n| ----- | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| 1     | addons       | array of plugins for adding functionality to core editor                                                                                                         |\n| 2     | autoFocus    | to focus editor by default                                                                                                                                       |\n| 3     | config       | configuring the plugin, toolbar etc in editor, [here](https://github.com/nib-edit/Nib/blob/master/packages/core/src/config/editor.js) are default configurations |\n| 4     | defaultValue | value to initialize editor content                                                                                                                               |\n| 5     | licenseKey   | license key for nib editor                                                                                                                                       |\n| 6     | onChange     | callback which is called on any change in the editor                                                                                                             |\n| 7     | spellCheck   | boolean property to enable default browser spellCheck in the editor                                                                                              |\n| 8     | styleConfig  | used to do more detailed style changes in the editor, [here](https://github.com/nib-edit/Nib/blob/master/packages/core/src/config/styles.js) is the default      |\n| 9     | theme        | theming of the editor, [here](https://github.com/nib-edit/Nib/blob/master/packages/core/src/config/theme.js) is default theme                                    |\n\n## Features\n\n1. Support for almost all browsers and devices\n2. Multiple rich text styling options like bold, italic, underline, strike, subscript, superscript, text color, filll color, etc\n3. Support for different block types paragraph, h1 - h6, blockquote etc\n4. Support for hyperlinks\n5. Support for nested ordered and unordered lists\n6. Support for images with options like wrapping, aligning, re-sizing or linking images\n7. Support for inline mode with floating toolbar\n8. Support for customized display - full page, word like display, etc\n9. Allow undo and redo changes.\n10. Help menu that display supported formatting options and their keyboard shortcuts\n11. Changing look and feel of editor using different themes\n12. Convert prosemirror JSON to and from markdown\n13. Convert prosemirror JSON to and from HTML\n14. Source code editing\n15. Table with advance options like add/remove column/row, resize columns, etc\n16. Support for displaying video from sources like Youtube or Vimeo\n17. Flexibility to add custom plugin\n18. Track changes make of document along with any metadata saved about the change like username, timestamp, etc\n19. Adding / editing comments to document\n20. Collaborative editing with multiple users on same document\n\n## License\n\nGNU GENERAL PUBLIC LICENSE.\n\n## Contact\n\nFor details or queries drop mail to jyotipuri@gmail.com.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnib-edit%2Fnib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnib-edit%2Fnib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnib-edit%2Fnib/lists"}