Skip to content

Commit

Permalink
Initialize NuxtJs Dashboard
Browse files Browse the repository at this point in the history
  • Loading branch information
Geminii committed Mar 17, 2019
0 parents commit 225412e
Show file tree
Hide file tree
Showing 64 changed files with 15,154 additions and 0 deletions.
13 changes: 13 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# editorconfig.org
root = true

[*]
indent_style = space
indent_size = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

[*.md]
trim_trailing_whitespace = false
85 changes: 85 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
# Created by .ignore support plugin (hsz.mobi)
### Node template
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage

# nyc test coverage
.nyc_output

# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# Bower dependency directory (https://bower.io/)
bower_components

# node-waf configuration
.lock-wscript

# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release

# Dependency directories
node_modules/
jspm_packages/

# TypeScript v1 declaration files
typings/

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Optional REPL history
.node_repl_history

# Output of 'npm pack'
*.tgz

# Yarn Integrity file
.yarn-integrity

# dotenv environment variables file
.env

# parcel-bundler cache (https://parceljs.org/)
.cache

# next.js build output
.next

# nuxt.js build output
.nuxt

# Nuxt generate
dist

# vuepress build output
.vuepress/dist

# Serverless directories
.serverless

# IDE
.idea
*.iml

# Service worker
sw.*
23 changes: 23 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Taken from https://nodejs.org/en/docs/guides/nodejs-docker-webapp/
FROM node:current-slim

# Create app directory
WORKDIR /usr/src/app

# Install app dependencies
# A wildcard is used to ensure both package.json AND package-lock.json are copied
# where available (npm@5+)
COPY package*.json ./

RUN npm install

# Bundle app source
COPY . .

ENV HOST 0.0.0.0
EXPOSE 3000

# Start command
# .. serving with hot reload
#CMD [ "npm", "run", "dev"]
CMD npm run build && npm run start
59 changes: 59 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# nuxtjs-dashboard

> NuxtJs Dashboard is based on Vuetify Material Theme purposed by Creative Tim
![Product Gif](./static/vuetify-material-dashboard.gif)

