diff --git a/package.json b/package.json
index 1fe18a59fc5a8a99d8bbe68c7b3805d049649d11..d3f49ce1ccb53465325aa9623f59b7acf137ace9 100644
--- a/package.json
+++ b/package.json
@@ -8,13 +8,16 @@
     "build": "webpack --config webpack.prod.js",
     "prettier": "prettier --write src/**/*.js"
   },
-  "pre-commit": ["prettier"],
+  "pre-commit": [
+    "prettier"
+  ],
   "dependencies": {
     "aframe-input-mapping-component": "https://github.com/fernandojsg/aframe-input-mapping-component",
     "aframe-teleport-controls": "https://github.com/netpro2k/aframe-teleport-controls#feature/teleport-origin",
     "naf-janus-adapter": "^0.1.3",
     "networked-aframe": "https://github.com/netpro2k/networked-aframe#feature/register-adapter",
-    "pleasejs": "^0.4.2"
+    "pleasejs": "^0.4.2",
+    "query-string": "^5.0.1"
   },
   "devDependencies": {
     "babel-core": "^6.26.0",
diff --git a/public/index.html b/public/index.html
index 812d4b87e940d3f2b58e28396cf27fb179404a57..e12e192910bbe15d4c69eab76a9772b18d8b999b 100644
--- a/public/index.html
+++ b/public/index.html
@@ -7,13 +7,14 @@
 </head>
 
 <body>
-    <a-scene networked-scene="
-            adapter: janus;
-            room: 2;
-            serverURL: wss://quander.me:8989;
-            audio: true;
-            debug: true;
-            connectOnLoad: false" mute-mic="eventSrc: a-scene; toggleEvents: action_mute">
+    <a-scene
+        networked-scene="adapter: janus;
+                         room: 2;
+                         serverURL: wss://quander.me:8989;
+                         audio: true;
+                         debug: true;
+                         connectOnLoad: false;"
+        mute-mic="eventSrc: a-scene; toggleEvents: action_mute">
 
         <a-assets>
             <img id="grid" src="assets/grid.png" crossorigin="anonymous" />
@@ -80,4 +81,4 @@
     </script>
 </body>
 
-</html>
\ No newline at end of file
+</html>
diff --git a/src/index.js b/src/index.js
index fabb513a4751cda114a9ed2d5d30d8c6403f42d6..6889117a313f18fd2871130643b771437b0f0ffe 100644
--- a/src/index.js
+++ b/src/index.js
@@ -1,3 +1,5 @@
+import queryString from "query-string";
+
 import "networked-aframe";
 import "naf-janus-adapter";
 import "aframe-teleport-controls";
@@ -49,15 +51,26 @@ AFRAME.registerInputMappings({
     }
   }
 });
-window.onSceneLoad = function() {
+
+const promptForName = function() {
   var username = generateName();
   do {
     username = prompt("Choose a username", username);
   } while (!(username && username.length));
+  return username;
+};
+
+const qs = queryString.parse(location.search);
+window.onSceneLoad = function() {
+  const scene = document.querySelector("a-scene");
+
+  if (qs.room && !isNaN(parseInt(qs.room))) {
+    scene.setAttribute("networked-scene", "room", parseInt(qs.room));
+  }
 
-  var player = document.getElementById("player-rig");
-  var myNametag = player.querySelector(".nametag");
+  const username = promptForName(); // promptForName is blocking
+  const myNametag = document.querySelector("#player-rig .nametag");
   myNametag.setAttribute("text", "value", username);
 
-  document.querySelector("a-scene").components["networked-scene"].connect();
+  scene.components["networked-scene"].connect();
 };
diff --git a/yarn.lock b/yarn.lock
index 7df6b1f8073a251bf43e957f168b84a16b7fe916..17ec74b58d73bc8769ec88977293962769fd8285 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1376,6 +1376,10 @@ decamelize@^1.0.0, decamelize@^1.1.1, decamelize@^1.1.2:
   version "1.2.0"
   resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
 
+decode-uri-component@^0.2.0:
+  version "0.2.0"
+  resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"
+
 deep-equal@^1.0.1:
   version "1.0.1"
   resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5"
@@ -3174,6 +3178,14 @@ qs@~6.4.0:
   version "6.4.0"
   resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233"
 
+query-string@^5.0.1:
+  version "5.0.1"
+  resolved "https://registry.yarnpkg.com/query-string/-/query-string-5.0.1.tgz#6e2b86fe0e08aef682ecbe86e85834765402bd88"
+  dependencies:
+    decode-uri-component "^0.2.0"
+    object-assign "^4.1.0"
+    strict-uri-encode "^1.0.0"
+
 querystring-es3@^0.2.0:
   version "0.2.1"
   resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73"
@@ -3672,6 +3684,10 @@ stream-http@^2.3.1:
     to-arraybuffer "^1.0.0"
     xtend "^4.0.0"
 
+strict-uri-encode@^1.0.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713"
+
 string-width@^1.0.1, string-width@^1.0.2:
   version "1.0.2"
   resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"