Slate's codebase is monorepo managed with [Lerna](https://lernajs.io/). It consists of a handful of packages—although you won't always use all of them. They are:
|[`slate`](./slate)|[](./packages/slate/package.json)|[](https://unpkg.com/slate/dist/slate.min.js)|Slate's core data model logic.|
|[`slate-base64-serializer`](./slate-base64-serializer)|[](./packages/slate-base64-serializer/package.json)|[](https://unpkg.com/slate-base64-serializer/dist/slate-base64-serializer.min.js)|A Base64 string serializer for Slate documents.|
|[`slate-html-serializer`](./slate-html-serializer)|[](./packages/slate-html-serializer/package.json)|[](https://unpkg.com/slate-html-serializer/dist/slate-html-serializer.min.js)|An HTML serializer for Slate documents.|
|[`slate-plain-serializer`](./slate-plain-serializer)|[](./packages/slate-plain-serializer/package.json)|[](https://unpkg.com/slate-plain-serializer/dist/slate-plain-serializer.min.js)|A plain text serializer for Slate documents.|
|[`slate-schema-violations`](./slate-schema-violations)|[](./packages/slate-schema-violations/package.json)|[](https://unpkg.com/slate-schema-violations/dist/slate-schema-violations.min.js)|Constants for the built-in schema violations.|
|[`slate-simulator`](./slate-simulator)|[](./packages/slate-simulator/package.json)|[](https://unpkg.com/slate-simulator/dist/slate-simulator.min.js)|A simulator for testing Slate editors and plugins.|