Skip to content

Commit ce4e206

Browse files
committed
Sing App Vue Dashboard v1.0.0
0 parents  commit ce4e206

File tree

95 files changed

+28582
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

95 files changed

+28582
-0
lines changed

.gitignore

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
.DS_Store
2+
node_modules
3+
dist
4+
5+
# local env files
6+
.env.local
7+
.env.*.local
8+
9+
# Log files
10+
npm-debug.log*
11+
yarn-debug.log*
12+
yarn-error.log*
13+
14+
# Editor directories and files
15+
.idea
16+
.vscode
17+
*.suo
18+
*.ntvs*
19+
*.njsproj
20+
*.sln
21+
*.sw*

README.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# vue-cli
2+
3+
## Project setup
4+
```
5+
yarn install
6+
```
7+
8+
### Compiles and hot-reloads for development
9+
```
10+
yarn run serve
11+
```
12+
13+
### Compiles and minifies for production
14+
```
15+
yarn run build
16+
```
17+
18+
### Run your tests
19+
```
20+
yarn run test
21+
```
22+
23+
### Lints and fixes files
24+
```
25+
yarn run lint
26+
```

babel.config.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
module.exports = {
2+
presets: [
3+
'@vue/app'
4+
]
5+
}

package.json

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
{
2+
"name": "sing-app-vue",
3+
"version": "4.5.0",
4+
"private": true,
5+
"scripts": {
6+
"install": "napa",
7+
"serve": "vue-cli-service serve",
8+
"build": "vue-cli-service build",
9+
"lint": "vue-cli-service lint",
10+
"start": "node server.js"
11+
},
12+
"dependencies": {
13+
"animate.css": "^3.6.1",
14+
"awesome-bootstrap-checkbox": "^1.0.1",
15+
"bootstrap": "^4.1.1",
16+
"bootstrap-vue": "^2.0.0-rc.11",
17+
"css-loader": "^1.0.0",
18+
"d3": "3.5.17",
19+
"easy-pie-chart": "^2.1.7",
20+
"expose-loader": "^0.7.5",
21+
"express": "^4.16.4",
22+
"flot": "^0.8.0-alpha",
23+
"font-awesome": "4.7.0",
24+
"glyphicons-halflings": "1.9.1",
25+
"govpredict-morris": "0.5.1",
26+
"imports-loader": "^0.8.0",
27+
"jquery": "^3.3.1",
28+
"jquery-sparkline": "2.4.0",
29+
"jquery-ui": "^1.12.1",
30+
"line-awesome": "icons8/line-awesome",
31+
"messenger": "git+https://github.com/HubSpot/messenger.git#v1.4.2",
32+
"napa": "^3.0.0",
33+
"node-sass": "^4.9.0",
34+
"nvd3": "1.8.6",
35+
"rickshaw": "1.6.6",
36+
"sass-loader": "^7.0.1",
37+
"vee-validate": "^2.1.0-beta.6",
38+
"vue": "^2.5.17",
39+
"vue-router": "^3.0.1",
40+
"vue-touch": "2.0.0-beta.4",
41+
"vue2-google-maps": "^0.10.2",
42+
"vuetrend": "^0.3.2",
43+
"vuex": "^3.0.1",
44+
"webpack-cli": "^3.1.2",
45+
"webpack-raphael": "^2.1.4",
46+
"widgster": "^1.0.0"
47+
},
48+
"devDependencies": {
49+
"@vue/cli-plugin-babel": "^3.0.5",
50+
"@vue/cli-plugin-eslint": "^3.0.5",
51+
"@vue/cli-service": "^3.0.5",
52+
"vue-template-compiler": "^2.5.17"
53+
},
54+
"napa": {
55+
"jquery.flot.animator": "https://github.com/Codicode/flotanimator.git#3c256c0183d713fd3bf41d04417873928eb1a751",
56+
"flot.dashes": "https://github.com/cquartier/flot.dashes.git",
57+
"jquery.flot-orderBars": "https://github.com/emmerich/flot-orderBars.git"
58+
},
59+
"eslintConfig": {
60+
"root": true,
61+
"env": {
62+
"node": true
63+
},
64+
"extends": [
65+
"plugin:vue/essential",
66+
"eslint:recommended"
67+
],
68+
"rules": {},
69+
"parserOptions": {
70+
"parser": "babel-eslint"
71+
}
72+
},
73+
"postcss": {
74+
"plugins": {
75+
"autoprefixer": {}
76+
}
77+
},
78+
"browserslist": [
79+
"> 1%",
80+
"last 2 versions",
81+
"not ie <= 8"
82+
]
83+
}

