SL

Slate

slate

A completely customizable framework for building rich text editors.

Tables
canvas
contenteditable
custom
document
edit
editor
html
immutable
markdown
medium
Stars
32k
Weekly
0
Open issues
654
Bundle
~60 kB

Installation

npm install slate

Code example

import { useSlate } from "slate";

const rows = [
  { id: 1, name: "Ada", role: "Engineer" },
  { id: 2, name: "Linus", role: "Maintainer" },
];

export function Example() {
  const table = useSlate({ data: rows, columns: [{ accessorKey: "name" }, { accessorKey: "role" }] });
  return <pre>{JSON.stringify(table, null, 2)}</pre>;
}

Pros & cons

Pros

  • Actively maintained by ianstormtaylor
  • 0 weekly downloads. Battle tested
  • First-class TypeScript definitions
  • MIT licensed

Considerations

  • Adds roughly ~60 kB to your bundle
  • Needs client-only rendering in SSR frameworks
  • Not supported in React Native
  • 654 open issues on GitHub

FAQs

Alternatives & similar libraries