Official React component for CKEditor 5 – the best browser-based rich text editor.
npm install @ckeditor/ckeditor5-react


!Dependency Status
Official CKEditor 5 rich text editor component for React.
See the "Rich text editor component for React" guide in the CKEditor 5 documentation to learn more:
* Quick start
* Using CKEditr 5 Builder
* Installing from npm
* Component properties
> [!NOTE]
> This project requires pnpm v10 or higher. You can check your version with pnpm --version and update if needed with npm install -g pnpm@latest.
After cloning this repository, install necessary dependencies:
``bash`
pnpm install
To manually test the editor integration with different versions of React, you can start the development server using one of the commands below:
`bash`
pnpm run dev:16 # Open the demo projects using React 16.
pnpm run dev:18 # Open the demo projects using React 18.
pnpm run dev:19 # Open the demo projects using React 19.
To test the editor integration against a set of automated tests, run the following command:
`bash`
pnpm run test
If you want to run the tests in watch mode, use the following command:
`bash`
pnpm run test:watch
To build the package that is ready to publish, use the following command:
`bash`
pnpm run build
CircleCI automates the release process and can release both channels: stable (X.Y.Z) and pre-releases (X.Y.Z-alpha.X, etc.).
Before you start, you need to prepare the changelog entries.
1. Make sure the #master branch is up-to-date: git fetch && git checkout master && git pull.git checkout -b release-[YYYYMMDD]
1. Prepare a release branch: where YYYYMMDD is the current day.pnpm run release:prepare-changelog
1. Generate the changelog entries: .--date
* You can specify the release date by passing the option, e.g., --date=2025-06-11.--dry-run
* By passing the option, you can check what the script will do without actually modifying the files.the/a
* Read all the entries, correct poor wording and other issues, wrap code names in backticks to format them, etc.
* Add the missing articles, () to method names, "it's" -> "its", etc.#master
* A newly introduced feature should have just one changelog entry – something like "The initial implementation of the FOO feature." with a description of what it does.
1. Commit all changes and prepare a new pull request targeting the branch.@ckeditor/ckeditor-5-platform` team to review the pull request and trigger the release process.
1. Ping the
Licensed under a dual-license model, this software is available under:
* the GNU General Public License Version 2 or later,
* or commercial license terms from CKSource Holding sp. z o.o.
For more information, see: https://ckeditor.com/legal/ckeditor-licensing-options.