diff --git a/server/routes/basepath.js b/server/routes/basepath.js
new file mode 100644
index 0000000..96e9829
--- /dev/null
+++ b/server/routes/basepath.js
@@ -0,0 +1,33 @@
+"use strict";
+
+const express = require("express"),
+ fs = require("fs"),
+ url = require("url");
+
+const router = express.Router();
+
+/* This router only handles HTML files and is used
+ * to replace BASEPATH */
+router.get("/*", function(req, res, next) {
+ const parts = url.parse(req.url),
+ basePath = req.app.get("basePath");
+
+ if (!/\/[^/]+\.html$/.exec(parts.pathname)) {
+ return next();
+ }
+
+ console.log("Attempting to parse 'frontend" + parts.pathname + "'");
+
+ /* Replace in index.html with
+ * the basePath */
+ fs.readFile("frontend" + parts.pathname, "utf8", function(error, content) {
+ if (error) {
+ return next();
+ }
+ res.send(content.replace(
+ /