chore: setup nuxt
This commit is contained in:
		
							parent
							
								
									d0bed32b8e
								
							
						
					
					
						commit
						c66e2097b6
					
				
							
								
								
									
										16
									
								
								.babelrc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								.babelrc
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,16 @@ | ||||
| { | ||||
|   "env": { | ||||
|     "test": { | ||||
|       "presets": [ | ||||
|         [ | ||||
|           "@babel/preset-env", | ||||
|           { | ||||
|             "targets": { | ||||
|               "node": "current" | ||||
|             } | ||||
|           } | ||||
|         ] | ||||
|       ] | ||||
|     } | ||||
|   } | ||||
| } | ||||
							
								
								
									
										13
									
								
								.editorconfig
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								.editorconfig
									
									
									
									
									
										Normal file
									
								
							| @ -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 | ||||
							
								
								
									
										17
									
								
								.eslintrc.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								.eslintrc.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,17 @@ | ||||
| module.exports = { | ||||
|   root: true, | ||||
|   env: { | ||||
|     browser: true, | ||||
|     node: true, | ||||
|   }, | ||||
|   extends: [ | ||||
|     '@nuxtjs/eslint-config-typescript', | ||||
|     'prettier', | ||||
|     'prettier/vue', | ||||
|     'plugin:prettier/recommended', | ||||
|     'plugin:nuxt/recommended', | ||||
|   ], | ||||
|   plugins: ['prettier'], | ||||
|   // add your custom rules here
 | ||||
|   rules: {}, | ||||
| } | ||||
							
								
								
									
										32
									
								
								.github/dependabot.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.github/dependabot.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,32 @@ | ||||
| version: 2 | ||||
| updates: | ||||
| # Fetch and update latest `npm` packages | ||||
| - package-ecosystem: npm | ||||
|   directory: '/' | ||||
|   schedule: | ||||
|     interval: daily | ||||
|     time: '00:00' | ||||
|   open-pull-requests-limit: 10 | ||||
|   reviewers: | ||||
|     - corentinth | ||||
|   assignees: | ||||
|     - corentinth | ||||
|   commit-message: | ||||
|     prefix: fix | ||||
|     prefix-development: chore | ||||
|     include: scope | ||||
| # Fetch and update latest `github-actions` pkgs | ||||
| - package-ecosystem: github-actions | ||||
|   directory: '/' | ||||
|   schedule: | ||||
|     interval: daily | ||||
|     time: '00:00' | ||||
|   open-pull-requests-limit: 10 | ||||
|   reviewers: | ||||
|     - corentinth | ||||
|   assignees: | ||||
|     - corentinth | ||||
|   commit-message: | ||||
|     prefix: fix | ||||
|     prefix-development: chore | ||||
|     include: scope | ||||
							
								
								
									
										46
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,46 @@ | ||||
| name: ci | ||||
| 
 | ||||
| on: | ||||
|   push: | ||||
|     branches: | ||||
|       - main | ||||
|       - master | ||||
|   pull_request: | ||||
|     branches: | ||||
|       - main | ||||
|       - master | ||||
| 
 | ||||
| jobs: | ||||
|   ci: | ||||
|     runs-on: ${{ matrix.os }} | ||||
| 
 | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: [ubuntu-latest] | ||||
|         node: [14] | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout 🛎 | ||||
|         uses: actions/checkout@master | ||||
| 
 | ||||
|       - name: Setup node env 🏗 | ||||
|         uses: actions/setup-node@v2.1.2 | ||||
|         with: | ||||
|           node-version: ${{ matrix.node }} | ||||
| 
 | ||||
|       - name: Cache node_modules 📦 | ||||
|         uses: actions/cache@v2 | ||||
|         with: | ||||
|           path: ~/.npm | ||||
|           key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} | ||||
|           restore-keys: | | ||||
|             ${{ runner.os }}-node- | ||||
| 
 | ||||
