diff --git a/ExpressAPI/src/express/RoutesManager.ts b/ExpressAPI/src/express/RoutesManager.ts
new file mode 100644
index 0000000000000000000000000000000000000000..683f5ac33fe75f7598454785a4eb000b0d635b39
--- /dev/null
+++ b/ExpressAPI/src/express/RoutesManager.ts
@@ -0,0 +1,9 @@
+import { Express } from 'express-serve-static-core';
+
+
+interface RoutesManager {
+    registerOnBackend(backend: Express): void;
+}
+
+
+export default RoutesManager;
diff --git a/ExpressAPI/src/routes/ApiRoutesManager.ts b/ExpressAPI/src/routes/ApiRoutesManager.ts
new file mode 100644
index 0000000000000000000000000000000000000000..e8ff6deba9b3b529f29d6173b38130766fec33b2
--- /dev/null
+++ b/ExpressAPI/src/routes/ApiRoutesManager.ts
@@ -0,0 +1,25 @@
+import { Express }   from 'express-serve-static-core';
+import RoutesManager from '../express/RoutesManager';
+import BaseRoutes    from './BaseRoutes';
+
+
+class AdminRoutesManager implements RoutesManager {
+    private static _instance: AdminRoutesManager;
+
+    private constructor() { }
+
+    public static get instance(): AdminRoutesManager {
+        if ( !AdminRoutesManager._instance ) {
+            AdminRoutesManager._instance = new AdminRoutesManager();
+        }
+
+        return AdminRoutesManager._instance;
+    }
+
+    registerOnBackend(backend: Express) {
+        BaseRoutes.registerOnBackend(backend);
+    }
+}
+
+
+export default AdminRoutesManager.instance;