Getting started
Installation
One package. Installing a binding installs the engine with it, so a React application needs nothing else · no second package, and no third-party dependency arrives behind it.
npm i @matrajs/react # or vue, svelte, solid Without a framework, or with one that needs no binding, install the engine directly.
npm i @matrajs/core It ships no appearance. Styling is a page of its own, and worth reading before the first afternoon rather than after it.
Framework bindings
Each one depends on @matrajs/core and pulls it in for you.
npm i @matrajs/react # useEditor, useEditorState, EditorContent
npm i @matrajs/vue # useEditor, EditorContent
npm i @matrajs/svelte # matra — a use: action and a store
npm i @matrajs/solid # createMatra — a ref and a signal All four are MIT and all four are thin · the editor does not care which framework renders around it, and no binding re-implements anything. Angular, Qwik and plain JavaScript need no package at all — three calls and a teardown, which Frameworks shows for each of them.
The paid packages
npm i @matrajs/ai # streaming edits
npm i @matrajs/collab # authority, rebasing, remote cursors
npm i @matrajs/versions # snapshots, diff, restore Installed the same way as everything else. All three are source-available under a commercial licence rather than MIT · free for evaluation, development, testing, teaching, personal projects and organisations with fewer than three developers on the software, paid beyond that. Each has its own page — AI, Collaboration and Version history — and the terms are on the licence page.
Requirements
- Any bundler. The packages ship ESM and CJS with types.
- No peer dependencies for the core.
- Node 18+ for the parts that run on a server · Markdown needs no DOM.