|       - name: Install dependencies 👨🏻💻 | ||||
|         run: npm ci | ||||
| 
 | ||||
|       - name: Run linter 👀 | ||||
|         run: npm run lint | ||||
| 
 | ||||
|       - name: Run tests 🧪 | ||||
|         run: npm run test | ||||
							
								
								
									
										90
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										90
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,90 @@ | ||||
| # 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 / Editor | ||||
| .idea | ||||
| 
 | ||||
| # Service worker | ||||
| sw.* | ||||
| 
 | ||||
| # macOS | ||||
| .DS_Store | ||||
| 
 | ||||
| # Vim swap files | ||||
| *.swp | ||||
							
								
								
									
										4
									
								
								.prettierrc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								.prettierrc
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,4 @@ | ||||
| { | ||||
|   "semi": false, | ||||
|   "singleQuote": true | ||||
| } | ||||
							
								
								
									
										20
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,20 @@ | ||||
| # it-tools | ||||
| 
 | ||||
| ## Build Setup | ||||
| 
 | ||||
| ```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 run start | ||||
| 
 | ||||
| # generate static project | ||||
| $ npm run generate | ||||
| ``` | ||||
| 
 | ||||
| For detailed explanation on how things work, check out [Nuxt.js docs](https://nuxtjs.org). | ||||
							
								
								
									
										7
									
								
								assets/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								assets/README.md
									
									
									
									
									
										Normal file
									
								
							| @ -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). | ||||
							
								
								
									
										4
									
								
								assets/variables.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								assets/variables.scss
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,4 @@ | ||||
| // Ref: https://github.com/nuxt-community/vuetify-module#customvariables | ||||
| // | ||||
| // The variables you want to modify | ||||
| // $font-size-root: 20px; | ||||
							
								
								
									
										79
									
								
								components/Logo.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										79
									
								
								components/Logo.vue
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,79 @@ | ||||
| <template> | ||||
|   <div class="VueToNuxtLogo"> | ||||
|     <div class="Triangle Triangle--two" /> | ||||
|     <div class="Triangle Triangle--one" /> | ||||
|     <div class="Triangle Triangle--three" /> | ||||
|     <div class="Triangle Triangle--four" /> | ||||
|   </div> | ||||
| </template> | ||||
| 
 | ||||
| <style> | ||||
| .VueToNuxtLogo { | ||||
|   display: inline-block; | ||||
|   animation: turn 2s linear forwards 1s; | ||||
|   transform: rotateX(180deg); | ||||
|   position: relative; | ||||
|   overflow: hidden; | ||||
|   height: 180px; | ||||
|   width: 245px; | ||||
| } | ||||
| 
 | ||||
| .Triangle { | ||||
|   position: absolute; | ||||
|   top: 0; | ||||
|   left: 0; | ||||
|   width: 0; | ||||
|   height: 0; | ||||
| } | ||||
| 
 | ||||
| .Triangle--one { | ||||
|   border-left: 105px solid transparent; | ||||
|   border-right: 105px solid transparent; | ||||
|   border-bottom: 180px solid #41b883; | ||||
| } | ||||
| 
 | ||||
| .Triangle--two { | ||||
|   top: 30px; | ||||
|   left: 35px; | ||||
|   animation: goright 0.5s linear forwards 3.5s; | ||||
|   border-left: 87.5px solid transparent; | ||||
|   border-right: 87.5px solid transparent; | ||||
|   border-bottom: 150px solid #3b8070; | ||||
| } | ||||
| 
 | ||||
| .Triangle--three { | ||||
|   top: 60px; | ||||
|   left: 35px; | ||||
|   animation: goright 0.5s linear forwards 3.5s; | ||||
|   border-left: 70px solid transparent; | ||||
|   border-right: 70px solid transparent; | ||||
|   border-bottom: 120px solid #35495e; | ||||
| } | ||||
| 
 | ||||
