+
+
+
+
+ {{ app.description }}
+
+
+
+
+
+
+
+
diff --git a/ccm-core/src/ccm-admin-dashboard/src/admin-ui.ts b/ccm-core/src/ccm-admin-dashboard/src/admin-ui.ts
new file mode 100644
index 000000000..ee4759c01
--- /dev/null
+++ b/ccm-core/src/ccm-admin-dashboard/src/admin-ui.ts
@@ -0,0 +1,10 @@
+export interface AdminApp {
+ slug: String,
+ label: string,
+ description: string,
+ order: number,
+ jsFilesUrls: string[],
+ cssFilesUrls: string[],
+ iconName: string | undefined,
+ symbolUrl: string | undefined,
+}
\ No newline at end of file
diff --git a/ccm-core/src/ccm-admin-dashboard/src/main.ts b/ccm-core/src/ccm-admin-dashboard/src/main.ts
new file mode 100644
index 000000000..ca1371436
--- /dev/null
+++ b/ccm-core/src/ccm-admin-dashboard/src/main.ts
@@ -0,0 +1,17 @@
+import Vue from "vue";
+import App from "./App.vue";
+import router from "./router";
+import store from "./store";
+
+import {BootstrapVue, IconsPlugin} from "bootstrap-vue";
+
+Vue.config.productionTip = false;
+
+Vue.use(BootstrapVue);
+Vue.use(IconsPlugin);
+
+new Vue({
+ router,
+ store,
+ render: h => h(App)
+}).$mount("#app");
diff --git a/ccm-core/src/ccm-admin-dashboard/src/router/index.ts b/ccm-core/src/ccm-admin-dashboard/src/router/index.ts
new file mode 100644
index 000000000..e75509f8b
--- /dev/null
+++ b/ccm-core/src/ccm-admin-dashboard/src/router/index.ts
@@ -0,0 +1,29 @@
+import Vue from "vue";
+import VueRouter, { RouteConfig } from "vue-router";
+import Home from "../views/Home.vue";
+
+Vue.use(VueRouter);
+
+const routes: Array