NuxtJs Dashboard Vuetify Material is a beautiful resource built over [NuxtJs](https://nuxtjs.org/) coupled with [Vuetify](https://vuetifyjs.com/en/). It will help you get started developing dashboards in no time.
This dashboard is the official Vuetify version of the Original [Material Dashboard](https://www.creative-tim.com/product/material-dashboard). Using the Dashboard is pretty simple but requires basic knowledge of [NuxtJs](https://nuxtjs.org/) and [Vuetify](https://vuetifyjs.com/en/).

## Getting started

``` bash
# install dependencies
$ npm install

# serve with hot reload at localhost:3000
$ npm run dev

# build for production and launch server
$ npm run build
$ npm start

# generate static project
$ npm run generate
```

## Building and running into containerized version

``` bash
# Build image
$ docker build -t nuxtjs-dashboard .

# Run image in detached mode
$ docker run -p 3000:3000 -d nuxtjs-dashboard

# Get container ID
$ docker ps

# Print application output (continuously)
$ docker logs <container id> -f

# Enter the container
$ docker exec -it <container id> /bin/bash

# Quit the container
$ docker stop <container id>
```


## NuxtJs
NuxtJs is a vue meta Framework to create complex, fast & universal web applications quickly.

## Vuetify
Vuetify is developed exactly according to Material Design spec. Every component is hand crafted to bring you the best possible UI tools to your next great app. The development doesn't stop at the core components outlined in Google's spec. Through the support of community members and sponsors, additional components will be designed and made available for everyone to enjoy.

#### Special thanks
- [NuxtJs](https://nuxtjs.org/) for the wonderful vue framework <3
- [Vuetify](https://vuetifyjs.com/en/) for the beautiful vue framework UI
- [Vuetify Material Theme](https://www.creative-tim.com/product/vuetify-material-dashboard?ref=vuetifyjs.com) for the beautiful work realized by [Creative Tim](https://www.creative-tim.com/)
7 changes: 7 additions & 0 deletions assets/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# ASSETS

**This directory is not required, you can delete it if you don't want to use it.**

This directory contains your un-compiled assets such as LESS, SASS, or JavaScript.

More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/assets#webpacked).
17 changes: 17 additions & 0 deletions assets/style/index.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
@import "material-dashboard/mixins";
@import "material-dashboard/variables";
@import "material-dashboard/typography";
@import "material-dashboard/sidebar";
@import "material-dashboard/toolbar";
@import "material-dashboard/misc";
@import "material-dashboard/inputs";
@import "material-dashboard/footer";
@import "material-dashboard/cards";
@import "material-dashboard/tables";
@import "material-dashboard/tabs";
@import "material-dashboard/checkboxes";
@import "material-dashboard/tooltips";
@import "material-dashboard/buttons";
@import "material-dashboard/alerts";
@import "material-dashboard/fixed-plugin";
@import "material-dashboard/dropdown";
48 changes: 48 additions & 0 deletions assets/style/material-dashboard/_alerts.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
.v-alert {
.v-alert__dismissible .v-icon {
color: rgba($white, .5);
font-size: $font-size-default + 2;
}

.v-alert__icon.v-icon {
font-size: $font-size-alert-icon;
color: $white;
}
}

.v-snack {
.v-icon:not(:first-child) {
color: rgba($white, .5);
margin-left: $margin-general + 1;
}

.v-icon:first-child {
font-size: $font-size-alert-icon;
}

.v-snack__content {
padding: $padding-general $padding-general + 5;
height: auto;
}

.v-snack__wrapper {
border-radius: $border-radius-base + 1;
}
}

.v-snack .v-snack__wrapper,
.v-alert {
@include alert-shadow('info', lighten($brand-info, 5%));
@include alert-shadow('success', $brand-success);
@include alert-shadow('error', $brand-danger);
@include alert-shadow('warning', $brand-warning);
@include alert-shadow('purple', $brand-primary);
}

.v-snack {
@include notifications-color('info', lighten($brand-info, 5%));
@include notifications-color('success', $brand-success);
@include notifications-color('error', $brand-danger);
@include notifications-color('warning', $brand-warning);
@include notifications-color('purple', $brand-primary);
}
101 changes: 101 additions & 0 deletions assets/style/material-dashboard/_buttons.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
.v-btn {
margin: $margin-small 1px;
padding: $padding-small + 2 $padding-general + 15;
font-size: $font-size-small;
font-weight: $font-weight-base !important;
height: auto;
line-height: $line-height-base;
color: $white !important;
cursor: pointer;
border-radius: $border-radius-base;

&.v-btn--round,
&.v-btn--round:after {
border-radius: $btn-round-padding;
}

&.v-btn-facebook {
@include social-buttons-color($social-facebook);
}
&.v-btn-twitter {
@include social-buttons-color($social-twitter);
}

.v-icon--left {
margin-right: $btn-margin-icon;
}
.v-icon--right {
margin-left: $btn-margin-icon;
}

&.v-btn--large {
font-size: $font-size-general;
padding: $btn-y-large-padding $btn-x-large-padding !important;
line-height: $btn-large-line-height;
}

&.v-btn--small {
padding: $btn-y-small-padding $btn-x-small-padding !important;
font-size: $font-size-small - 1;
}

&.v-btn--icon {
width: $btn-icon-dim;
height: $btn-icon-dim;
line-height: $btn-icon-dim;
padding: 0;

&.v-btn--round {
border-radius: 50%;
}
}

&.success {
@include button-color($brand-success);
}

&.default {
@include button-color($gray-light);
}

&.primary {
@include button-color($brand-primary);
}

&.warning {
@include button-color($brand-warning);
}

&.info {
@include button-color($brand-info);
}

&.danger {
@include button-color($brand-danger);
}

.v-icon {
font-size: $btn-font-size-icon;
}
}

.v-btn--fixed {
border-radius: $border-radius-base + 3;
border-bottom-right-radius: 0;
border-top-right-radius: 0;
background-color: rgba($black, .3) !important;
right: 0;
padding: 0;
width: $btn-fixed-width;

.v-icon {
font-size: $btn-fixed-icon-size;
padding: $padding-small;
}
}

.v-btn--active:before,
.v-btn:focus:before,
.v-btn:hover:before {
background-color: transparent;
}
Loading

0 comments on commit 225412e

Please sign in to comment.