├── LICENSE
├── README.md
├── meta.js
└── template
├── .editorconfig
├── .eslintrc.js
├── .gitignore
├── README.md
├── assets
├── README.md
└── theme.scss
├── components
├── Logo.vue
└── README.md
├── layouts
├── README.md
└── default.vue
├── middleware
└── README.md
├── nuxt.config.js
├── package.json
├── pages
├── README.md
└── index.vue
├── plugins
├── README.md
└── vue-material.js
├── static
├── README.md
└── favicon.ico
└── store
└── README.md
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2016 NUXT
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Starter
2 |
3 | A [Nuxt.js](https://github.com/nuxt/nuxt.js) + Vue Material starter project template without the distraction of a complicated development environment.
4 |
5 | ## Installation
6 |
7 | This is a project template for [vue-cli](https://github.com/vuejs/vue-cli).
8 |
9 | ``` bash
10 | $ vue init vuematerial/nuxtjs my-project
11 | $ cd my-project
12 | # install dependencies
13 | $ npm install # Or yarn install
14 | ```
15 |
16 | > Make sure to use a version of vue-cli >= 2.1 (`vue -V`).
17 |
18 | ## Usage
19 |
20 | ### Development
21 |
22 | ``` bash
23 | # serve with hot reloading at localhost:3000
24 | $ npm run dev
25 | ```
26 |
27 | Go to [http://localhost:3000](http://localhost:3000)
28 |
29 | ### Production
30 |
31 | ``` bash
32 | # build for production and launch the server
33 | $ npm run build
34 | $ npm start
35 | ```
36 |
37 | ### Generate
38 |
39 | ``` bash
40 | # generate a static project
41 | $ npm run generate
42 | ```
43 |
--------------------------------------------------------------------------------
/meta.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | helpers: {
3 | raw: function(options) {
4 | return options.fn(this)
5 | }
6 | },
7 | prompts: {
8 | name: {
9 | 'type': 'string',
10 | 'required': true,
11 | 'message': 'Project name'
12 | },
13 | description: {
14 | 'type': 'string',
15 | 'required': false,
16 | 'message': 'Project description',
17 | 'default': 'Nuxt.js project'
18 | },
19 | author: {
20 | 'type': 'string',
21 | 'message': 'Author'
22 | },
23 | },
24 | completeMessage: '{{#inPlace}}To get started:\n\n npm install # Or yarn\n npm run dev{{else}}To get started:\n\n cd {{destDirName}}\n npm install # Or yarn\n npm run dev{{/inPlace}}'
25 | };
26 |
--------------------------------------------------------------------------------
/template/.editorconfig:
--------------------------------------------------------------------------------
1 | # editorconfig.org
2 | root = true
3 |
4 | [*]
5 | indent_size = 2
6 | indent_style = space
7 | end_of_line = lf
8 | charset = utf-8
9 | trim_trailing_whitespace = true
10 | insert_final_newline = true
11 |
12 | [*.md]
13 | trim_trailing_whitespace = false
14 |
--------------------------------------------------------------------------------
/template/.eslintrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | root: true,
3 | parser: 'babel-eslint',
4 | env: {
5 | browser: true,
6 | node: true
7 | },
8 | extends: 'standard',
9 | // required to lint *.vue files
10 | plugins: [
11 | 'html'
12 | ],
13 | // add your custom rules here
14 | rules: {},
15 | globals: {}
16 | }
17 |
--------------------------------------------------------------------------------
/template/.gitignore:
--------------------------------------------------------------------------------
1 | # dependencies
2 | node_modules
3 |
4 | # logs
5 | npm-debug.log
6 |
7 | # Nuxt build
8 | .nuxt
9 |
10 | # Nuxt generate
11 | dist
12 |
--------------------------------------------------------------------------------
/template/README.md:
--------------------------------------------------------------------------------
1 | # {{ name }}
2 |
3 | > {{ description }}
4 |
5 | ## Build Setup
6 |
7 | ``` bash
8 | # install dependencies
9 | $ npm install # Or yarn install
10 |
11 | # serve with hot reload at localhost:3000
12 | $ npm run dev
13 |
14 | # build for production and launch server
15 | $ npm run build
16 | $ npm start
17 |
18 | # generate static project
19 | $ npm run generate
20 | ```
21 |
22 | For detailed explanation on how things work, checkout the [Nuxt.js docs](https://github.com/nuxt/nuxt.js).
23 |
--------------------------------------------------------------------------------
/template/assets/README.md:
--------------------------------------------------------------------------------
1 | # ASSETS
2 |
3 | This directory contains your un-compiled assets such as LESS, SASS, or JavaScript.
4 |
5 | More information about the usage of this directory in the documentation:
6 | https://nuxtjs.org/guide/assets#webpacked
7 |
8 | **This directory is not required, you can delete it if you don't want to use it.**
9 |
--------------------------------------------------------------------------------
/template/assets/theme.scss:
--------------------------------------------------------------------------------
1 | @import "~vue-material/dist/theme/engine"; // Import the theme engine
2 |
3 | @include md-register-theme("default", (
4 | primary: md-get-palette-color(blue, A200), // The primary color of your application
5 | accent: md-get-palette-color(red, A200) // The accent or secondary color
6 | ));
7 |
8 | @import "~vue-material/dist/theme/all"; // Apply the theme
9 |
--------------------------------------------------------------------------------
/template/components/Logo.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
80 |
--------------------------------------------------------------------------------
/template/components/README.md:
--------------------------------------------------------------------------------
1 | # COMPONENTS
2 |
3 | The components directory contains your Vue.js Components.
4 | Nuxt.js doesn't supercharge these components.
5 |
6 | **This directory is not required, you can delete it if you don't want to use it.**
7 |
--------------------------------------------------------------------------------
/template/layouts/README.md:
--------------------------------------------------------------------------------
1 | # LAYOUTS
2 |
3 | This directory contains your Application Layouts.
4 |
5 | More information about the usage of this directory in the documentation:
6 | https://nuxtjs.org/guide/views#layouts
7 |
8 | **This directory is not required, you can delete it if you don't want to use it.**
9 |
--------------------------------------------------------------------------------
/template/layouts/default.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
53 |
--------------------------------------------------------------------------------
/template/middleware/README.md:
--------------------------------------------------------------------------------
1 | # MIDDLEWARE
2 |
3 | This directory contains your Application Middleware.
4 | The middleware lets you define custom function to be ran before rendering a page or a group of pages (layouts).
5 |
6 | More information about the usage of this directory in the documentation:
7 | https://nuxtjs.org/guide/routing#middleware
8 |
9 | **This directory is not required, you can delete it if you don't want to use it.**
10 |
--------------------------------------------------------------------------------
/template/nuxt.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | /*
3 | ** Headers of the page
4 | */
5 | head: {
6 | title: '{{ name }}',
7 | meta: [
8 | { charset: 'utf-8' },
9 | { name: 'viewport', content: 'width=device-width, initial-scale=1' },
10 | { hid: 'description', name: 'description', content: '{{ description }}' }
11 | ],
12 | link: [
13 | { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' },
14 | { rel: 'stylesheet', href: '//fonts.googleapis.com/css?family=Roboto:100,200,300,400,500,700,400italic|Material+Icons' }
15 | ]
16 | },
17 | /*
18 | ** Customize the progress bar color
19 | */
20 | loading: { color: '#448aff' },
21 | /*
22 | ** Build configuration
23 | */
24 | css: [
25 | { src: 'vue-material/dist/vue-material.min.css', lang: 'css' },
26 | { src: '~/assets/theme.scss', lang: 'scss' } // include vue-material theme engine
27 | ],
28 | plugins: [
29 | { src: '~/plugins/vue-material' }
30 | ],
31 | build: {
32 | /*
33 | ** Run ESLint on save
34 | */
35 | vendor: ['vue-material'],
36 | extend (config, { isDev, isClient }) {
37 | if (isDev && isClient) {
38 | config.module.rules.push({
39 | enforce: 'pre',
40 | test: /\.(js|vue)$/,
41 | loader: 'eslint-loader',
42 | exclude: /(node_modules)/
43 | })
44 | }
45 | }
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/template/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "{{ name }}",
3 | "version": "1.0.0",
4 | "description": "{{ description }}",
5 | "author": "{{ author }}",
6 | "private": true,
7 | "scripts": {
8 | "dev": "nuxt",
9 | "build": "nuxt build",
10 | "start": "nuxt start",
11 | "generate": "nuxt generate",
12 | "lint": "eslint --ext .js,.vue --ignore-path .gitignore .",
13 | "precommit": "npm run lint"
14 | },
15 | "dependencies": {
16 | "nuxt": "^1.0.0",
17 | "vue-material": "latest"
18 | },
19 | "devDependencies": {
20 | "babel-eslint": "^7.2.3",
21 | "eslint": "^4.3.0",
22 | "eslint-config-standard": "^10.2.1",
23 | "eslint-loader": "^1.9.0",
24 | "eslint-plugin-html": "^3.1.1",
25 | "eslint-plugin-import": "^2.7.0",
26 | "eslint-plugin-node": "^5.1.1",
27 | "eslint-plugin-promise": "^3.5.0",
28 | "eslint-plugin-standard": "^3.0.1",
29 | "node-sass": "^4.7.2",
30 | "sass-loader": "^6.0.6"
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/template/pages/README.md:
--------------------------------------------------------------------------------
1 | # PAGES
2 |
3 | This directory contains your Application Views and Routes.
4 | The framework reads all the .vue files inside this directory and create the router of your application.
5 |
6 | More information about the usage of this directory in the documentation:
7 | https://nuxtjs.org/guide/routing
8 |
--------------------------------------------------------------------------------
/template/pages/index.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | {{ name }}
7 |
8 |
9 | {{ description }}
10 |
11 |
15 |
16 |
17 |
18 |
19 |
28 |
29 |
59 |
--------------------------------------------------------------------------------
/template/plugins/README.md:
--------------------------------------------------------------------------------
1 | # PLUGINS
2 |
3 | This directory contains your Javascript plugins that you want to run before instantiating the root vue.js application.
4 |
5 | More information about the usage of this directory in the documentation:
6 | https://nuxtjs.org/guide/plugins
7 |
8 | **This directory is not required, you can delete it if you don't want to use it.**
9 |
--------------------------------------------------------------------------------
/template/plugins/vue-material.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import VueMaterial from 'vue-material'
3 |
4 | Vue.use(VueMaterial)
5 |
--------------------------------------------------------------------------------
/template/static/README.md:
--------------------------------------------------------------------------------
1 | # STATIC
2 |
3 | This directory contains your static files.
4 | Each file inside this directory is mapped to /.
5 |
6 | Example: /static/robots.txt is mapped as /robots.txt.
7 |
8 | More information about the usage of this directory in the documentation:
9 | https://nuxtjs.org/guide/assets#static
10 |
11 | **This directory is not required, you can delete it if you don't want to use it.**
12 |
--------------------------------------------------------------------------------
/template/static/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuematerial/nuxtjs/9948555f3575e69025c9eb478319e1e28ad7cdb5/template/static/favicon.ico
--------------------------------------------------------------------------------
/template/store/README.md:
--------------------------------------------------------------------------------
1 | # STORE
2 |
3 | This directory contains your Vuex Store files.
4 | Vuex Store option is implemented in the Nuxt.js framework.
5 | Creating a index.js file in this directory activate the option in the framework automatically.
6 |
7 | More information about the usage of this directory in the documentation:
8 | https://nuxtjs.org/guide/vuex-store
9 |
10 | **This directory is not required, you can delete it if you don't want to use it.**
11 |
--------------------------------------------------------------------------------