GitHub Hot Board

GitHub Hot Board · Archiwum repozytorium

meta/lexical

Lexical is an extensible text editor framework that provides excellent reliability, accessibility and performance. (Opis pochodzi z samego repozytorium.)

TypeScript

Dane na October 29meta

Najlepsze miejsce

#307

Mistrzowie · TypeScript wg języka

24K

Wszystkich gwiazdek

2.3K

Wszystkich forków

0

Dni w rankingach (30 d)

Licencja: MITOstatni push: October 29Otwarte issues (z PR): 390Zbierane od 2026-10-25; nieznane = jeszcze nie zebrane

Dokumentacja projektu

Lexical

An extensible text editor framework that provides excellent reliability, accessibility and performance.

NPM Version NPM Downloads Build Status Discord

Documentation | Getting Started | Playground | Gallery


Features

  • Framework Agnostic Core - Works with any UI framework, with official React bindings
  • Reliable & Accessible - Built-in accessibility support and WCAG compliance
  • Extensible - Plugin-based architecture with powerful extension points
  • Immutable State Model - Time-travel ready with built-in undo/redo
  • Collaborative Editing - Real-time collaboration via Yjs integration
  • Serialization - Import/export from JSON, Markdown, and HTML
  • Rich Content - Support for tables, lists, code blocks, images, and custom nodes
  • Cross-browser - Firefox 115+, Safari 15+, Chrome 86+ (see Supported Browsers)
  • Type Safe - Written in TypeScript with comprehensive type definitions

Quick Start

For framework-agnostic usage, start with the Vanilla JS quick start or the Vanilla JS example.

For React applications, install Lexical with the official React bindings:

npm install lexical @lexical/react
import { $getRoot, $getSelection } from 'lexical';
import { LexicalComposer } from '@lexical/react/LexicalComposer';
import { PlainTextPlugin } from '@lexical/react/LexicalPlainTextPlugin';
import { ContentEditable } from '@lexical/react/LexicalContentEditable';
import { HistoryPlugin } from '@lexical/react/LexicalHistoryPlugin';
import { LexicalErrorBoundary } from '@lexical/react/LexicalErrorBoundary';

const initialConfig = {
  namespace: 'MyEditor',
  onError: (error) => console.error(error),
};

function Editor() {
  return (
    <LexicalComposer initialConfig={initialConfig}>
      <PlainTextPlugin
        contentEditable={<ContentEditable />}
        ErrorBoundary={LexicalErrorBoundary}
      />
      <HistoryPlugin />
    </LexicalComposer>
  );
}

Try it yourself:

Development

# Install dependencies
pnpm install

# Start playground dev server
pnpm run start

# Run tests
pnpm run test-unit
pnpm run test-e2e-chromium

# Lint and type check
pnpm run ci-check

See CONTRIBUTING.md for detailed development guidelines.

Documentation

Community & Support

Browser Support

Browser Version
Chrome 86+
Firefox 115+
Safari 15+
Edge 86+

Contributors

We welcome contributions! Please read our Contributing Guide to learn about our development process and how to propose bugfixes and improvements.

License

MIT License Copyright ©2026 Meta Platforms, Inc.

Aktualne miejsca

Przebieg z 30 dni

Brak wpisów w ostatnich 30 dniach.

Wklej odznakę do swojego README · meta/lexical[![Wklej odznakę do swojego README](https://git.vaiox.xyz/api/badge/meta/lexical.svg)](https://git.vaiox.xyz/pl/repo/meta/lexical)

Badge · 任何仓库都可以挂 —— 未上榜的仓库显示灰章,上完榜会自动点亮。

<a href="https://git.vaiox.xyz/pl/repo/meta/lexical"><img src="https://git.vaiox.xyz/api/badge/meta/lexical.svg" alt="Wklej odznakę do swojego README" height="20"></a>

← Powrót do rankingów

GitHub Hot BoardWehikuł czasuOdkrywaj联系我们 · Contact