CKEditor 5 – DLL Sample

Production sample

This is a demo of the classic editor build, initialized using the DLL builds.

The package generator creates an example plugin (MyPlugin) which is loaded into the editor by default. If you changed its name or toolbar items it exposes, make sure to update the editor configuration in the sample/dll.html file.

Uncaught TypeError

If the editor is not initialized correctly and the browser console displays an error such as the following:

Uncaught TypeError: Cannot read properties of undefined (reading 'MyPlugin') at dll.html:85

it means that the DLL build of the @indiscale/ckeditor5-complexitywiki-plugins package has not been created.

Please call the npm run dll:build command in the CLI, and after it finishes, refresh the page.

Anatomy of the DLL build

The source of the DLL build is located in the src/index.js file. It may export as many things as the package offers.

Maintaining the sample

Whenever you change objects exported by the DLL build, please review the content of the sample. Things to keep in mind:

The goal

The primary purpose of the sample is to verify whether the plugins in the package will work together with CKEditor 5 created with the DLL approach.

Publishing the package

By default, the build/ directory is specified in the #files array in the package.json file. It means all its contents will be published when calling the npm publish command.

Unfortunately, it is easy to forget to refresh the DLL build before making a new release. Hence, we created the prescript that would refresh the build automatically when calling the npm publish command.

Reporting issues

If you found a problem with CKEditor 5 or the package generator, please, report an issue: