TypeScript-first rich text editor ecosystem for React, built on Lexical.
🚀 Production-ready presets + 🧩 headless extension runtime + 🔓 MIT license
Luthor is an open-source rich text editor ecosystem designed for teams that want modern DX without editor lock-in.
- 📦 Two-package model: start fast with presets, go deep with headless composition
- 🛡️ TypeScript-first APIs: safe command/state integrations
- ⚡ Lexical-powered: modern performance and extensibility
- 🎨 UI freedom: build custom editor experiences when product requirements evolve
- 📦 ESM-first distribution: optimized for modern React bundling
| Package | Purpose | Best for | npm |
|---|---|---|---|
@lyfie/luthor |
Plug-and-play editor presets + polished UI | Shipping quickly with minimal setup | npm |
@lyfie/luthor-headless |
Headless extension runtime and typed editor system | Full UI control and custom workflows | npm |
pnpm add @lyfie/luthor react react-domimport { ExtensiveEditor } from "@lyfie/luthor";
import "@lyfie/luthor/styles.css";
export function App() {
return <ExtensiveEditor placeholder="Start writing..." />;
}Need full control?
pnpm add @lyfie/luthor-headless lexical @lexical/code @lexical/link @lexical/list @lexical/markdown @lexical/react @lexical/rich-text @lexical/selection @lexical/table @lexical/utils react react-dom- Website: luthor.fyi
- Docs home: luthor.fyi/docs/getting-started
- Live demo: luthor.fyi/demo
- GitHub: lyfie-app/luthor
- Sponsor: github.com/sponsors/lyfie-app