Install:
yarn
Run:
yarn start
Slate is an extensible Rich Text library similar to Draftjs and Quill. See https://github.com/ianstormtaylor/slate
Build a custom Slate editor with the following features:
-
A toolbar at the top with the standard rich text see https://www.slatejs.org/#/rich-text
-
Images:
- Image linking toolbar see https://www.slatejs.org/#/images
- Image upload with button in toolbar, when clicked shows a file browser.
- Support only valid image file formats
-
Lists:
- Ordered and unordered lists with tab support (e.g. tabbing an unordered or ordered list will indent it up to 3 levels. E.g: Level 2 Level 3
- Support for Shift + Tab (goes down a tab indent level)
- Save/Cancel functionality
- Save - stores new new editor content
- Cancel - restores to the old saved content
-
A configurable limit on the number of top-level block nodes in the editor, also support ‘unlimited’, default. Grey out / prevent the save functionality if the number of block nodes is greater than the limit. May have to implement a custom plugin. See https://docs.slatejs.org/guides/data-model#documents-and-nodes and https://www.slatejs.org/#/plugins
-
Store the editor content and images uploaded in browser local storage.
React.js, Slate plugin