owls-editor
v0.5.9
Published
A lightweight, plugin-first, block-based editor for React + TypeScript.
Readme
OwlsEditor
A lightweight, plugin-first, block-based editor for React + TypeScript.
Packages
@owls/core— headless engine, plugin API, types@owls/react— React bindings (<OwlsEditor />, hooks)@owls/blocks-basic— paragraph, heading, list
Architecture
- Document model: JSON tree of typed blocks (
{ id, type, props, content[] }) - Plugin API: each plugin contributes blocks, marks, commands, keymaps, slash items, serializers
- Headless core: zero styling in the engine; theming lives in optional packages
- Storage: JSON is the source of truth — markdown, HTML, PDF are exporters
Dev
bun install
bun run build # build all packages once
bun run dev # tsup --watch on every packageLinking into a consumer app
// consumer package.json
"@owls/core": "link:../owlsEditor/packages/core",
"@owls/react": "link:../owlsEditor/packages/react",
"@owls/blocks-basic": "link:../owlsEditor/packages/blocks-basic"