Started with Vue
diff --git a/erpnext/public/js/education/web-academy.js b/erpnext/public/js/education/web-academy.js
new file mode 100644
index 0000000..1bf325b
--- /dev/null
+++ b/erpnext/public/js/education/web-academy.js
@@ -0,0 +1,27 @@
+import Vue from 'vue/dist/vue.js';
+import VueRouter from 'vue-router/dist/vue-router.js'
+import AcademyRoot from "./web-academy/AcademyRoot.vue";
+import AcademyHome from "./web-academy/pages/AcademyHome.vue";
+import AcademyProgramPage from "./web-academy/pages/AcademyProgramPage.vue";
+import AcademyCoursePage from "./web-academy/pages/AcademyCoursePage.vue";
+
+Vue.use(VueRouter)
+
+const routes = [
+	{path: '', component: AcademyHome},
+	{path: '/Program/:code', component: AcademyProgramPage, props: true},
+	{path: '/Course', component: AcademyCoursePage},
+];
+
+const router = new VueRouter({
+	routes: routes,
+});
+
+frappe.ready(() => {
+	new Vue({
+		el: "#web-academy",
+		router: router,
+		template: "<academy-root/>",
+		components: { AcademyRoot }
+	});
+})
\ No newline at end of file