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:
Note
This project requires pnpm v12.8.2. You can check your version with pnpm --version and update if needed with npm install -g pnpm@12.8.2.
After cloning this repository, install necessary dependencies:
pnpm installIf you need to run tests or demos with a commercial license, copy .env.example to .env and fill in the required CKEDITOR_* variables.
Keep .env local only.
To manually test the editor integration with different versions of React, you can start the development server using one of the commands below:
pnpm run dev:16 # Open the demo projects using React 16.
pnpm run dev:17 # Open the demo projects using React 17.
pnpm run dev:18 # Open the demo projects using React 18.
pnpm run dev:19 # Open the demo projects using React 19.To run the full automated test suite, use:
pnpm run testTo run only the real-editor integration suite used by the tests_integration CI job, use:
pnpm exec vitest run --project integrationThis command runs the integration subset against the ckeditor5 and ckeditor5-premium-features versions currently installed in node_modules.
After a regular pnpm install, these are the versions locked in pnpm-lock.yaml, which may be older than the latest versions that the CI job installs.
To reproduce the tests_integration CI job locally, install the latest packages first:
pnpm add -D ckeditor5@latest ckeditor5-premium-features@latest
pnpm exec vitest run --project integrationIf you want to run the tests in watch mode, use the following command:
pnpm run test:watchTo build the package that is ready to publish, use the following command:
pnpm run buildLicensed 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.