public/favicon.ico

1.12 KB
Binary file not shown.

public/index.html

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="utf-8">
5+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
6+
<meta name="viewport" content="width=device-width,initial-scale=1.0">
7+
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
8+
<title>Sing App Vue Dashboard based on vue-router, vuex, bootstrap</title>
9+
</head>
10+
<body>
11+
<noscript>
12+
<strong>We're sorry but vue-cli doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
13+
</noscript>
14+
<div id="app"></div>
15+
<!-- built files will be auto injected -->
16+
</body>
17+
</html>

server.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
var express = require('express');
2+
var serveStatic = require('serve-static');
3+
4+
var app = express();
5+
app.use(serveStatic(__dirname + "/dist"));
6+
7+
var port = process.env.PORT || 5000;
8+
app.listen(port);

src/App.vue

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<template>
2+
<router-view />
3+
</template>
4+
5+
<script>
6+
export default {
7+
name: 'App',
8+
created() {
9+
const currentPath = this.$router.history.current.path;
10+
11+
if (window.localStorage.getItem('authenticated') === 'false') {
12+
this.$router.push('/login');
13+
}
14+
15+
if (currentPath === '/' || currentPath === '/app') {
16+
this.$router.push('/app/dashboard');
17+
}
18+
},
19+
};
20+
</script>
21+
22+
<style src="./styles/theme.scss" lang="scss" />

src/Routes.js

Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
import Vue from 'vue';
2+
import Router from 'vue-router';
3+
4+
import Layout from '@/components/Layout/Layout';
5+
import Login from '@/pages/Login/Login';
6+
import ErrorPage from '@/pages/Error/Error';
7+
// Core
8+
import TypographyPage from '@/pages/Typography/Typography';
9+
10+
// Tables
11+
import TablesBasicPage from '@/pages/Tables/Basic';
12+
13+
// Maps
14+
import GoogleMapPage from '@/pages/Maps/Google';
15+
16+
// Main
17+
import AnalyticsPage from '@/pages/Dashboard/Dashboard';
18+
19+
// Charts
20+
import ChartsPage from '@/pages/Charts/Charts';
21+
22+
// Ui
23+
import IconsPage from '@/pages/Icons/Icons';
24+
import NotificationsPage from '@/pages/Notifications/Notifications';
25+
26+
27+
Vue.use(Router);
28+
29+
export default new Router({
30+
mode: 'history',
31+
routes: [
32+
{
33+
path: '/login',
34+
name: 'Login',
35+
component: Login,
36+
},
37+
{
38+
path: '/error',
39+
name: 'Error',
40+
component: ErrorPage,
41+
},
42+
{
43+
path: '/app',
44+
name: 'Layout',
45+
component: Layout,
46+
children: [
47+
{
48+
path: 'dashboard',
49+
name: 'AnalyticsPage',
50+
component: AnalyticsPage,
51+
},
52+
{
53+
path: 'typography',
54+
name: 'TypographyPage',
55+
component: TypographyPage,
56+
},
57+
{
58+
path: 'components/icons',
59+
name: 'IconsPage',
60+
component: IconsPage,
61+
},
62+
{
63+
path: 'notifications',
64+
name: 'NotificationsPage',
65+
component: NotificationsPage,
66+
},
67+
{
68+
path: 'components/charts',
69+
name: 'ChartsPage',
70+
component: ChartsPage,
71+
},
72+
{
73+
path: 'tables',
74+
name: 'TablesBasicPage',
75+
component: TablesBasicPage,
76+
},
77+
{
78+
path: 'components/maps',
79+
name: 'GoogleMapPage',
80+
component: GoogleMapPage,
81+
},
82+
],
83+
},
84+
],
85+
});

src/assets/people/a1.jpg

166 KB
Loading

0 commit comments

Comments
 (0)