diff --git a/wax-prosemirror-components/package.json b/wax-prosemirror-components/package.json
index 347204e5474dda4580d605e15bd5470f3e3d96bf..13cf43d1ed4494001b4a8bf4fb2940bc94a8e7a2 100644
--- a/wax-prosemirror-components/package.json
+++ b/wax-prosemirror-components/package.json
@@ -4,7 +4,7 @@
   "version": "0.0.13",
   "description": "Wax prosemirror UI components",
   "license": "MIT",
-  "main": "dist/index.js",
+  "main": "index.js",
   "scripts": {
     "test": "echo \"Error: no test specified\" && exit 1",
     "build": "BABEL_ENV=production rollup -c"
diff --git a/wax-prosemirror-components/rollup.config.js b/wax-prosemirror-components/rollup.config.js
index 24921acbc8a720ca8d890a5d305cc732e8cb991f..776c3cdd2683ca66099b63794a196d3a1603d46d 100644
--- a/wax-prosemirror-components/rollup.config.js
+++ b/wax-prosemirror-components/rollup.config.js
@@ -22,7 +22,7 @@ export default {
       runtimeHelpers: true,
     }),
     commonjs(),
-    terser(),
+    // terser(),
   ],
   external: [
     'wax-prosemirror-themes',
diff --git a/wax-prosemirror-core/package.json b/wax-prosemirror-core/package.json
index 82aeda82bb86ae233406a5fb32a5cdcfbc44a513..e4767e473ad2678bcd33824fe0b6b36b9e00534d 100644
--- a/wax-prosemirror-core/package.json
+++ b/wax-prosemirror-core/package.json
@@ -4,7 +4,7 @@
   "version": "0.0.13",
   "description": "Wax prosemirror core",
   "license": "MIT",
-  "main": "dist/index.js",
+  "main": "index.js",
   "scripts": {
     "test": "echo \"Error: no test specified\" && exit 1",
     "build": "BABEL_ENV=production rollup -c"
diff --git a/wax-prosemirror-core/rollup.config.js b/wax-prosemirror-core/rollup.config.js
index f2b2c1be262df063f9b65f54b44ac8f463e43e14..15579cf57b7c5b6f2cc5e46a7de7b13ddaba4a99 100644
--- a/wax-prosemirror-core/rollup.config.js
+++ b/wax-prosemirror-core/rollup.config.js
@@ -26,7 +26,7 @@ export default {
       runtimeHelpers: true,
     }),
     commonjs(),
-    terser(),
+    // terser(),
   ],
   external: [
     '@fortawesome/react-fontawesome',
diff --git a/wax-prosemirror-layouts/package.json b/wax-prosemirror-layouts/package.json
index 9533ba214d91187774f4934db99f8bd5ac8fab28..b808116174e1fe0d3eaebc7dc915b08c59bd8625 100644
--- a/wax-prosemirror-layouts/package.json
+++ b/wax-prosemirror-layouts/package.json
@@ -4,7 +4,7 @@
   "version": "0.0.13",
   "description": "Wax prosemirror layouts",
   "license": "MIT",
-  "main": "dist/index.js",
+  "main": "index.js",
   "scripts": {
     "test": "echo \"Error: no test specified\" && exit 1",
     "build": "BABEL_ENV=production rollup -c"
diff --git a/wax-prosemirror-layouts/rollup.config.js b/wax-prosemirror-layouts/rollup.config.js
index 15f2b480f1c1af25b3bbd637047338b2aca0e2b2..63bc022a1cf9e6e7d1ba75b7f0debfc20b525fef 100644
--- a/wax-prosemirror-layouts/rollup.config.js
+++ b/wax-prosemirror-layouts/rollup.config.js
@@ -22,7 +22,7 @@ export default {
       runtimeHelpers: true,
     }),
     commonjs(),
-    terser(),
+    // terser(),
   ],
   external: [
     '@fortawesome/react-fontawesome',
diff --git a/wax-prosemirror-plugins/index.js b/wax-prosemirror-plugins/index.js
index 5377fcb7230b178788d69bf79f966224c53bd20c..72d283b67322f401b18d557fa3cd3d42652009e0 100644
--- a/wax-prosemirror-plugins/index.js
+++ b/wax-prosemirror-plugins/index.js
@@ -1,6 +1,5 @@
-export {
-  default as TrackChangePlugin
-} from "./src/trackChanges/TrackChangePlugin";
+export { default as TrackChangePlugin } from './src/trackChanges/TrackChangePlugin';
 
-export { default as CommentPlugin } from "./src/comments/CommentPlugin";
-export { default as WaxSelectionPlugin } from "./src/WaxSelectionPlugin";
+export { default as CommentPlugin } from './src/comments/CommentPlugin';
+export { default as WaxSelectionPlugin } from './src/WaxSelectionPlugin';
+export { default as highlightPlugin } from './src/highlightPlugin';
diff --git a/wax-prosemirror-plugins/package.json b/wax-prosemirror-plugins/package.json
index 448e83d5e1397f4ea8c6309365c502887562ca97..28d548f453cd92b8c0155b97d2539b43eb46b679 100644
--- a/wax-prosemirror-plugins/package.json
+++ b/wax-prosemirror-plugins/package.json
@@ -4,7 +4,7 @@
   "version": "0.0.13",
   "description": "Wax prosemirror plugins",
   "license": "MIT",
-  "main": "dist/index.js",
+  "main": "index.js",
   "scripts": {
     "test": "echo \"Error: no test specified\" && exit 1",
     "build": "BABEL_ENV=production rollup -c"
@@ -16,6 +16,8 @@
     "wax-prosemirror-components": "^0.0.13",
     "wax-prosemirror-core": "^0.0.13",
     "wax-prosemirror-layouts": "^0.0.13",
-    "wax-prosemirror-utilities": "^0.0.13"
+    "wax-prosemirror-utilities": "^0.0.13",
+    "highlight.js": "^10.1.1",
+    "prosemirror-highlightjs": "^0.2.0"
   }
 }
