diff --git a/src/containers/gui.js b/src/containers/gui.js
index 89193ad6e9763f51bd22a058f57820215d0e6129..937f4446f9851bd928e2ebc6dcde377f58f08cbf 100644
--- a/src/containers/gui.js
+++ b/src/containers/gui.js
@@ -47,21 +47,30 @@ class GUI extends React.Component {
                 media: basePath + 'static/blocks-media/'
             }
         });
-        return (
-            <GUIComponent {... guiProps}>
-                <GreenFlag vm={vm} {...greenFlagProps} />
-                <StopAll vm={vm} {...stopAllProps} />
-                <Stage vm={vm} {...stageProps} />
-                <SpriteSelector vm={vm} {... spriteSelectorProps} />
-                <Blocks vm={vm} {... blocksProps} />
-            </GUIComponent>
-        );
+        if (this.props.children) {
+            return (
+                <GUIComponent {... guiProps}>
+                    {this.props.children}
+                </GUIComponent>
+            );
+        } else {
+            return (
+                <GUIComponent {... guiProps}>
+                    <GreenFlag vm={vm} {...greenFlagProps} />
+                    <StopAll vm={vm} {...stopAllProps} />
+                    <Stage vm={vm} {...stageProps} />
+                    <SpriteSelector vm={vm} {... spriteSelectorProps} />
+                    <Blocks vm={vm} {... blocksProps} />
+                </GUIComponent>
+            );
+        }
     }
 }
 
 GUI.propTypes = {
     basePath: React.PropTypes.string,
     blocksProps: React.PropTypes.object,
+    children: React.PropTypes.node,
     greenFlagProps: React.PropTypes.object,
     projectData: React.PropTypes.string,
     spriteSelectorProps: React.PropTypes.object,