MMS • Dylan Schiemann
Article originally posted on InfoQ. Visit InfoQ
Slate.js, the completely customizable framework for building rich text editors, and Plate, a large collection of components and plugins for Slate. Both are authored in TypeScript.
Slate 0.82.0 made significant updates for its support of editing on Android devices and introduces useSlateSelection
, and slate-react 0.82.0 additionally adds a React hook that triggers whenever the selection changes.
Slate provides vanilla JavaScript versions of its editor along a slate-react, focused on React developers. Third-party teams also create version of Slate optimized for Angular and Vue.js users.
Plate 15 improves its Link toolbar, improves paste handling of hyperlinks into an editor page, and provides greater control over rendering within plugins.
Real-time collaborative editing is possible with Slate and Plate, most commonly with slate-yjs. Other popular utilities include the remark-slate and remark-slate-transformer. Developers looking to create a math and science editor can leverage the Slate-based CoCalc.
Slate and Plate release regularly, typically the same day as significant updates land in their main branches. Work is actively underway to fully support React 18.
Developers can explore available features in the Slate examples and Plate playground.
Slate and Plate are the editor of choice for Living Spec, while Slate is also used by several editor products including Slite, Coda, KiteMaker, and many more products.
Both Slate and Plate are open-source software available under the MIT license. Contributions and feedback are encouraged via the Slate GitHub project and Plate GitHub project and should follow the Slate contribution guidelines and Plate contribution guidelines respectively. Slate and Plate share an active discussion communit via the Slate Slack group.
Disclosure: The author of this news entry is a member of the core team for Slate and Plate and works on the Living Spec product mentioned in this news entry.