diff --git a/frontend/mock/data/plugin/histograms/tags.js b/frontend/mock/data/plugin/histograms/tags.js index 71c747f7914b21b8e72c6ee3165c84d9c7752a0e..9359f8798a407839c6eaa2679c86a62f722d7595 100644 --- a/frontend/mock/data/plugin/histograms/tags.js +++ b/frontend/mock/data/plugin/histograms/tags.js @@ -19,15 +19,27 @@ module.exports = function (path, queryParam, postParam) { data: { "test": { "layer1/Wx_plus_b/pre_activations": - { - "displayName": "layer1/Wx_plus_b/pre_activations", - "description": "" - }, + { + "displayName": "layer1/Wx_plus_b/pre_activations", + "description": "" + }, "layer1/Wx_plus_b/pre_activations_1": - { - "displayName": "layer1/Wx_plus_b/pre_activations_1", - "description": "" - } + { + "displayName": "layer1/Wx_plus_b/pre_activations_1", + "description": "" + } + }, + "train": { + "layer1/Wx_plus_b/pre_activations": + { + "displayName": "layer1/Wx_plus_b/pre_activations", + "description": "" + }, + "layer1/Wx_plus_b/pre_activations_1": + { + "displayName": "layer1/Wx_plus_b/pre_activations_1", + "description": "" + } } } } diff --git a/frontend/mock/data/plugin/scalars/tags.js b/frontend/mock/data/plugin/scalars/tags.js index 6cf9b62fb95a74245cbfeecc1104497a03f53c9e..ec8acdebba665e07991b9ca8d76cc2eab9b78292 100644 --- a/frontend/mock/data/plugin/scalars/tags.js +++ b/frontend/mock/data/plugin/scalars/tags.js @@ -22,6 +22,20 @@ module.exports = function (path, queryParam, postParam) { "displayName": "layer2/biases/summaries/mean", "description": "" } + }, + "train": { + "layer2/biases/summaries/mean": { + "displayName": "layer2/biases/summaries/mean", + "description": "" + }, + "layer2/biases/summaries/accuracy": { + "displayName": "layer2/biases/summaries/accuracy", + "description": "" + }, + "layer2/biases/summaries/cost": { + "displayName": "layer2/biases/summaries/cost", + "description": "" + } } } } diff --git a/frontend/package.json b/frontend/package.json index 92250d37109475905b7522005d7c0c3f09f1a2d9..41cf3259cb7d3a6c4765686e633037f5675357fb 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -27,6 +27,9 @@ "san-router": "^1.1.1", "san-store": "^1.0.1", "san-update": "^2.1.0", + "vue": "^2.5.2", + "vue-router": "^3.0.1", + "vuetify": "^0.17.7", "xlsx": "^0.11.3" }, "devDependencies": { @@ -72,6 +75,10 @@ "webpack-dev-server": "^2.4.2", "webpack-hot-middleware": "^2.19.1", "webpack-merge": "^4.1.0", - "yargs": "^8.0.2" + "yargs": "^8.0.2", + "vue-jest": "^1.0.2", + "vue-loader": "^13.3.0", + "vue-style-loader": "^3.0.1", + "vue-template-compiler": "^2.5.2" } } diff --git a/frontend/src/App.vue b/frontend/src/App.vue new file mode 100644 index 0000000000000000000000000000000000000000..1a0d8600c012a67708635340bd3f23bb95b0e289 --- /dev/null +++ b/frontend/src/App.vue @@ -0,0 +1,75 @@ + + + + + + diff --git a/frontend/src/common/component/AppMenu.vue b/frontend/src/common/component/AppMenu.vue new file mode 100644 index 0000000000000000000000000000000000000000..9cd847be15fe5aaf09779ea914ab5eacec8eb7e9 --- /dev/null +++ b/frontend/src/common/component/AppMenu.vue @@ -0,0 +1,85 @@ + + + + + diff --git a/frontend/src/common/component/ExpandPanel.vue b/frontend/src/common/component/ExpandPanel.vue new file mode 100644 index 0000000000000000000000000000000000000000..322ef3eab1b9cebe6f6d64163fad21df67eb0a4e --- /dev/null +++ b/frontend/src/common/component/ExpandPanel.vue @@ -0,0 +1,65 @@ + + + + + diff --git a/frontend/src/common/component/Notification/index.js b/frontend/src/common/component/Notification/index.js index 460b76af95d0f9787069fd562aa115a113f7248c..71f89fa5c58df3ec494f6556eaf639b95d6e82c6 100644 --- a/frontend/src/common/component/Notification/index.js +++ b/frontend/src/common/component/Notification/index.js @@ -1,7 +1,3 @@ -import Notification from './Notification'; -import NotificationItem from './NotificationItem'; - -export { - NotificationItem, - Notification as default -}; +/** + * Created by ludaming on 3/4/18. + */ diff --git a/frontend/src/graph/Graph.vue b/frontend/src/graph/Graph.vue new file mode 100644 index 0000000000000000000000000000000000000000..0b1a3e12c9fbb0eaaf1540f3188b0f1a7afaf9af --- /dev/null +++ b/frontend/src/graph/Graph.vue @@ -0,0 +1,60 @@ + + + + + diff --git a/frontend/src/graph/ui/Chart.vue b/frontend/src/graph/ui/Chart.vue new file mode 100644 index 0000000000000000000000000000000000000000..b9c911e6bba8d45e14f83995ed14cfc28e093690 --- /dev/null +++ b/frontend/src/graph/ui/Chart.vue @@ -0,0 +1,189 @@ + + + diff --git a/frontend/src/graph/ui/Config.vue b/frontend/src/graph/ui/Config.vue new file mode 100644 index 0000000000000000000000000000000000000000..f5ea3ee4092ac3d8b1b584332a3eeb6fe4ce95ff --- /dev/null +++ b/frontend/src/graph/ui/Config.vue @@ -0,0 +1,57 @@ + + + diff --git a/frontend/src/histogram/Histogram.vue b/frontend/src/histogram/Histogram.vue new file mode 100644 index 0000000000000000000000000000000000000000..6cd5e4fa98dc75f73c08e276fb922bbde6576b21 --- /dev/null +++ b/frontend/src/histogram/Histogram.vue @@ -0,0 +1,158 @@ + + + + + diff --git a/frontend/src/histogram/ui/Chart.vue b/frontend/src/histogram/ui/Chart.vue new file mode 100644 index 0000000000000000000000000000000000000000..1cfb92822a4bcc6e629f2ebd23cd76ac0056520b --- /dev/null +++ b/frontend/src/histogram/ui/Chart.vue @@ -0,0 +1,525 @@ + + + + diff --git a/frontend/src/histogram/ui/ChartPage.vue b/frontend/src/histogram/ui/ChartPage.vue new file mode 100644 index 0000000000000000000000000000000000000000..d5a5e52175adcab3e878bc13e7075b6bbf6407d3 --- /dev/null +++ b/frontend/src/histogram/ui/ChartPage.vue @@ -0,0 +1,88 @@ + + + diff --git a/frontend/src/histogram/ui/Config.vue b/frontend/src/histogram/ui/Config.vue new file mode 100644 index 0000000000000000000000000000000000000000..9607984a55251b3c4a418712c5407a1e426714cb --- /dev/null +++ b/frontend/src/histogram/ui/Config.vue @@ -0,0 +1,71 @@ + + + + + diff --git a/frontend/src/images/Images.vue b/frontend/src/images/Images.vue new file mode 100644 index 0000000000000000000000000000000000000000..8f484db54dd845d538a60ed8919eb2be2878687c --- /dev/null +++ b/frontend/src/images/Images.vue @@ -0,0 +1,168 @@ + + + + + diff --git a/frontend/src/images/ui/ChartPage.vue b/frontend/src/images/ui/ChartPage.vue new file mode 100644 index 0000000000000000000000000000000000000000..3116b82ff799f337b7fec2903b5331b82430168f --- /dev/null +++ b/frontend/src/images/ui/ChartPage.vue @@ -0,0 +1,89 @@ + + + + + diff --git a/frontend/src/images/ui/Config.vue b/frontend/src/images/ui/Config.vue new file mode 100644 index 0000000000000000000000000000000000000000..71137c31e3c4b317dbf7cc2b4d7c5229bf3266c3 --- /dev/null +++ b/frontend/src/images/ui/Config.vue @@ -0,0 +1,62 @@ + + + diff --git a/frontend/src/images/ui/Image.vue b/frontend/src/images/ui/Image.vue new file mode 100644 index 0000000000000000000000000000000000000000..04a8e72d7171db8f2f0ba06ef192efdd9c1f13d0 --- /dev/null +++ b/frontend/src/images/ui/Image.vue @@ -0,0 +1,158 @@ + + + + diff --git a/frontend/src/index.js b/frontend/src/index.js index 8506d669cbb9458f4fb89800816ca0e85acbd1fc..af9fa30167aff7f377dabfec42c704a7dd611d0a 100644 --- a/frontend/src/index.js +++ b/frontend/src/index.js @@ -1,16 +1,46 @@ -import 'normalize.css/normalize.css'; -import 'san-mui/index.css'; -import './common/component/ui-common.styl'; +//import 'normalize.css/normalize.css'; +//import 'san-mui/index.css'; +//import './common/component/ui-common.styl'; +// +//import './home/index'; +//import './scalars/index'; +//import './images/index'; +//import './histogram/index'; +//import './graph/index'; +// +//import App from './App'; +//new App({ +// data: { +// titleName: 'VisualDL' +// } +//}).attach(document.getElementById('root')); +// +//var vm = new Vue({ +// el: "#root", +// +//}) -import './home/index'; -import './scalars/index'; -import './images/index'; -import './histogram/index'; -import './graph/index'; -import App from './App'; -new App({ - data: { - titleName: 'VisualDL' + +// The Vue build version to load with the `import` command +// (runtime-only or standalone) has been set in webpack.base.conf with an alias. +import Vue from 'vue' +import App from './App' +import Vuetify from 'vuetify' +import router from '@/router' +Vue.config.productionTip = false + +Vue.use(Vuetify, { + theme: { + primary: '#008c99', + accent: '#008c99' } -}).attach(document.getElementById('root')); +}) + +/* eslint-disable no-new */ +new Vue({ + el: '#root', + router, + components: {App}, + template: '', +}) diff --git a/frontend/src/router/index.js b/frontend/src/router/index.js new file mode 100644 index 0000000000000000000000000000000000000000..6832582f219b681c5281e57f31e299a42b613817 --- /dev/null +++ b/frontend/src/router/index.js @@ -0,0 +1,34 @@ +import Vue from 'vue' +import Router from 'vue-router' + +import Scalars from '@/scalars/Scalars' +import Histogram from '@/histogram/Histogram' +import Images from '@/images/Images' +import Graph from '@/graph/Graph' + +Vue.use(Router) + +export default new Router({ + routes: [ + { + path: '/scalars', + name: 'Scalars', + component: Scalars + }, + { + path: '/histograms', + name: 'Histograms', + component: Histogram + }, + { + path: '/images', + name: 'Images', + component: Images + }, + { + path: '/graphs', + name: 'Graph', + component: Graph + }, + ] +}) diff --git a/frontend/src/scalars/Scalars.vue b/frontend/src/scalars/Scalars.vue new file mode 100644 index 0000000000000000000000000000000000000000..bfa18c684b2f1c9392e2e24ed931c4ec0f1157ec --- /dev/null +++ b/frontend/src/scalars/Scalars.vue @@ -0,0 +1,161 @@ + + + + + diff --git a/frontend/src/scalars/ui/Chart.vue b/frontend/src/scalars/ui/Chart.vue new file mode 100644 index 0000000000000000000000000000000000000000..66a4c508281ebe20a6db30966061c8a31fb1e395 --- /dev/null +++ b/frontend/src/scalars/ui/Chart.vue @@ -0,0 +1,591 @@ + + + + diff --git a/frontend/src/scalars/ui/ChartPage.vue b/frontend/src/scalars/ui/ChartPage.vue new file mode 100644 index 0000000000000000000000000000000000000000..af30bb6fe36abd7a1323c73987e6d23ea4371be0 --- /dev/null +++ b/frontend/src/scalars/ui/ChartPage.vue @@ -0,0 +1,85 @@ + + + + + diff --git a/frontend/src/scalars/ui/Config.vue b/frontend/src/scalars/ui/Config.vue new file mode 100644 index 0000000000000000000000000000000000000000..d77143c106c04751710004b14ced04c44eadcd75 --- /dev/null +++ b/frontend/src/scalars/ui/Config.vue @@ -0,0 +1,130 @@ + + + + + diff --git a/frontend/src/style/main.styl b/frontend/src/style/main.styl new file mode 100644 index 0000000000000000000000000000000000000000..f8b5da7da33d1d3e88d64bdf761dd064079af039 --- /dev/null +++ b/frontend/src/style/main.styl @@ -0,0 +1,11 @@ +//stylus variables define before import statement +$input-font-size = 14px + +@import '../../node_modules/vuetify/src/stylus/main' + +//css define after import statement +.input-group.input-group--slider label + font-size $input-font-size + +.input-group__details + min-height 14px \ No newline at end of file diff --git a/frontend/src/style/variables.styl b/frontend/src/style/variables.styl index 91fd99c0eae6031b3b8815f98b91b68b17d99e24..0110766dcd2460c353f9a2b45495f4905c4bc17f 100644 --- a/frontend/src/style/variables.styl +++ b/frontend/src/style/variables.styl @@ -8,6 +8,6 @@ $-left-background-color = #303a3a $-content-text-color = #303a3a -$-left-border-clor = #e9e9e9 +$-left-border-color = #e9e9e9 -$-right-font-color = #ccc +$-right-font-color = rgba(#fff, 0.7) diff --git a/frontend/template/index.html b/frontend/template/index.html index e984f5e24a1e63d133b65184c263cc540428d126..198a8895717b81b1dfab9ebf1172755d23b16d2e 100755 --- a/frontend/template/index.html +++ b/frontend/template/index.html @@ -5,6 +5,7 @@ Visual DL +
diff --git a/frontend/tool/webpack.config.js b/frontend/tool/webpack.config.js index a0f7e8b6770da150e93946685314833459eb55c0..1cece3cb4e31c5ec6f5b8c8f27bcc4bb8e13808a 100644 --- a/frontend/tool/webpack.config.js +++ b/frontend/tool/webpack.config.js @@ -46,11 +46,13 @@ const config = { resolve: { alias: { - 'san-mui': 'san-mui/lib', - axios: 'axios/dist/axios.min.js' + axios: 'axios/dist/axios.min.js', + 'vue$': 'vue/dist/vue.esm.js', + '@': path.resolve(projectPath, 'src'), + style: path.resolve(__dirname, '../src/style') }, - extensions: ['.js', '.json', '.styl', '.css', '.html', '.san'] + extensions: ['.js', '.json', '.styl', '.css', '.html', '.vue'] }, module: { @@ -59,13 +61,8 @@ const config = { ], rules: [ { - test: /\.san$/, - loader: 'san-loader', - options: { - loaders: { - stylus: getLoaders(isDev, 'stylus') - } - } + test: /\.vue$/, + loader: 'vue-loader', }, { test: /\.js$/,