Integrate Document Authoring (WYSIWYG library) using npm

This guide walks you through the process of integrating the Document Authoring — what you see is what you get (WYSIWYG) TypeScript library — into your web application using npm. By following these steps, you’ll be able to set up in-browser visual editing capabilities without the need for external word processing software.

For a direct integration, the library is available through the npm registry(opens in a new tab).

Requirements

You need Node.js to complete this guide, but in general, Node.js isn’t a requirement for using the Document Authoring library.

Type definitions and module systems

We provide type definitions and support for CommonJS, ESM, AMD, and a global DocAuth object from the same package. These should be resolved automatically from our package.json file.

Adding to your project

Terminal window
npm i @nutrient-sdk/document-authoring

Integrating into your project

  1. Add an empty <div> element with a position set to a value other than static, and with a defined width and height. This will be the target DOM element where the editor will be loaded:

    <div id="editor" style="position: relative; width: 100%; height: 100vh; border: 1px solid #dcdcdc;"></div>
  2. Import @nutrient-sdk/document-authoring into your application and initialize the editor:

    import DocAuth from '@nutrient-sdk/document-authoring';
    const docAuthSystem = await DocAuth.createDocAuthSystem();
    const editor = await docAuthSystem.createEditor(document.getElementById('editor'), {
    document: await docAuthSystem.createDocumentFromPlaintext('Hi there!'),
    });