TypeScript icon, indicating that this package has built-in type declarations

5.1.0 • Public • Published

CKEditor 5 rich text editor component for Vue.js 3+

npm version Build Status Coverage Status Dependency Status

⚠️ This repository contains the CKEditor 5 component for Vue.js 3+. The component for lower Vue.js versions is located in another repository - @ckeditor/ckeditor5-vue2.

Official CKEditor 5 rich text editor component for Vue.js.

Developer Documentation 📖

See the "Rich text editor component for Vue.js" guide in the CKEditor 5 documentation to learn more:


After cloning this repository, install necessary dependencies:

yarn install

Executing tests

yarn run test -- [additional options]
# or
yarn t -- [additional options]

The command accepts the following options:

  • --coverage (-c) – Whether to generate the code coverage.
  • --source-map (-s) – Whether to attach the source maps.
  • --watch (-w) – Whether to watch test files.
  • --reporter (-r) – Reporter for Karma (default: mocha, can be changed to dots).
  • --browsers (-b) – Browsers that will be used to run tests (default: Chrome, available: Firefox).

If you are going to change the component (src/ckeditor.js) or plugin (src/plugin.js) files, remember about rebuilding the package. You can use yarn run develop in order to do it automatically.

Building the package

Build a minified version of the package that is ready to publish:

yarn run build

Changelog generator

yarn run changelog

Testing component with Vue CLI

When symlinking the component in an application generated using Vue CLI, make sure your vue.config.js file configures webpack in the following way:

module.exports = {
	configureWebpack: {
		resolve: {
			symlinks: false

Otherwise, the application will fail to load the component correctly and, as a result, it will throw a build error.

Releasing package


Before releasing a new version, run a demo project to confirm that the integration works in a real-world scenario.

  1. Navigate to the demo folder.
  2. Reinstall the dependencies.
  3. Run yarn dev to see if the integration works as expected.
  4. Run yarn build to see if the project with the integration builds without errors.
Dependencies in the `demo` project need to be reinstalled after any changes to the integration, because in `package.json` we use `file:` instead of `link:` due to Vite limitations. Unlike `link:`, which creates a symlink to the integration, `file:` copies its contents when `yarn install` is run and never updates after that.


Before starting the release process, you need to generate the changelog:

yarn run changelog


After generating the changelog, you are able to release the package.

First, you need to bump the version:

yarn run release:bump-version

You can also use the --dry-run option in order to see what this task does.

After bumping the version, you can publish the changes:

yarn run release:publish

Note: Only the dist/ directory will be published.


Licensed under the terms of GNU General Public License Version 2 or later. For full details about the license, please check the LICENSE.md file.

Package Sidebar


npm i @ckeditor/ckeditor5-vue

Weekly Downloads






Unpacked Size

53.4 kB

Total Files


Last publish


  • ckeditor