diff --git a/wax-prosemirror-plugins/rollup.config.js b/wax-prosemirror-plugins/rollup.config.js
index 1f3d57d4d114931c934f1d85a97d2340decdcf17..77ded1e2e3d7d5c9537e671cca11a154dfe791b2 100644
--- a/wax-prosemirror-plugins/rollup.config.js
+++ b/wax-prosemirror-plugins/rollup.config.js
@@ -21,6 +21,6 @@ export default {
       runtimeHelpers: true,
     }),
     commonjs(),
-    terser(),
+    // terser(),
   ],
 };
diff --git a/wax-prosemirror-plugins/src/highlightPlugin.js b/wax-prosemirror-plugins/src/highlightPlugin.js
new file mode 100644
index 0000000000000000000000000000000000000000..40ee57e2958a57efb19fea37563766ed0832d276
--- /dev/null
+++ b/wax-prosemirror-plugins/src/highlightPlugin.js
@@ -0,0 +1,56 @@
+import hljs from 'highlight.js/lib/core';
+import { getHighlightDecorations } from 'prosemirror-highlightjs';
+import { DecorationSet } from 'prosemirror-view';
+import { Plugin } from 'prosemirror-state';
+
+const highlightPlugin = (nodeTypes = ['code_block']) => {
+  return new Plugin({
+    state: {
+      init(_, instance) {
+        const content = getHighlightDecorations(
+          instance.doc,
+          hljs,
+          nodeTypes,
+          () => undefined,
+        );
+        return DecorationSet.create(instance.doc, content);
+      },
+      apply(tr, set, state) {
+        if (!tr.docChanged) {
+          return set.map(tr.mapping, tr.doc);
+        }
+
+        const {
+          selection: { $from, $to },
+          doc,
+        } = state;
+        let codeBlock = false;
+
+        doc.nodesBetween($from.pos, $to.pos, (node, from) => {
+          if (node.type.name === 'code_block') {
+            codeBlock = true;
+          }
+        });
+
+        if (codeBlock) {
+          const content = getHighlightDecorations(
+            tr.doc,
+            hljs,
+            nodeTypes,
+            () => undefined,
+          );
+
+          return DecorationSet.create(tr.doc, content);
+        }
+        return set.map(tr.mapping, tr.doc);
+      },
+    },
+    props: {
+      decorations(state) {
+        return this.getState(state);
+      },
+    },
+  });
+};
+
+export default highlightPlugin;
diff --git a/wax-prosemirror-schema/package.json b/wax-prosemirror-schema/package.json
index 2ff92ca17e66b5d45594ec4c7d3580f5b5ca1b74..0a1a0bd5bdc56d1550d1813da44798008c40864e 100644
--- a/wax-prosemirror-schema/package.json
+++ b/wax-prosemirror-schema/package.json
@@ -4,7 +4,7 @@
   "version": "0.0.13",
   "description": "Wax prosemirror schema",
   "license": "MIT",
