diff --git a/editors/demo/config-overrides.js b/editors/demo/config-overrides.js
index a787aa06f91aec96caa019ff69d8ddb018e224c1..65bc6e56a21f8d398ada56d4ca7d83b7da713a16 100644
--- a/editors/demo/config-overrides.js
+++ b/editors/demo/config-overrides.js
@@ -3,10 +3,6 @@ module.exports = function override(config, env) {
   config.resolve = {
     symlinks: true,
     alias: {
-      'wax-prosemirror-components': path.resolve(
-        __dirname,
-        '../../wax-prosemirror-components/index',
-      ),
       'wax-prosemirror-core': path.resolve(
         __dirname,
         '../../wax-prosemirror-core/index',
diff --git a/package.json b/package.json
index d91bcb7c2e7a5013e2e7e60e2d44bfa6cdbc407d..e7a7d3854365639c898933403f43ddef99970741 100644
--- a/package.json
+++ b/package.json
@@ -12,7 +12,6 @@
   "main": "index.js",
   "workspaces": [
     "wax-prosemirror-core",
-    "wax-prosemirror-components",
     "wax-prosemirror-services",
     "editors/*"
   ],
diff --git a/wax-prosemirror-components/.gitignore b/wax-prosemirror-components/.gitignore
deleted file mode 100644
index b3e3ccb6b0ce3a90e1eb3f9e78da7924ea89f116..0000000000000000000000000000000000000000
--- a/wax-prosemirror-components/.gitignore
+++ /dev/null
@@ -1,25 +0,0 @@
-# dependencies
-/node_modules
-
-# testing
-/coverage
-
-# production
-/build
-
-# dist
-/dist
-
-# misc
-.DS_Store
-.env.local
-.env.development.local
-.env.test.local
-.env.production.local
-.directory
-
-npm-debug.log*
-yarn-debug.log*
-yarn-error.log*
-yarn.lock
-package-lock.json
diff --git a/wax-prosemirror-components/index.js b/wax-prosemirror-components/index.js
deleted file mode 100644
index de0b5ffcbbc6e244906a427e71636fb4da9dbc93..0000000000000000000000000000000000000000
--- a/wax-prosemirror-components/index.js
+++ /dev/null
@@ -1 +0,0 @@
-export { default as UndoRedoButton } from './src/components/UndoRedoButton';
diff --git a/wax-prosemirror-components/package.json b/wax-prosemirror-components/package.json
deleted file mode 100644
index 4013d54d09c0577cd3139f174782d33ef5bb43b0..0000000000000000000000000000000000000000
--- a/wax-prosemirror-components/package.json
+++ /dev/null
@@ -1,35 +0,0 @@
-{
-  "name": "wax-prosemirror-components",
-  "author": "Christos Kokosias & Giannis Kopanas",
-  "version": "0.6.5",
-  "description": "Wax prosemirror UI components",
-  "license": "MIT",
-  "main": "dist/index.js",
-  "files": [
-    "dist"
-  ],
-  "scripts": {
-    "test": "echo \"Error: no test specified\" && exit 1",
-    "build": "BABEL_ENV=production rollup -c"
-  },
-  "dependencies": {
-    "@pubsweet/ui-toolkit": "^2.3.1",
-    "lodash": "^4.17.4",
-    "moment": "^2.29.0",
-    "prop-types": "^15.7.2",
-    "prosemirror-model": "1.16.1",
-    "prosemirror-state": "1.3.3",
-    "prosemirror-tables": "^1.1.1",
-    "prosemirror-transform": "1.3.4",
-    "react-dropdown": "^1.6.2",
-    "react-transition-group": "^4.3.0",
-    "styled-components": "^5.3.0",
-    "use-deep-compare-effect": "^1.3.1",
-    "uuid": "^7.0.3",
-    "wax-prosemirror-core": "^0.6.5"
-  },
-  "peerDependencies": {
-    "react": "^16.13.1",
-    "react-dom": "^16.13.1"
-  }
-}
diff --git a/wax-prosemirror-components/rollup.config.js b/wax-prosemirror-components/rollup.config.js
deleted file mode 100644
index 8a3042b510d3f59a25481e6b22763b5e1d0de38e..0000000000000000000000000000000000000000
--- a/wax-prosemirror-components/rollup.config.js
+++ /dev/null
@@ -1,38 +0,0 @@
-import babel from 'rollup-plugin-babel';
-import commonjs from '@rollup/plugin-commonjs';
-import external from 'rollup-plugin-peer-deps-external';
-import css from 'rollup-plugin-import-css';
-import { terser } from 'rollup-plugin-terser';
-
-export default {
-  input: './index.js',
-  output: [
-    {
-      file: 'dist/index.js',
-      format: 'cjs',
-      sourcemap: false,
-    },
-  ],
-  plugins: [
-    css(),
-    external({
-      includeDependencies: true,
-    }),
-    babel({
-      presets: ['react-app'],
-      exclude: 'node_modules/**',
-      runtimeHelpers: true,
-      plugins: [
-        [
-          '@babel/plugin-transform-runtime',
-          {
-            regenerator: true,
-          },
-        ],
-      ],
-    }),
-    commonjs(),
-    terser(),
-  ],
-  external: ['wax-prosemirror-core', 'inversify', 'prosemirror-tables'],
-};
diff --git a/wax-prosemirror-components/src/components/Button.js b/wax-prosemirror-components/src/components/Button.js
deleted file mode 100644
index 2dad33454ebd4c740e11f143b576eb01a96bb909..0000000000000000000000000000000000000000
--- a/wax-prosemirror-components/src/components/Button.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/* eslint react/prop-types: 0 */
-import React, { useContext, useMemo } from 'react';
-import { WaxContext, MenuButton } from 'wax-prosemirror-core';
-
-const Button = ({ view = {}, item }) => {
-  const { active, icon, label, run, select, title } = item;
-  const context = useContext(WaxContext);
-  const {
-    pmViews: { main },
-    activeViewId,
-    activeView,
-  } = context;
-
-  const isEditable = main.props.editable(editable => {
-    return editable;
-  });
-
-  const { state } = view;
-
-  const handleMouseDown = e => {
-    e.preventDefault();
-    run(activeView.state, activeView.dispatch, activeView, context);
-  };
-
-  const isActive = !!(
-    active(activeView.state, activeViewId) &&
-    select(state, activeViewId, activeView)
-  );
-
-  let isDisabled = !select(state, activeViewId, activeView);
-  if (!isEditable) isDisabled = true;
-
-  const MenuButtonComponent = useMemo(
-    () => (
-      <MenuButton
-        active={isActive || false}
-        disabled={isDisabled}
-        iconName={icon}
-        label={label}
-        onMouseDown={e => handleMouseDown(e)}
-        title={title}
-      />
-    ),
-    [isActive, isDisabled, activeViewId],
-  );
-
-  return MenuButtonComponent;
-};
-
-export default Button;
diff --git a/wax-prosemirror-services/package.json b/wax-prosemirror-services/package.json
index 61da46e69f6aca4037890faad6220b88540b7fba..184735047d22c6dd5c7152696ff220d0f0e73805 100644
--- a/wax-prosemirror-services/package.json
+++ b/wax-prosemirror-services/package.json
@@ -34,7 +34,6 @@
     "styled-components": "^5.3.0",
     "use-deep-compare-effect": "^1.3.1",
     "uuid": "^7.0.3",
-    "wax-prosemirror-components": "^0.6.5",
     "wax-prosemirror-core": "^0.6.5",
      "@pubsweet/ui-toolkit": "^2.3.1",
      "prop-types": "^15.7.2",
diff --git a/wax-prosemirror-services/src/BaseService/RedoService/Redo.js b/wax-prosemirror-services/src/BaseService/RedoService/Redo.js
index 05f1fabcac14f65f3c14d2e109e57b4caaa199b1..2dede3a710cb9243fed69dfd48360a0ce26a5bbf 100644
--- a/wax-prosemirror-services/src/BaseService/RedoService/Redo.js
+++ b/wax-prosemirror-services/src/BaseService/RedoService/Redo.js
@@ -2,8 +2,8 @@ import React from 'react';
 import { isEmpty } from 'lodash';
 import { redo } from 'prosemirror-history';
 import { injectable } from 'inversify';
-import { UndoRedoButton } from 'wax-prosemirror-components';
 import { Tools } from 'wax-prosemirror-core';
+import UndoRedoButton from '../components/UndoRedoButton';
 
 @injectable()
 export default class Redo extends Tools {
diff --git a/wax-prosemirror-services/src/BaseService/UndoService/Undo.js b/wax-prosemirror-services/src/BaseService/UndoService/Undo.js
index bcf65049296a54bdd0b0bc075b89f8a6eddfd708..cbb275cc91df5d6064d78ee5331bb51222ebbb07 100644
--- a/wax-prosemirror-services/src/BaseService/UndoService/Undo.js
+++ b/wax-prosemirror-services/src/BaseService/UndoService/Undo.js
@@ -2,8 +2,8 @@ import React from 'react';
 import { isEmpty } from 'lodash';
 import { undo } from 'prosemirror-history';
 import { injectable } from 'inversify';
-import { UndoRedoButton } from 'wax-prosemirror-components';
 import { Tools } from 'wax-prosemirror-core';
+import UndoRedoButton from '../components/UndoRedoButton';
 
 @injectable()
 export default class Undo extends Tools {
diff --git a/wax-prosemirror-components/src/components/UndoRedoButton.js b/wax-prosemirror-services/src/BaseService/components/UndoRedoButton.js
similarity index 100%
rename from wax-prosemirror-components/src/components/UndoRedoButton.js
rename to wax-prosemirror-services/src/BaseService/components/UndoRedoButton.js