diff --git a/packages/component-dashboard/src/components/Dashboard.js b/packages/component-dashboard/src/components/Dashboard.js
index 9805128060c9f8623199a5291014d75f101eeef5..4cb225f0c1fabaccf9e0923957ef590f51730c7a 100644
--- a/packages/component-dashboard/src/components/Dashboard.js
+++ b/packages/component-dashboard/src/components/Dashboard.js
@@ -18,7 +18,6 @@ const Dashboard = ({
   deleteProject,
   reviewerResponse,
   uploadManuscript,
-  createDraftSubmission,
 }) => (
   <div className={classes.root}>
     <div className={classes.upload}>
@@ -28,11 +27,6 @@ const Dashboard = ({
       />
     </div>
 
-    <div>
-      Create new Submission
-      <button onClick={createDraftSubmission}>CREATE</button>
-    </div>
-
     {!dashboard.owner.length &&
       !dashboard.reviewer.length &&
       !dashboard.editor.length && (
diff --git a/packages/component-dashboard/src/components/DashboardPage.js b/packages/component-dashboard/src/components/DashboardPage.js
index 452238f0455cc679466db76f7a5b500ccdb4a610..e8efaac3c80fbda1ddd7a9bd0a646e89b57f4505 100644
--- a/packages/component-dashboard/src/components/DashboardPage.js
+++ b/packages/component-dashboard/src/components/DashboardPage.js
@@ -4,7 +4,7 @@ import { withRouter } from 'react-router-dom'
 import { actions } from 'pubsweet-client'
 import { newestFirst, selectCurrentUser } from 'xpub-selectors'
 import { ConnectPage } from 'xpub-connect'
-import { uploadManuscript, createDraftSubmission } from '../redux/conversion'
+import { uploadManuscript } from '../redux/conversion'
 import Dashboard from './Dashboard'
 import AssignEditorContainer from './AssignEditorContainer'
 
@@ -94,7 +94,6 @@ export default compose(
         dispatch(reviewerResponse(project, version, reviewer, status)),
       uploadManuscript: acceptedFiles =>
         dispatch(uploadManuscript(acceptedFiles, history)),
-      createDraftSubmission: () => dispatch(createDraftSubmission(history)),
     }),
   ),
   withProps({
diff --git a/packages/component-dashboard/src/redux/conversion.js b/packages/component-dashboard/src/redux/conversion.js
index 993e1026d334d67d1f1b8141f9d2d8ade947cc75..575cdbfb94d71a97e16c2e61aa03b068fba7bc7e 100644
--- a/packages/component-dashboard/src/redux/conversion.js
+++ b/packages/component-dashboard/src/redux/conversion.js
@@ -9,10 +9,6 @@ export const UPLOAD_MANUSCRIPT_REQUEST = 'UPLOAD_MANUSCRIPT_REQUEST'
 export const UPLOAD_MANUSCRIPT_SUCCESS = 'UPLOAD_MANUSCRIPT_SUCCESS'
 export const UPLOAD_MANUSCRIPT_FAILURE = 'UPLOAD_MANUSCRIPT_FAILURE'
 
-//
-export const CREATE_DRAFT_REQUEST = 'CREATE_DRAFT_REQUEST'
-export const CREATE_DRAFT_SUCCESS = 'CREATE_DRAFT_SUCCESS'
-
 /* actions */
 
 export const uploadManuscriptRequest = () => ({
@@ -106,45 +102,6 @@ export const uploadManuscript = (acceptedFiles, history) => dispatch => {
   })
 }
 
-// faraday stuff
-export const createDraftRequest = () => ({
-  type: CREATE_DRAFT_REQUEST,
-})
-
-export const createDraftSuccess = draft => ({
-  type: CREATE_DRAFT_SUCCESS,
-  draft,
-})
-
-export const createDraftSubmission = history => dispatch =>
-  dispatch(actions.createCollection()).then(({ collection }) => {
-    if (!collection.id) {
-      throw new Error('Failed to create a project')
-    }
-
-    // TODO: rethrow errors so they can be caught here
-    return dispatch(
-      actions.createFragment(collection, {
-        created: new Date(), // TODO: set on server
-        files: {
-          supplementary: [],
-        },
-        fragmentType: 'version',
-        metadata: {},
-        version: 1,
-      }),
-    ).then(({ fragment }) => {
-      dispatch(uploadManuscriptSuccess(collection, fragment))
-
-      const route = `/projects/${collection.id}/versions/${fragment.id}/submit`
-
-      // redirect after a short delay
-      window.setTimeout(() => {
-        history.push(route)
-      }, 1000)
-    })
-  })
-
 /* reducer */
 
 const initialState = {
@@ -174,6 +131,7 @@ export default (state = initialState, action) => {
         converting: false,
         error: action.error,
       }
+
     default:
       return state
   }
diff --git a/packages/component-wizard/src/index.js b/packages/component-wizard/src/index.js
index 8d52f148e8c8927db1d86494ca404451da5a917d..0b08c7c2e246189b19c843458de6e02803ab7f56 100644
--- a/packages/component-wizard/src/index.js
+++ b/packages/component-wizard/src/index.js
@@ -1,5 +1,8 @@
 module.exports = {
   client: {
     components: [() => require('./components')],
+    reducers: {
+      conversion: () => require('./redux/conversion').default,
+    },
   },
 }
diff --git a/packages/component-wizard/src/redux/conversion.js b/packages/component-wizard/src/redux/conversion.js
new file mode 100644
index 0000000000000000000000000000000000000000..f2bfbf51035014c8e6c84a6a6fd233519e9bca4a
--- /dev/null
+++ b/packages/component-wizard/src/redux/conversion.js
@@ -0,0 +1,59 @@
+import { actions } from 'pubsweet-client'
+
+/* constants */
+
+export const CREATE_DRAFT_REQUEST = 'CREATE_DRAFT_REQUEST'
+export const CREATE_DRAFT_SUCCESS = 'CREATE_DRAFT_SUCCESS'
+
+/* action creators */
+export const createDraftRequest = () => ({
+  type: CREATE_DRAFT_REQUEST,
+})
+
+export const createDraftSuccess = draft => ({
+  type: CREATE_DRAFT_SUCCESS,
+  draft,
+})
+
+/* actions */
+export const createDraftSubmission = history => dispatch =>
+  dispatch(actions.createCollection()).then(({ collection }) => {
+    if (!collection.id) {
+      throw new Error('Failed to create a project')
+    }
+
+    // TODO: rethrow errors so they can be caught here
+    return dispatch(
+      actions.createFragment(collection, {
+        created: new Date(), // TODO: set on server
+        files: {
+          supplementary: [],
+        },
+        fragmentType: 'version',
+        metadata: {},
+        version: 1,
+      }),
+    ).then(({ fragment }) => {
+      const route = `/projects/${collection.id}/versions/${fragment.id}/submit`
+
+      // redirect after a short delay
+      window.setTimeout(() => {
+        history.push(route)
+      }, 1000)
+    })
+  })
+
+/* reducer */
+
+const initialState = {
+  complete: undefined,
+  converting: false,
+  error: undefined,
+}
+
+export default (state = initialState, action) => {
+  switch (action.type) {
+    default:
+      return state
+  }
+}
diff --git a/packages/component-wizard/src/redux/index.js b/packages/component-wizard/src/redux/index.js
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..56f29b6f4e05afb38afa4fe6b06b760a401c5360 100644
--- a/packages/component-wizard/src/redux/index.js
+++ b/packages/component-wizard/src/redux/index.js
@@ -0,0 +1 @@
+export { default as conversion } from './conversion'
diff --git a/packages/xpub-collabra/api/.gitkeep b/packages/xpub-collabra/api/.gitkeep
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/packages/xpub-collabra/api/db/.gitkeep b/packages/xpub-collabra/api/db/.gitkeep
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/packages/xpub-collabra/api/db/dev/.gitkeep b/packages/xpub-collabra/api/db/dev/.gitkeep
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/packages/xpub-collabra/api/db/production/.gitkeep b/packages/xpub-collabra/api/db/production/.gitkeep
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/packages/xpub-faraday/api/.gitkeep b/packages/xpub-faraday/api/.gitkeep
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/packages/xpub-faraday/api/db/.gitkeep b/packages/xpub-faraday/api/db/.gitkeep
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/packages/xpub-faraday/api/db/dev/.gitkeep b/packages/xpub-faraday/api/db/dev/.gitkeep
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/packages/xpub-faraday/api/db/production/.gitkeep b/packages/xpub-faraday/api/db/production/.gitkeep
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391