-  "main": "dist/index.js",
+  "main": "index.js",
   "scripts": {
     "test": "echo \"Error: no test specified\" && exit 1",
     "build": "BABEL_ENV=production rollup -c"
diff --git a/wax-prosemirror-schema/rollup.config.js b/wax-prosemirror-schema/rollup.config.js
index 43dfe7a1068c7266816a3b636d9c6a0bc3d39910..a2329d43dc9b596480b94aa0959afe51e5115c87 100644
--- a/wax-prosemirror-schema/rollup.config.js
+++ b/wax-prosemirror-schema/rollup.config.js
@@ -21,7 +21,7 @@ export default {
       runtimeHelpers: true,
     }),
     commonjs(),
-    terser(),
+    // terser(),
   ],
   external: ['uuid', 'wax-prosemirror-utilities'],
 };
diff --git a/wax-prosemirror-services/package.json b/wax-prosemirror-services/package.json
index 87acd60fb3b9a360263d01e25d9bb77e463ab4a6..22559ee1200bcddd202490144434b03238b37115 100644
--- a/wax-prosemirror-services/package.json
+++ b/wax-prosemirror-services/package.json
@@ -4,18 +4,16 @@
   "version": "0.0.13",
   "description": "Wax prosemirror services",
   "license": "MIT",
-  "main": "dist/index.js",
+  "main": "index.js",
   "scripts": {
     "test": "echo \"Error: no test specified\" && exit 1",
     "build": "BABEL_ENV=production rollup -c"
   },
   "dependencies": {
-    "highlight.js": "^10.1.1",
     "inversify": "^5.0.1",
     "inversify-inject-decorators": "^3.1.0",
     "lodash": "^4.17.4",
     "prosemirror-commands": "^1.1.3",
-    "prosemirror-highlightjs": "^0.2.0",
     "prosemirror-history": "^1.1.3",
     "prosemirror-keymap": "^1.1.3",
     "prosemirror-schema-list": "^1.1.2",
@@ -27,7 +25,8 @@
     "wax-prosemirror-core": "^0.0.13",
     "wax-prosemirror-layouts": "^0.0.13",
     "wax-prosemirror-schema": "^0.0.13",
-    "wax-prosemirror-utilities": "^0.0.13"
+    "wax-prosemirror-utilities": "^0.0.13",
+    "wax-prosemirror-plugins": "^0.0.13"
   },
   "peerDependencies": {
     "react": "^16.13.1",
diff --git a/wax-prosemirror-services/rollup.config.js b/wax-prosemirror-services/rollup.config.js
index 7e63479d193d24d2d3c9b56d1e6bb1c5f6d17704..9104a937f8191df3cbc19a85afd62c8880ec29c3 100644
--- a/wax-prosemirror-services/rollup.config.js
+++ b/wax-prosemirror-services/rollup.config.js
@@ -26,7 +26,7 @@ export default {
       runtimeHelpers: true,
     }),
     commonjs(),
