diff --git a/__tests__/src/lib/MiradorViewer.test.js b/__tests__/src/lib/MiradorViewer.test.js
index 267551c340b887058b8dc4dfe7e8a611729aa907..f3f2702b66bfb4d40bcdf3e0851332257b56ae49 100644
--- a/__tests__/src/lib/MiradorViewer.test.js
+++ b/__tests__/src/lib/MiradorViewer.test.js
@@ -1,4 +1,5 @@
 import ReactDOM from 'react-dom';
+import { shallow } from 'enzyme';
 import MiradorViewer from '../../../src/lib/MiradorViewer';
 
 jest.unmock('react-i18next');
@@ -104,6 +105,15 @@ describe('MiradorViewer', () => {
       }));
     });
   });
+
+  describe('render', () => {
+    it('passes props through to the App component', () => {
+      const rendered = shallow(instance.render({ some: 'prop' }));
+      expect(rendered.find('App').length).toBe(1);
+      expect(rendered.find('App').prop('some')).toBe('prop');
+    });
+  });
+
   describe('unmount', () => {
     it('unmounts via ReactDOM', () => {
       instance.unmount();
diff --git a/src/lib/MiradorViewer.js b/src/lib/MiradorViewer.js
index c6d6da63872ad85202545724ff53f1d231bb10cf..c9238b84d9057a70b8c96dd543ca2584177333ed 100644
--- a/src/lib/MiradorViewer.js
+++ b/src/lib/MiradorViewer.js
@@ -28,10 +28,10 @@ class MiradorViewer {
   /**
    * Render the mirador viewer
    */
-  render() {
+  render(props = {}) {
     return (
       <Provider store={this.store}>
-        <HotApp plugins={this.plugins} />
+        <HotApp plugins={this.plugins} {...props} />
       </Provider>
     );
   }