diff --git a/editors/demo/package.json b/editors/demo/package.json
index b5f7470d3b95176afb8d056c4bd82f017f3a48d4..15a482e6c9733d2f58437ead02b13c07dc09211f 100644
--- a/editors/demo/package.json
+++ b/editors/demo/package.json
@@ -8,7 +8,6 @@
     "@pubsweet/ui-toolkit": "^2.3.1",
     "antd": "^4.15.4",
     "fontsource-merriweather": "^3.0.9",
-    "prosemirror-schema-basic": "^1.1.2",
     "prosemirror-tables": "^1.1.1",
     "react": "^16.13.1",
     "react-dom": "^16.13.1",
diff --git a/editors/demo/src/Editors.js b/editors/demo/src/Editors.js
index abd0628fb70695fdd171c22a2956784070ef3345..d19991a2ed8613a7f85ed0fed95a7dc6ef294736 100644
--- a/editors/demo/src/Editors.js
+++ b/editors/demo/src/Editors.js
@@ -70,7 +70,7 @@ const Editors = () => {
       case 'ncbi':
         return <NCBI />;
       default:
-        return <Editoria />;
+        return <HHMI />;
     }
   };
 
diff --git a/editors/demo/src/HHMI/FillTheGapQuestionService/schema/fillTheGapContainerNode.js b/editors/demo/src/HHMI/FillTheGapQuestionService/schema/fillTheGapContainerNode.js
new file mode 100644
index 0000000000000000000000000000000000000000..6f1a76ec2fec74c445b33e5fe7daf92b8544ec7a
--- /dev/null
+++ b/editors/demo/src/HHMI/FillTheGapQuestionService/schema/fillTheGapContainerNode.js
@@ -0,0 +1,26 @@
+const fillTheGapContainerNode = {
+  attrs: {
+    id: { default: '' },
+    class: { default: 'fill-the-gap' },
+  },
+  group: 'block',
+  selectable: true,
+  draggable: true,
+  content: 'block+',
+  parseDOM: [
+    {
+      tag: 'div.fill-the-gap',
+      getAttrs(dom) {
+        return {
+          id: dom.dataset.id,
+          class: dom.getAttribute('class'),
+        };
+      },
+    },
+  ],
+  toDOM(node) {
+    return ['div', node.attrs, 0];
+  },
+};
+
+export default fillTheGapContainerNode;
diff --git a/editors/demo/src/HHMI/FillTheGapQuestionService/schema/fillTheGapNode.js b/editors/demo/src/HHMI/FillTheGapQuestionService/schema/fillTheGapNode.js
new file mode 100644
index 0000000000000000000000000000000000000000..5443c358ec6da04248a585a388f346a7ce879d92
--- /dev/null
+++ b/editors/demo/src/HHMI/FillTheGapQuestionService/schema/fillTheGapNode.js
@@ -0,0 +1,3 @@
+const fillTheGapNode = {};
+
+export default fillTheGapNode;
diff --git a/editors/demo/src/HHMI/HHMI.js b/editors/demo/src/HHMI/HHMI.js
index 15a9a7e47de12d2b120815ac9f530d1b82845ae9..6c25d26054957c4261cc9cf6b20a7b0be37a0104 100644
--- a/editors/demo/src/HHMI/HHMI.js
+++ b/editors/demo/src/HHMI/HHMI.js
@@ -24,7 +24,7 @@ const Hhmi = () => {
         config={config}
         autoFocus
         fileUpload={file => renderImage(file)}
-        value={t}
+        value=""
         // readonly
         layout={HhmiLayout}
         // onChange={source => console.log(source)}
diff --git a/editors/demo/src/HHMI/config/config.js b/editors/demo/src/HHMI/config/config.js
index 96fb850d78583d6934de36b8a1d57e1c30827873..95fe5eeed5a9d213b3379acd4924ccf1abd152a4 100644
--- a/editors/demo/src/HHMI/config/config.js
+++ b/editors/demo/src/HHMI/config/config.js
@@ -20,6 +20,8 @@ import {
   SpecialCharactersToolGroupService,
   EditorInfoToolGroupServices,
   BottomInfoService,
+  MultipleChoiceQuestionService,
+  QuestionsToolGroupService,
 } from 'wax-prosemirror-services';
 
 import { DefaultSchema } from 'wax-prosemirror-utilities';
@@ -27,8 +29,8 @@ import { WaxSelectionPlugin } from 'wax-prosemirror-plugins';
 import invisibles, { hardBreak } from '@guardian/prosemirror-invisibles';
 
 /* Questions Services */
-import MultipleChoiceQuestionService from '../MultipleChoiceQuestionService/MultipleChoiceQuestionService';
-import QuestionsToolGroupService from '../QuestionsToolGroupService/QuestionsToolGroupService';
+// import MultipleChoiceQuestionService from '../MultipleChoiceQuestionService/MultipleChoiceQuestionService';
+// import QuestionsToolGroupService from '../QuestionsToolGroupService/QuestionsToolGroupService';
 
 export default {
   MenuService: [
diff --git a/wax-prosemirror-core/src/WaxView.js b/wax-prosemirror-core/src/WaxView.js
index c8c2b38095f1b0b7686026a3b9600e49bba52fef..45bb91c6fe331e8adf704fea3d7856536be76bb4 100644
--- a/wax-prosemirror-core/src/WaxView.js
+++ b/wax-prosemirror-core/src/WaxView.js
@@ -44,7 +44,6 @@ export default props => {
 
   if (!mounted) {
     context.app.bootServices();
-    console.log(context);
   }
 
   const setEditorRef = useCallback(
diff --git a/wax-prosemirror-services/index.js b/wax-prosemirror-services/index.js
index c05ff12dde7d1cd77161ffef63e7d967defeb68e..0ea0ee27c545724d96c6ff5edc46a48556521b24 100644
--- a/wax-prosemirror-services/index.js
+++ b/wax-prosemirror-services/index.js
@@ -44,6 +44,7 @@ export { default as TrackOptionsService } from './src/TrackOptionsService/TrackO
 export { default as CustomTagInlineService } from './src/CustomTagService/CustomTagInlineService/CustomTagInlineService';
 export { default as CustomTagBlockService } from './src/CustomTagService/CustomTagBlockService/CustomTagBlockService';
 export { default as CustomTagService } from './src/CustomTagService/CustomTagService';
+export { default as MultipleChoiceQuestionService } from './src/MultipleChoiceQuestionService/MultipleChoiceQuestionService';
 
 /*
 ToolGroups
@@ -69,3 +70,4 @@ export { default as TrackOptionsToolGroupService } from './src/WaxToolGroups/Tra
 export { default as TrackCommentOptionsToolGroupService } from './src/WaxToolGroups/TrackCommentOptionsToolGroupService/TrackCommentOptionsToolGroupService';
 export { default as CustomTagInlineToolGroupService } from './src/WaxToolGroups/CustomTagToolGroupService/CustomTagInlineToolGroupService/CustomTagInlineToolGroupService';
 export { default as CustomTagBlockToolGroupService } from './src/WaxToolGroups/CustomTagToolGroupService/CustomTagBlockToolGroupService/CustomTagBlockToolGroupService';
+export { default as QuestionsToolGroupService } from './src/WaxToolGroups/QuestionsToolGroupService/QuestionsToolGroupService';
diff --git a/editors/demo/src/HHMI/MultipleChoiceQuestionService/MultipleChoiceNodeView.js b/wax-prosemirror-services/src/MultipleChoiceQuestionService/MultipleChoiceNodeView.js
similarity index 91%
rename from editors/demo/src/HHMI/MultipleChoiceQuestionService/MultipleChoiceNodeView.js
rename to wax-prosemirror-services/src/MultipleChoiceQuestionService/MultipleChoiceNodeView.js
index 78fbc24122e39d40bd512f0270ccd3a566a44e2f..742da845512a1469c261615dbcb1626ca245a228 100644
--- a/editors/demo/src/HHMI/MultipleChoiceQuestionService/MultipleChoiceNodeView.js
+++ b/wax-prosemirror-services/src/MultipleChoiceQuestionService/MultipleChoiceNodeView.js
@@ -1,5 +1,4 @@
-import { nodes } from 'prosemirror-schema-basic';
-import { AbstractNodeView } from 'wax-prosemirror-services';
+import AbstractNodeView from '../PortalService/AbstractNodeView';
 
 export default class MultipleChoiceNodeView extends AbstractNodeView {
   constructor(
@@ -18,6 +17,7 @@ export default class MultipleChoiceNodeView extends AbstractNodeView {
     this.getPos = getPos;
     this.context = context;
   }
+
   static name() {
     return 'multiple_choice';
   }
diff --git a/editors/demo/src/HHMI/MultipleChoiceQuestionService/MultipleChoiceQuestion.js b/wax-prosemirror-services/src/MultipleChoiceQuestionService/MultipleChoiceQuestion.js
similarity index 97%
rename from editors/demo/src/HHMI/MultipleChoiceQuestionService/MultipleChoiceQuestion.js
rename to wax-prosemirror-services/src/MultipleChoiceQuestionService/MultipleChoiceQuestion.js
index 735ab1857f2a37ae33269e5306d192000d09d350..6ffe599ba02feb580f125d2217e67025235e3c8c 100644
--- a/editors/demo/src/HHMI/MultipleChoiceQuestionService/MultipleChoiceQuestion.js
+++ b/wax-prosemirror-services/src/MultipleChoiceQuestionService/MultipleChoiceQuestion.js
@@ -1,10 +1,9 @@
 import React from 'react';
 import { isEmpty } from 'lodash';
 import { injectable } from 'inversify';
-import { Tools } from 'wax-prosemirror-services';
 import { Commands } from 'wax-prosemirror-utilities';
-
 import { v4 as uuidv4 } from 'uuid';
+import Tools from '../lib/Tools';
 import ToolBarBtn from './components/ToolBarBtn';
 
 const checkifEmpty = view => {
diff --git a/editors/demo/src/HHMI/MultipleChoiceQuestionService/MultipleChoiceQuestionService.js b/wax-prosemirror-services/src/MultipleChoiceQuestionService/MultipleChoiceQuestionService.js
similarity index 94%
rename from editors/demo/src/HHMI/MultipleChoiceQuestionService/MultipleChoiceQuestionService.js
rename to wax-prosemirror-services/src/MultipleChoiceQuestionService/MultipleChoiceQuestionService.js
index 1101b7e124eb6287b3a5945da6503dd58f25e183..4df5be64aec344cd2f9d908946b21811bf7282cf 100644
--- a/editors/demo/src/HHMI/MultipleChoiceQuestionService/MultipleChoiceQuestionService.js
+++ b/wax-prosemirror-services/src/MultipleChoiceQuestionService/MultipleChoiceQuestionService.js
@@ -1,4 +1,4 @@
-import { Service } from 'wax-prosemirror-services';
+import Service from '../Service';
 import MultipleChoiceQuestion from './MultipleChoiceQuestion';
 import multipleChoiceNode from './schema/multipleChoiceNode';
 import multipleChoiceContainerNode from './schema/multipleChoiceContainerNode';
diff --git a/editors/demo/src/HHMI/MultipleChoiceQuestionService/components/Button.js b/wax-prosemirror-services/src/MultipleChoiceQuestionService/components/Button.js
similarity index 100%
rename from editors/demo/src/HHMI/MultipleChoiceQuestionService/components/Button.js
rename to wax-prosemirror-services/src/MultipleChoiceQuestionService/components/Button.js
diff --git a/editors/demo/src/HHMI/MultipleChoiceQuestionService/components/EditorComponent.js b/wax-prosemirror-services/src/MultipleChoiceQuestionService/components/EditorComponent.js
similarity index 100%
rename from editors/demo/src/HHMI/MultipleChoiceQuestionService/components/EditorComponent.js
rename to wax-prosemirror-services/src/MultipleChoiceQuestionService/components/EditorComponent.js
diff --git a/editors/demo/src/HHMI/MultipleChoiceQuestionService/components/FeedbackComponent.js b/wax-prosemirror-services/src/MultipleChoiceQuestionService/components/FeedbackComponent.js
similarity index 100%
rename from editors/demo/src/HHMI/MultipleChoiceQuestionService/components/FeedbackComponent.js
rename to wax-prosemirror-services/src/MultipleChoiceQuestionService/components/FeedbackComponent.js
diff --git a/editors/demo/src/HHMI/MultipleChoiceQuestionService/components/QuestionComponent.js b/wax-prosemirror-services/src/MultipleChoiceQuestionService/components/QuestionComponent.js
similarity index 100%
rename from editors/demo/src/HHMI/MultipleChoiceQuestionService/components/QuestionComponent.js
rename to wax-prosemirror-services/src/MultipleChoiceQuestionService/components/QuestionComponent.js
diff --git a/editors/demo/src/HHMI/MultipleChoiceQuestionService/components/Switch.js b/wax-prosemirror-services/src/MultipleChoiceQuestionService/components/Switch.js
similarity index 100%
rename from editors/demo/src/HHMI/MultipleChoiceQuestionService/components/Switch.js
rename to wax-prosemirror-services/src/MultipleChoiceQuestionService/components/Switch.js
diff --git a/editors/demo/src/HHMI/MultipleChoiceQuestionService/components/SwitchComponent.js b/wax-prosemirror-services/src/MultipleChoiceQuestionService/components/SwitchComponent.js
similarity index 100%
rename from editors/demo/src/HHMI/MultipleChoiceQuestionService/components/SwitchComponent.js
rename to wax-prosemirror-services/src/MultipleChoiceQuestionService/components/SwitchComponent.js
diff --git a/editors/demo/src/HHMI/MultipleChoiceQuestionService/components/ToolBarBtn.js b/wax-prosemirror-services/src/MultipleChoiceQuestionService/components/ToolBarBtn.js
similarity index 100%
rename from editors/demo/src/HHMI/MultipleChoiceQuestionService/components/ToolBarBtn.js
rename to wax-prosemirror-services/src/MultipleChoiceQuestionService/components/ToolBarBtn.js
diff --git a/editors/demo/src/HHMI/MultipleChoiceQuestionService/helpers/helpers.js b/wax-prosemirror-services/src/MultipleChoiceQuestionService/helpers/helpers.js
similarity index 100%
rename from editors/demo/src/HHMI/MultipleChoiceQuestionService/helpers/helpers.js
rename to wax-prosemirror-services/src/MultipleChoiceQuestionService/helpers/helpers.js
diff --git a/editors/demo/src/HHMI/MultipleChoiceQuestionService/plugins/placeholder.js b/wax-prosemirror-services/src/MultipleChoiceQuestionService/plugins/placeholder.js
similarity index 100%
rename from editors/demo/src/HHMI/MultipleChoiceQuestionService/plugins/placeholder.js
rename to wax-prosemirror-services/src/MultipleChoiceQuestionService/plugins/placeholder.js
diff --git a/editors/demo/src/HHMI/MultipleChoiceQuestionService/schema/multipleChoiceContainerNode.js b/wax-prosemirror-services/src/MultipleChoiceQuestionService/schema/multipleChoiceContainerNode.js
similarity index 100%
rename from editors/demo/src/HHMI/MultipleChoiceQuestionService/schema/multipleChoiceContainerNode.js
rename to wax-prosemirror-services/src/MultipleChoiceQuestionService/schema/multipleChoiceContainerNode.js
diff --git a/editors/demo/src/HHMI/MultipleChoiceQuestionService/schema/multipleChoiceNode.js b/wax-prosemirror-services/src/MultipleChoiceQuestionService/schema/multipleChoiceNode.js
similarity index 100%
rename from editors/demo/src/HHMI/MultipleChoiceQuestionService/schema/multipleChoiceNode.js
rename to wax-prosemirror-services/src/MultipleChoiceQuestionService/schema/multipleChoiceNode.js
diff --git a/editors/demo/src/HHMI/QuestionsToolGroupService/Questions.js b/wax-prosemirror-services/src/WaxToolGroups/QuestionsToolGroupService/Questions.js
similarity index 83%
rename from editors/demo/src/HHMI/QuestionsToolGroupService/Questions.js
rename to wax-prosemirror-services/src/WaxToolGroups/QuestionsToolGroupService/Questions.js
index 51d123699336e9578825d08742bac60f9e746c93..8b9b9eada607a08c6bc9937f5257a696b57d98af 100644
--- a/editors/demo/src/HHMI/QuestionsToolGroupService/Questions.js
+++ b/wax-prosemirror-services/src/WaxToolGroups/QuestionsToolGroupService/Questions.js
@@ -1,5 +1,5 @@
 import { injectable, inject } from 'inversify';
-import { ToolGroup } from 'wax-prosemirror-services';
+import ToolGroup from '../../lib/ToolGroup';
 
 @injectable()
 class Questions extends ToolGroup {
diff --git a/editors/demo/src/HHMI/QuestionsToolGroupService/QuestionsToolGroupService.js b/wax-prosemirror-services/src/WaxToolGroups/QuestionsToolGroupService/QuestionsToolGroupService.js
similarity index 79%
rename from editors/demo/src/HHMI/QuestionsToolGroupService/QuestionsToolGroupService.js
rename to wax-prosemirror-services/src/WaxToolGroups/QuestionsToolGroupService/QuestionsToolGroupService.js
index daaed80e70273035541d32a6cbbd9854a884e8ae..f5b68c449e652bc226bad710d132b21c55ec9277 100644
--- a/editors/demo/src/HHMI/QuestionsToolGroupService/QuestionsToolGroupService.js
+++ b/wax-prosemirror-services/src/WaxToolGroups/QuestionsToolGroupService/QuestionsToolGroupService.js
@@ -1,4 +1,4 @@
-import { Service } from 'wax-prosemirror-services';
+import Service from '../../Service';
 import Questions from './Questions';
 
 class QuestionsToolGroupService extends Service {
diff --git a/yarn.lock b/yarn.lock
index dc8bff650811672fa47fc372e3f6e37f5b491db1..23b621cba92c0268478664bc11ed97b9b2ef8f62 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -14772,7 +14772,7 @@ prosemirror-model@1.14.3, prosemirror-model@>=1.0.0, prosemirror-model@^1.0.0, p
   dependencies:
     orderedmap "^1.1.0"
 
-prosemirror-schema-basic@^1.0.0, prosemirror-schema-basic@^1.1.2:
+prosemirror-schema-basic@^1.0.0:
   version "1.1.2"
   resolved "https://registry.yarnpkg.com/prosemirror-schema-basic/-/prosemirror-schema-basic-1.1.2.tgz#4bde5c339c845e0d08ec8fe473064e372ca51ae3"
   integrity sha512-G4q8WflNsR1Q33QAV4MQO0xWrHLOJ+BQcKswGXMy626wlQj6c/1n1v4eC9ns+h2y1r/fJHZEgSZnsNhm9lbrDw==