-    terser(),
+    // terser(),
   ],
   external: [
     'uuid',
diff --git a/wax-prosemirror-services/src/CodeBlockService/CodeBlockService.js b/wax-prosemirror-services/src/CodeBlockService/CodeBlockService.js
index b1fef70169b1f3cb4b5556c49e1e46d8c9fe51b2..2e851d32204b2fe950ced53c598ede9d09b850bb 100644
--- a/wax-prosemirror-services/src/CodeBlockService/CodeBlockService.js
+++ b/wax-prosemirror-services/src/CodeBlockService/CodeBlockService.js
@@ -1,5 +1,4 @@
-import hljs from 'highlight.js/lib/core';
-import { highlightPlugin } from 'prosemirror-highlightjs';
+import { highlightPlugin } from 'wax-prosemirror-plugins';
 import 'highlight.js/styles/github.css';
 
 import { codeBlockNode } from 'wax-prosemirror-schema';
@@ -8,7 +7,7 @@ import CodeBlockTool from './CodeBlockTool';
 
 export default class CodeBlockService extends Service {
   boot() {
-    this.app.PmPlugins.add('highlightPlugin', highlightPlugin(hljs));
+    this.app.PmPlugins.add('highlightPlugin', highlightPlugin());
   }
 
   register() {
diff --git a/wax-prosemirror-themes/package.json b/wax-prosemirror-themes/package.json
index c04406a394e9daf5b84570ce3e048a04b1458edd..cb35a2db4b95ed62d326d19ce708cca1d5025940 100644
--- a/wax-prosemirror-themes/package.json
+++ b/wax-prosemirror-themes/package.json
@@ -4,7 +4,7 @@
   "version": "0.0.13",
   "description": "Wax prosemirror themes",
   "license": "MIT",
-  "main": "dist/index.js",
+  "main": "index.js",
   "scripts": {
     "test": "echo \"Error: no test specified\" && exit 1",
     "build": "BABEL_ENV=production rollup -c"
diff --git a/wax-prosemirror-themes/rollup.config.js b/wax-prosemirror-themes/rollup.config.js
index 3c39189e3e4b21268c49f26122e133aa961bb395..8e17dca193a2ef10e475f47c0a5a8020c67b86e9 100644
--- a/wax-prosemirror-themes/rollup.config.js
+++ b/wax-prosemirror-themes/rollup.config.js
@@ -21,7 +21,7 @@ export default {
       runtimeHelpers: true,
     }),
     commonjs(),
-    terser(),
+    // terser(),
   ],
   external: ['styled-components'],
 };
diff --git a/wax-prosemirror-utilities/package.json b/wax-prosemirror-utilities/package.json
index 396ef621c867e79eb369a6f0879621a5a2e518ce..5161ee3a4545b5c7d5f1c0c2214b8ba9b814497d 100644
--- a/wax-prosemirror-utilities/package.json
+++ b/wax-prosemirror-utilities/package.json
@@ -4,7 +4,7 @@
   "version": "0.0.13",
   "description": "Wax prosemirror utilities",
   "license": "MIT",
-  "main": "dist/index.js",
+  "main": "index.js",
   "scripts": {
     "test": "echo \"Error: no test specified\" && exit 1",
     "build": "BABEL_ENV=production rollup -c"
diff --git a/wax-prosemirror-utilities/rollup.config.js b/wax-prosemirror-utilities/rollup.config.js
index be04b116222fce4550cc56a4ca3a6cd9371ff618..04222edfb6a5195cf85d9215974279aeb85317ea 100644
--- a/wax-prosemirror-utilities/rollup.config.js
+++ b/wax-prosemirror-utilities/rollup.config.js
@@ -21,7 +21,7 @@ export default {
       runtimeHelpers: true,
     }),
     commonjs(),
-    terser(),
+    // terser(),
   ],
   external: ['uuid'],
 };