diff --git a/src/LatestInteraction/DemoLatestInteraction.js b/src/LatestInteraction/DemoLatestInteraction.js
index 7f805eeaf158cbca59f236d02907060e38a5d1e9..fafd8715cce7751069b1a949b437d2288bc891ba 100644
--- a/src/LatestInteraction/DemoLatestInteraction.js
+++ b/src/LatestInteraction/DemoLatestInteraction.js
@@ -1,5 +1,5 @@
 import React from 'react'
-import {LatestInteraction} from './index'
+import {LatestInteraction} from './LatestInteraction'
 
 export function DemoLatestInteraction(props) {
   const intended = {action_names: ["A", "A", "B", "C"], primitive_valences:[1, 2, 3, 4]};
diff --git a/src/LatestInteraction/LatestInteraction.js b/src/LatestInteraction/LatestInteraction.js
new file mode 100644
index 0000000000000000000000000000000000000000..ec3026c30ffcf8f3eb06488565f11e08f815142c
--- /dev/null
+++ b/src/LatestInteraction/LatestInteraction.js
@@ -0,0 +1,65 @@
+import React from 'react'
+import {observer} from 'mobx-react'
+
+import { actionClassName } from '../utils/valenceColours';
+
+export const LatestInteraction = observer(
+  function LatestInteraction(props) {
+    let intended, enacted;
+    let iteration = null;
+    if ('int-trace' in props.store.components && props.store.components['int-trace'].showInteraction) {
+      intended = props.store.components['int-trace'].currentInteraction.intended;
+      enacted = props.store.components['int-trace'].currentInteraction.enacted;
+      const iteration_id = props.store.components['int-trace'].currentInteraction.id;
+    iteration = [<p key="first"><span className="label">Iteration:</span> {iteration_id}</p>, <hr key="last"/>];
+    } else {
+      intended = props.intended;
+      enacted = props.enacted;
+    }
+  
+    /**
+     * Return the 
+     * @param {Object} inter object representing the interaction to display (either intended or enacted)
+     * @param {Number} i index of primitive action which row this is makeing
+     */
+    function inter2row(inter, length, i) {
+      if (i < length) {
+        return (
+        <td className={actionClassName(inter.primitive_valences[i])}>
+          {inter.action_names[i]} ({inter.primitive_valences[i]})
+        </td>); 
+      } else {
+        return null;
+      }
+    }
+  
+    const length_i = intended.action_names.length,
+          length_e = enacted.action_names.length;
+    let rows = [];
+    for (let i=0; i<Math.max(length_i, length_e); i++) {
+      rows.push(
+        <tr key={i}>
+          {inter2row(intended, length_i, i)}
+          {inter2row(enacted, length_e, i)}
+        </tr>
+      );
+    }
+  
+    return (
+      <div className="latest-interaction">
+        {iteration}
+        <table>
+          <thead>
+            <tr>
+              <th className="label">Intended</th>
+              <th className="label">Enacted</th>
+            </tr>
+          </thead>
+          <tbody>
+            {rows}
+          </tbody>
+        </table>
+      </div>
+    );
+  }
+  )
\ No newline at end of file
diff --git a/src/LatestInteraction/RosLastestInteraction.js b/src/LatestInteraction/RosLastestInteraction.js
index d673976335b2023d7d86b15f0f94e4836281ba34..2899cc9ece45e1c9fdd73c168dff61b7364f731d 100644
--- a/src/LatestInteraction/RosLastestInteraction.js
+++ b/src/LatestInteraction/RosLastestInteraction.js
@@ -2,7 +2,7 @@ import React, {Component} from 'react'
 import RosLib from 'roslib'
 
 import {Modal} from '../utils/modeHandler'
-import {LatestInteraction} from './index'
+import {LatestInteraction} from './LatestInteraction'
 
 class RosLatestInteraction extends Component {
   constructor(props) {
diff --git a/src/LatestInteraction/index.js b/src/LatestInteraction/index.js
index 0cd9f57b7e766405615c33e17252c2fb3460acd8..624763d0ce870e4db0a5e9b3ddc76fccf0955706 100644
--- a/src/LatestInteraction/index.js
+++ b/src/LatestInteraction/index.js
@@ -1,69 +1,4 @@
-import React from 'react'
-import {observer} from 'mobx-react'
-
 import './LatestInteraction.css'
-import { actionClassName } from '../utils/valenceColours';
-
-export const LatestInteraction = observer(
-function LatestInteraction(props) {
-  let intended, enacted;
-  let iteration = null;
-  if ('int-trace' in props.store.components && props.store.components['int-trace'].showInteraction) {
-    intended = props.store.components['int-trace'].currentInteraction.intended;
-    enacted = props.store.components['int-trace'].currentInteraction.enacted;
-    const iteration_id = props.store.components['int-trace'].currentInteraction.id;
-  iteration = [<p key="first"><span className="label">Iteration:</span> {iteration_id}</p>, <hr key="last"/>];
-  } else {
-    intended = props.intended;
-    enacted = props.enacted;
-  }
-
-  /**
-   * Return the 
-   * @param {Object} inter object representing the interaction to display (either intended or enacted)
-   * @param {Number} i index of primitive action which row this is makeing
-   */
-  function inter2row(inter, length, i) {
-    if (i < length) {
-      return (
-      <td className={actionClassName(inter.primitive_valences[i])}>
-        {inter.action_names[i]} ({inter.primitive_valences[i]})
-      </td>); 
-    } else {
-      return null;
-    }
-  }
-
-  const length_i = intended.action_names.length,
-        length_e = enacted.action_names.length;
-  let rows = [];
-  for (let i=0; i<Math.max(length_i, length_e); i++) {
-    rows.push(
-      <tr key={i}>
-        {inter2row(intended, length_i, i)}
-        {inter2row(enacted, length_e, i)}
-      </tr>
-    );
-  }
-
-  return (
-    <div className="latest-interaction">
-      {iteration}
-      <table>
-        <thead>
-          <tr>
-            <th className="label">Intended</th>
-            <th className="label">Enacted</th>
-          </tr>
-        </thead>
-        <tbody>
-          {rows}
-        </tbody>
-      </table>
-    </div>
-  );
-}
-)
 
 export { DemoLatestInteraction } from './DemoLatestInteraction'
 export { RosLatestInteraction } from './RosLastestInteraction'
\ No newline at end of file