| .Triangle--four { | ||||
|   top: 120px; | ||||
|   left: 70px; | ||||
|   animation: godown 0.5s linear forwards 3s; | ||||
|   border-left: 35px solid transparent; | ||||
|   border-right: 35px solid transparent; | ||||
|   border-bottom: 60px solid #fff; | ||||
| } | ||||
| 
 | ||||
| @keyframes turn { | ||||
|   100% { | ||||
|     transform: rotateX(0deg); | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| @keyframes godown { | ||||
|   100% { | ||||
|     top: 180px; | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| @keyframes goright { | ||||
|   100% { | ||||
|     left: 70px; | ||||
|   } | ||||
| } | ||||
| </style> | ||||
							
								
								
									
										7
									
								
								components/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								components/README.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,7 @@ | ||||
| # COMPONENTS | ||||
| 
 | ||||
| **This directory is not required, you can delete it if you don't want to use it.** | ||||
| 
 | ||||
| The components directory contains your Vue.js Components. | ||||
| 
 | ||||
| _Nuxt.js doesn't supercharge these components._ | ||||
							
								
								
									
										18
									
								
								components/VuetifyLogo.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								components/VuetifyLogo.vue
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,18 @@ | ||||
| <template> | ||||
|   <img class="VuetifyLogo" alt="Vuetify Logo" src="/vuetify-logo.svg" /> | ||||
| </template> | ||||
| 
 | ||||
| <style> | ||||
| .VuetifyLogo { | ||||
|   height: 180px; | ||||
|   width: 180px; | ||||
|   transform: rotateY(560deg); | ||||
|   animation: turn 3.5s ease-out forwards 1s; | ||||
| } | ||||
| 
 | ||||
| @keyframes turn { | ||||
|   100% { | ||||
|     transform: rotateY(0deg); | ||||
|   } | ||||
| } | ||||
| </style> | ||||
							
								
								
									
										18
									
								
								jest.config.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								jest.config.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,18 @@ | ||||
| module.exports = { | ||||
|   moduleNameMapper: { | ||||
|     '^@/(.*)$': '<rootDir>/$1', | ||||
|     '^~/(.*)$': '<rootDir>/$1', | ||||
|     '^vue$': 'vue/dist/vue.common.js', | ||||
|   }, | ||||
|   moduleFileExtensions: ['ts', 'js', 'vue', 'json'], | ||||
|   transform: { | ||||
|     '^.+\\.ts$': 'ts-jest', | ||||
|     '^.+\\.js$': 'babel-jest', | ||||
|     '.*\\.(vue)$': 'vue-jest', | ||||
|   }, | ||||
|   collectCoverage: true, | ||||
|   collectCoverageFrom: [ | ||||
|     '<rootDir>/components/**/*.vue', | ||||
|     '<rootDir>/pages/**/*.vue', | ||||
|   ], | ||||
| } | ||||
							
								
								
									
										7
									
								
								layouts/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								layouts/README.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,7 @@ | ||||
| # LAYOUTS | ||||
| 
 | ||||
| **This directory is not required, you can delete it if you don't want to use it.** | ||||
| 
 | ||||
| This directory contains your Application Layouts. | ||||
| 
 | ||||
| More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/views#layouts). | ||||
							
								
								
									
										91
									
								
								layouts/default.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										91
									
								
								layouts/default.vue
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,91 @@ | ||||
| <template> | ||||
|   <v-app dark> | ||||
|     <v-navigation-drawer | ||||
|       v-model="drawer" | ||||
|       :mini-variant="miniVariant" | ||||
|       :clipped="clipped" | ||||
|       fixed | ||||
|       app | ||||
|     > | ||||
|       <v-list> | ||||
|         <v-list-item | ||||
|           v-for="(item, i) in items" | ||||
|           :key="i" | ||||
|           :to="item.to" | ||||
|           router | ||||
|           exact | ||||
|         > | ||||
|           <v-list-item-action> | ||||
|             <v-icon>{{ item.icon }}</v-icon> | ||||
|           </v-list-item-action> | ||||
|           <v-list-item-content> | ||||
|             <v-list-item-title v-text="item.title" /> | ||||
|           </v-list-item-content> | ||||
|         </v-list-item> | ||||
|       </v-list> | ||||
|     </v-navigation-drawer> | ||||
|     <v-app-bar :clipped-left="clipped" fixed app> | ||||
|       <v-app-bar-nav-icon @click.stop="drawer = !drawer" /> | ||||
|       <v-btn icon @click.stop="miniVariant = !miniVariant"> | ||||
|         <v-icon>mdi-{{ `chevron-${miniVariant ? 'right' : 'left'}` }}</v-icon> | ||||
|       </v-btn> | ||||
|       <v-btn icon @click.stop="clipped = !clipped"> | ||||
|         <v-icon>mdi-application</v-icon> | ||||
|       </v-btn> | ||||
|       <v-btn icon @click.stop="fixed = !fixed"> | ||||
|         <v-icon>mdi-minus</v-icon> | ||||
|       </v-btn> | ||||
|       <v-toolbar-title v-text="title" /> | ||||
|       <v-spacer /> | ||||
|       <v-btn icon @click.stop="rightDrawer = !rightDrawer"> | ||||
|         <v-icon>mdi-menu</v-icon> | ||||
|       </v-btn> | ||||
|     </v-app-bar> | ||||
|     <v-main> | ||||
|       <v-container> | ||||
|         <nuxt /> | ||||
|       </v-container> | ||||
|     </v-main> | ||||
|     <v-navigation-drawer v-model="rightDrawer" :right="right" temporary fixed> | ||||
|       <v-list> | ||||
|         <v-list-item @click.native="right = !right"> | ||||
|           <v-list-item-action> | ||||
|             <v-icon light> mdi-repeat </v-icon> | ||||
|           </v-list-item-action> | ||||
|           <v-list-item-title>Switch drawer (click me)</v-list-item-title> | ||||
|         </v-list-item> | ||||
|       </v-list> | ||||
|     </v-navigation-drawer> | ||||
|     <v-footer :absolute="!fixed" app> | ||||
|       <span>© {{ new Date().getFullYear() }}</span> | ||||
|     </v-footer> | ||||
|   </v-app> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| export default { | ||||
|   data() { | ||||
|     return { | ||||
|       clipped: false, | ||||
|       drawer: false, | ||||
|       fixed: false, | ||||
|       items: [ | ||||
|         { | ||||
|           icon: 'mdi-apps', | ||||
|           title: 'Welcome', | ||||
|           to: '/', | ||||
|         }, | ||||
|         { | ||||
|           icon: 'mdi-chart-bubble', | ||||
|           title: 'Inspire', | ||||
|           to: '/inspire', | ||||
|         }, | ||||
|       ], | ||||
|       miniVariant: false, | ||||
|       right: true, | ||||
|       rightDrawer: false, | ||||
|       title: 'Vuetify.js', | ||||
|     } | ||||
|   }, | ||||
| } | ||||
| </script> | ||||
							
								
								
									
										42
									
								
								layouts/error.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								layouts/error.vue
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,42 @@ | ||||
| <template> | ||||
|   <v-app dark> | ||||
|     <h1 v-if="error.statusCode === 404"> | ||||
|       {{ pageNotFound }} | ||||
|     </h1> | ||||
|     <h1 v-else> | ||||
|       {{ otherError }} | ||||
|     </h1> | ||||
|     <NuxtLink to="/"> Home page </NuxtLink> | ||||
|   </v-app> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| export default { | ||||
|   layout: 'empty', | ||||
|   props: { | ||||
|     error: { | ||||
|       type: Object, | ||||
|       default: null, | ||||
|     }, | ||||
|   }, | ||||
|   data() { | ||||
|     return { | ||||
|       pageNotFound: '404 Not Found', | ||||
|       otherError: 'An error occurred', | ||||
|     } | ||||
|   }, | ||||
|   head() { | ||||
|     const title = | ||||
|       this.error.statusCode === 404 ? this.pageNotFound : this.otherError | ||||
|     return { | ||||
|       title, | ||||
|     } | ||||
|   }, | ||||
| } | ||||
| </script> | ||||
| 
 | ||||
| <style scoped> | ||||
| h1 { | ||||
|   font-size: 20px; | ||||
| } | ||||
| </style> | ||||
							
								
								
									
										8
									
								
								middleware/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								middleware/README.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| # MIDDLEWARE | ||||
| 
 | ||||
| **This directory is not required, you can delete it if you don't want to use it.** | ||||
| 
 | ||||
| This directory contains your application middleware. | ||||
| Middleware let you define custom functions that can be run before rendering either a page or a group of pages. | ||||
| 
 | ||||
| More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/routing#middleware). | ||||
							
								
								
									
										71
									
								
								nuxt.config.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										71
									
								
								nuxt.config.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,71 @@ | ||||
| import colors from 'vuetify/es5/util/colors' | ||||
| 
 | ||||
| export default { | ||||
|   // Disable server-side rendering (https://go.nuxtjs.dev/ssr-mode)
 | ||||
|   ssr: false, | ||||
| 
 | ||||
|   // Target (https://go.nuxtjs.dev/config-target)
 | ||||
|   target: 'static', | ||||
| 
 | ||||
|   // Global page headers (https://go.nuxtjs.dev/config-head)
 | ||||
|   head: { | ||||
|     titleTemplate: '%s - it-tools', | ||||
|     title: 'it-tools', | ||||
|     meta: [ | ||||
|       { charset: 'utf-8' }, | ||||
|       { name: 'viewport', content: 'width=device-width, initial-scale=1' }, | ||||
|       { hid: 'description', name: 'description', content: '' }, | ||||
|     ], | ||||
|     link: [{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }], | ||||
|   }, | ||||
| 
 | ||||
|   // Global CSS (https://go.nuxtjs.dev/config-css)
 | ||||
|   css: [], | ||||
| 
 | ||||
|   // Plugins to run before rendering page (https://go.nuxtjs.dev/config-plugins)
 | ||||
|   plugins: [], | ||||
| 
 | ||||
|   // Auto import components (https://go.nuxtjs.dev/config-components)
 | ||||
|   components: true, | ||||
| 
 | ||||
|   // Modules for dev and build (recommended) (https://go.nuxtjs.dev/config-modules)
 | ||||
|   buildModules: [ | ||||
|     // https://go.nuxtjs.dev/typescript
 | ||||
|     '@nuxt/typescript-build', | ||||
|     // https://go.nuxtjs.dev/vuetify
 | ||||
|     '@nuxtjs/vuetify', | ||||
|   ], | ||||
| 
 | ||||
|   // Modules (https://go.nuxtjs.dev/config-modules)
 | ||||
|   modules: [ | ||||
|     // https://go.nuxtjs.dev/axios
 | ||||
|     '@nuxtjs/axios', | ||||
|     // https://go.nuxtjs.dev/pwa
 | ||||
|     '@nuxtjs/pwa', | ||||
|   ], | ||||
| 
 | ||||
|   // Axios module configuration (https://go.nuxtjs.dev/config-axios)
 | ||||
|   axios: {}, | ||||
| 
 | ||||
|   // Vuetify module configuration (https://go.nuxtjs.dev/config-vuetify)
 | ||||
|   vuetify: { | ||||
|     customVariables: ['~/assets/variables.scss'], | ||||
|     theme: { | ||||
|       dark: true, | ||||
|       themes: { | ||||
|         dark: { | ||||
|           primary: colors.blue.darken2, | ||||
|           accent: colors.grey.darken3, | ||||
|           secondary: colors.amber.darken3, | ||||
|           info: colors.teal.lighten1, | ||||
|           warning: colors.amber.base, | ||||
|           error: colors.deepOrange.accent4, | ||||
|           success: colors.green.accent3, | ||||
|         }, | ||||
|       }, | ||||
|     }, | ||||
|   }, | ||||
| 
 | ||||
|   // Build Configuration (https://go.nuxtjs.dev/config-build)
 | ||||
|   build: {}, | ||||
| } | ||||
							
								
								
									
										16980
									
								
								package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										16980
									
								
								package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										41
									
								
								package.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								package.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,41 @@ | ||||
| { | ||||
|   "name": "it-tools", | ||||
|   "version": "1.0.0", | ||||
|   "private": true, | ||||
|   "scripts": { | ||||
|     "dev": "nuxt-ts", | ||||
|     "build": "nuxt-ts build", | ||||
|     "start": "nuxt-ts start", | ||||
|     "generate": "nuxt-ts generate", | ||||
|     "lint:js": "eslint --ext .js,.vue --ignore-path .gitignore .", | ||||
|     "lint": "npm run lint:js", | ||||
|     "test": "jest" | ||||
|   }, | ||||
|   "dependencies": { | ||||
|     "@nuxt/typescript-runtime": "^2.0.0", | ||||
|     "@nuxtjs/axios": "^5.12.2", | ||||
|     "@nuxtjs/pwa": "^3.0.2", | ||||
|     "core-js": "^3.6.5", | ||||
|     "nuxt": "^2.14.6" | ||||
|   }, | ||||
|   "devDependencies": { | ||||
|     "@nuxt/types": "^2.14.6", | ||||
|     "@nuxt/typescript-build": "^2.0.3", | ||||
|     "@nuxtjs/eslint-config": "^3.1.0", | ||||
|     "@nuxtjs/eslint-config-typescript": "^3.0.0", | ||||
|     "@nuxtjs/eslint-module": "^2.0.0", | ||||
|     "@nuxtjs/vuetify": "^1.11.2", | ||||
|     "@vue/test-utils": "^1.1.0", | ||||
|     "babel-core": "7.0.0-bridge.0", | ||||
|     "babel-eslint": "^10.1.0", | ||||
|     "babel-jest": "^26.5.0", | ||||
|     "eslint": "^7.10.0", | ||||
|     "eslint-config-prettier": "^6.12.0", | ||||
|     "eslint-plugin-nuxt": "^1.0.0", | ||||
|     "eslint-plugin-prettier": "^3.1.4", | ||||
|     "jest": "^26.5.0", | ||||
|     "prettier": "^2.1.2", | ||||
|     "ts-jest": "^26.4.1", | ||||
|     "vue-jest": "^3.0.4" | ||||
|   } | ||||
| } | ||||
							
								
								
									
										6
									
								
								pages/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								pages/README.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,6 @@ | ||||
| # PAGES | ||||
| 
 | ||||
| This directory contains your Application Views and Routes. | ||||
| The framework reads all the `*.vue` files inside this directory and creates the router of your application. | ||||
| 
 | ||||
| More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/routing). | ||||
							
								
								
									
										93
									
								
								pages/index.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										93
									
								
								pages/index.vue
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,93 @@ | ||||
| <template> | ||||
|   <v-row justify="center" align="center"> | ||||
|     <v-col cols="12" sm="8" md="6"> | ||||
|       <div class="text-center"> | ||||
|         <logo /> | ||||
|         <vuetify-logo /> | ||||
|       </div> | ||||
|       <v-card> | ||||
|         <v-card-title class="headline"> | ||||
|           Welcome to the Vuetify + Nuxt.js template | ||||
|         </v-card-title> | ||||
|         <v-card-text> | ||||
|           <p> | ||||
|             Vuetify is a progressive Material Design component framework for | ||||
|             Vue.js. It was designed to empower developers to create amazing | ||||
|             applications. | ||||
|           </p> | ||||
|           <p> | ||||
|             For more information on Vuetify, check out the | ||||
|             <a | ||||
|               href="https://vuetifyjs.com" | ||||
|               target="_blank" | ||||
|               rel="noopener noreferrer" | ||||
|             > | ||||
|               documentation </a | ||||
|             >. | ||||
|           </p> | ||||
|           <p> | ||||
|             If you have questions, please join the official | ||||
|             <a | ||||
|               href="https://chat.vuetifyjs.com/" | ||||
|               target="_blank" | ||||
|               rel="noopener noreferrer" | ||||
|               title="chat" | ||||
|             > | ||||
|               discord </a | ||||
|             >. | ||||
|           </p> | ||||
|           <p> | ||||
|             Find a bug? Report it on the github | ||||
|             <a | ||||
|               href="https://github.com/vuetifyjs/vuetify/issues" | ||||
|               target="_blank" | ||||
|               rel="noopener noreferrer" | ||||
|               title="contribute" | ||||
|             > | ||||
|               issue board </a | ||||
|             >. | ||||
|           </p> | ||||
|           <p> | ||||
|             Thank you for developing with Vuetify and I look forward to bringing | ||||
|             more exciting features in the future. | ||||
|           </p> | ||||
|           <div class="text-xs-right"> | ||||
|             <em><small>— John Leider</small></em> | ||||
|           </div> | ||||
|           <hr class="my-3" /> | ||||
|           <a | ||||
|             href="https://nuxtjs.org/" | ||||
|             target="_blank" | ||||
|             rel="noopener noreferrer" | ||||
|           > | ||||
|             Nuxt Documentation | ||||
|           </a> | ||||
|           <br /> | ||||
|           <a | ||||
|             href="https://github.com/nuxt/nuxt.js" | ||||
|             target="_blank" | ||||
|             rel="noopener noreferrer" | ||||
|           > | ||||
|             Nuxt GitHub | ||||
|           </a> | ||||
|         </v-card-text> | ||||
|         <v-card-actions> | ||||
|           <v-spacer /> | ||||
|           <v-btn color="primary" nuxt to="/inspire"> Continue </v-btn> | ||||
|         </v-card-actions> | ||||
|       </v-card> | ||||
|     </v-col> | ||||
|   </v-row> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| import Logo from '~/components/Logo.vue' | ||||
| import VuetifyLogo from '~/components/VuetifyLogo.vue' | ||||
| 
 | ||||
| export default { | ||||
|   components: { | ||||
|     Logo, | ||||
|     VuetifyLogo, | ||||
|   }, | ||||
| } | ||||
| </script> | ||||
							
								
								
									
										15
									
								
								pages/inspire.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								pages/inspire.vue
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,15 @@ | ||||
| <template> | ||||
|   <v-row> | ||||
|     <v-col class="text-center"> | ||||
|       <img src="/v.png" alt="Vuetify.js" class="mb-5" /> | ||||
|       <blockquote class="blockquote"> | ||||
|         “First, solve the problem. Then, write the code.” | ||||
|         <footer> | ||||
|           <small> | ||||
|             <em>—John Johnson</em> | ||||
|           </small> | ||||
|         </footer> | ||||
|       </blockquote> | ||||
|     </v-col> | ||||
|   </v-row> | ||||
| </template> | ||||
							
								
								
									
										7
									
								
								plugins/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								plugins/README.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,7 @@ | ||||
| # PLUGINS | ||||
| 
 | ||||
| **This directory is not required, you can delete it if you don't want to use it.** | ||||
| 
 | ||||
| This directory contains Javascript plugins that you want to run before mounting the root Vue.js application. | ||||
| 
 | ||||
| More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/plugins). | ||||
							
								
								
									
										11
									
								
								static/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								static/README.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,11 @@ | ||||
| # STATIC | ||||
| 
 | ||||
| **This directory is not required, you can delete it if you don't want to use it.** | ||||
| 
 | ||||
| This directory contains your static files. | ||||
| Each file inside this directory is mapped to `/`. | ||||
| Thus you'd want to delete this README.md before deploying to production. | ||||
| 
 | ||||
| Example: `/static/robots.txt` is mapped as `/robots.txt`. | ||||
| 
 | ||||
| More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/assets#static). | ||||
							
								
								
									
										
											BIN
										
									
								
								static/favicon.ico
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								static/favicon.ico
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 1.4 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/icon.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								static/icon.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 12 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/v.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								static/v.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 5.5 KiB | 
							
								
								
									
										1
									
								
								static/vuetify-logo.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								static/vuetify-logo.svg
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | ||||
| <svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 87.5 100"><defs><style>.cls-1{fill:#1697f6;}.cls-2{fill:#7bc6ff;}.cls-3{fill:#1867c0;}.cls-4{fill:#aeddff;}</style></defs><title>Artboard 46</title><polyline class="cls-1" points="43.75 0 23.31 0 43.75 48.32"/><polygon class="cls-2" points="43.75 62.5 43.75 100 0 14.58 22.92 14.58 43.75 62.5"/><polyline class="cls-3" points="43.75 0 64.19 0 43.75 48.32"/><polygon class="cls-4" points="64.58 14.58 87.5 14.58 43.75 100 43.75 62.5 64.58 14.58"/></svg> | ||||
| After Width: | Height: | Size: 539 B | 
							
								
								
									
										10
									
								
								store/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								store/README.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,10 @@ | ||||
| # STORE | ||||
| 
 | ||||
| **This directory is not required, you can delete it if you don't want to use it.** | ||||
| 
 | ||||
| This directory contains your Vuex Store files. | ||||
| Vuex Store option is implemented in the Nuxt.js framework. | ||||
| 
 | ||||
| Creating a file in this directory automatically activates the option in the framework. | ||||
| 
 | ||||
| More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/vuex-store). | ||||
							
								
								
									
										9
									
								
								test/Logo.spec.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								test/Logo.spec.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,9 @@ | ||||
| import { mount } from '@vue/test-utils' | ||||
| import Logo from '@/components/Logo.vue' | ||||
| 
 | ||||
| describe('Logo', () => { | ||||
|   test('is a Vue instance', () => { | ||||
|     const wrapper = mount(Logo) | ||||
|     expect(wrapper.vm).toBeTruthy() | ||||
|   }) | ||||
| }) | ||||
							
								
								
									
										36
									
								
								tsconfig.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								tsconfig.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,36 @@ | ||||
| { | ||||
|   "compilerOptions": { | ||||
|     "target": "ES2018", | ||||
|     "module": "ESNext", | ||||
|     "moduleResolution": "Node", | ||||
|     "lib": [ | ||||
|       "ESNext", | ||||
|       "ESNext.AsyncIterable", | ||||
|       "DOM" | ||||
|     ], | ||||
|     "esModuleInterop": true, | ||||
|     "allowJs": true, | ||||
|     "sourceMap": true, | ||||
|     "strict": true, | ||||
|     "noEmit": true, | ||||
|     "experimentalDecorators": true, | ||||
|     "baseUrl": ".", | ||||
|     "paths": { | ||||
|       "~/*": [ | ||||
|         "./*" | ||||
|       ], | ||||
|       "@/*": [ | ||||
|         "./*" | ||||
|       ] | ||||
|     }, | ||||
|     "types": [ | ||||
|       "@types/node", | ||||
|       "@nuxt/types" | ||||
|     ] | ||||
|   }, | ||||
|   "exclude": [ | ||||
|     "node_modules", | ||||
|     ".nuxt", | ||||
|     "dist" | ||||
|   ] | ||||
| } | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user