CKEditor 5 rich text editor component for Vue.js 3+
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:
- Quick start
- Using component locally
- Using CKEditor from source
- Using the Document editor build
- Component directives
- Component events
Contributing
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 todots
).--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
Prerequisites
Before releasing a new version, run a demo project to confirm that the integration works in a real-world scenario.
- Navigate to the
demo
folder. - Reinstall the dependencies.
- Run
yarn dev
to see if the integration works as expected. - 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.
Changelog
Before starting the release process, you need to generate the changelog:
yarn run changelog
Publishing
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.
License
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.