diff --git a/index.html b/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..c4cd701ab644cb12eadd95f88a07cfe011e0b597
--- /dev/null
+++ b/index.html
@@ -0,0 +1,8 @@
+<style>
+    canvas {width: 100vw; height: 100vh}
+    body {margin: 0}
+</style>
+<canvas id="canvas">
+  This browser requires the <code>&lt;canvas&gt;</code> element to work
+</canvas>
+<script src="./src/main.js" type="module"></script>
\ No newline at end of file
diff --git a/src/main.js b/src/main.js
new file mode 100644
index 0000000000000000000000000000000000000000..15cd17313ea71b8e9d0042d688917e9a9f4e9e81
--- /dev/null
+++ b/src/main.js
@@ -0,0 +1,22 @@
+
+import Canvas from "../hampsterengine/src/canvas.js";
+import Engine from "../hampsterengine/src/engine.js";
+
+const canvas = new Canvas('canvas');
+const engine = new Engine(canvas);
+
+function main() {
+    requestAnimationFrame(main);
+    canvas.updateCanvasSize();
+}
+
+function load() {
+    if (engine.loading) {
+        engine.loadLoop();
+        setTimeout(load, 1000/60);
+    } else {
+        main();
+    }
+}
+
+load();