├── .editorconfig ├── .eslintignore ├── .eslintrc ├── .gitattributes ├── .github ├── FUNDING.yml ├── ISSUE_TEMPLATE │ ├── bug-report.md │ ├── config.yml │ └── feature-request.md ├── PULL_REQUEST_TEMPLATE.md ├── semantic.yml └── workflows │ ├── ci.yml │ └── snapshot.yml ├── .gitignore ├── .husky ├── commit-msg ├── common.sh └── pre-commit ├── .npmrc ├── .stylelintignore ├── .stylelintrc ├── .yarnrc ├── CHANGELOG.md ├── LICENSE ├── README.md ├── ava.config.cjs ├── commitlint.config.js ├── lerna.json ├── package.json ├── packages ├── cna-template │ ├── .npmignore │ ├── CHANGELOG.md │ ├── package.json │ └── template │ │ ├── .editorconfig │ │ ├── README.md │ │ ├── _.eslintrc.js │ │ ├── _.prettierignore │ │ ├── _.prettierrc │ │ ├── _commitlint.config.js │ │ ├── _jsconfig.json │ │ ├── _package.json │ │ ├── _stylelint.config.js │ │ ├── dependabot.yml │ │ ├── frameworks │ │ ├── ant-design-vue │ │ │ ├── package.json │ │ │ └── plugins │ │ │ │ └── antd-ui.js │ │ ├── ava │ │ │ ├── .babelrc │ │ │ ├── ava.config.cjs │ │ │ ├── package.js │ │ │ ├── package.json │ │ │ └── test │ │ │ │ ├── e2e │ │ │ │ └── index.spec.js │ │ │ │ ├── helpers │ │ │ │ └── ava.setup.js │ │ │ │ └── specs │ │ │ │ └── NuxtLogo.spec.js │ │ ├── balm-ui │ │ │ ├── package.json │ │ │ └── plugins │ │ │ │ └── balm-ui.js │ │ ├── bootstrap │ │ │ └── package.json │ │ ├── buefy │ │ │ ├── assets │ │ │ │ └── buefy.png │ │ │ ├── components │ │ │ │ └── Card.vue │ │ │ ├── layouts │ │ │ │ └── default.vue │ │ │ ├── package.json │ │ │ └── pages │ │ │ │ ├── index.vue │ │ │ │ └── inspire.vue │ │ ├── chakra-ui │ │ │ ├── layouts │ │ │ │ └── default.vue │ │ │ ├── package.json │ │ │ └── pages │ │ │ │ └── index.vue │ │ ├── circleci │ │ │ └── .circleci │ │ │ │ └── config.yml │ │ ├── element-ui │ │ │ ├── package.json │ │ │ └── plugins │ │ │ │ └── element-ui.js │ │ ├── github-actions │ │ │ └── .github │ │ │ │ └── workflows │ │ │ │ └── ci.yml │ │ ├── jest │ │ │ ├── .babelrc │ │ │ ├── jest.config.js │ │ │ ├── package.js │ │ │ ├── package.json │ │ │ └── test │ │ │ │ └── NuxtLogo.spec.js │ │ ├── nightwatch │ │ │ ├── nightwatch.conf.js │ │ │ ├── nightwatch_globals.js │ │ │ ├── package.json │ │ │ └── test │ │ │ │ └── e2e │ │ │ │ ├── pageObjects │ │ │ │ └── main.js │ │ │ │ └── specs │ │ │ │ └── index.spec.js │ │ ├── oruga │ │ │ ├── assets │ │ │ │ └── oruga.png │ │ │ ├── package.json │ │ │ └── pages │ │ │ │ └── index.vue │ │ ├── primevue │ │ │ └── package.json │ │ ├── pug │ │ │ ├── package.json │ │ │ └── pages │ │ │ │ └── index.vue │ │ ├── tachyons │ │ │ └── package.json │ │ ├── tailwind │ │ │ └── package.json │ │ ├── travis-ci │ │ │ └── .travis.yml │ │ ├── vant │ │ │ ├── package.json │ │ │ ├── pages │ │ │ │ └── index.vue │ │ │ └── plugins │ │ │ │ └── vant.js │ │ ├── view-ui │ │ │ ├── package.json │ │ │ ├── pages │ │ │ │ └── index.vue │ │ │ └── plugins │ │ │ │ └── view-ui.js │ │ ├── vuetify │ │ │ ├── assets │ │ │ │ └── variables.scss │ │ │ ├── components │ │ │ │ └── VuetifyLogo.vue │ │ │ ├── layouts │ │ │ │ ├── default.vue │ │ │ │ └── error.vue │ │ │ ├── package.json │ │ │ ├── pages │ │ │ │ ├── index.vue │ │ │ │ └── inspire.vue │ │ │ └── static │ │ │ │ ├── v.png │ │ │ │ └── vuetify-logo.svg │ │ ├── webdriverio │ │ │ ├── package.json │ │ │ ├── test │ │ │ │ └── e2e │ │ │ │ │ ├── pageObjects │ │ │ │ │ └── main.page.js │ │ │ │ │ └── specs │ │ │ │ │ └── index.spec.js │ │ │ └── wdio.conf.js │ │ └── windicss │ │ │ ├── package.json │ │ │ └── windi.config.ts │ │ ├── gitignore │ │ ├── nuxt │ │ ├── .husky │ │ │ ├── commit-msg │ │ │ ├── common.sh │ │ │ └── pre-commit │ │ ├── components │ │ │ ├── NuxtLogo.vue │ │ │ └── Tutorial.vue │ │ ├── content │ │ │ └── hello.md │ │ ├── nuxt.config.js │ │ ├── package.js │ │ ├── package.json │ │ ├── pages │ │ │ └── index.vue │ │ ├── static │ │ │ ├── favicon.ico │ │ │ └── icon.png │ │ └── store │ │ │ └── README.md │ │ ├── semantic.yml │ │ └── tsconfig.json └── create-nuxt-app │ ├── .npmignore │ ├── CHANGELOG.md │ ├── lib │ ├── cli.js │ ├── package.js │ ├── prompts.js │ ├── saofile.js │ └── util.js │ ├── package.json │ └── test │ ├── index.test.js │ └── snapshots │ ├── index.test.js.md │ └── index.test.js.snap ├── renovate.json └── yarn.lock /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 2 6 | end_of_line = lf 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | 11 | [*.md] 12 | trim_trailing_whitespace = false 13 | -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | _*.js 2 | node_modules 3 | packages/cna-template/template/nuxt/pages/index.vue 4 | packages/cna-template/template/frameworks/view-ui/pages/index.vue 5 | packages/cna-template/template/frameworks/jest/jest.config.js 6 | -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "extends": [ 3 | "@nuxtjs" 4 | ], 5 | "env": { 6 | "jest/globals": true 7 | }, 8 | "globals": { 9 | "use": true, 10 | "browser": true 11 | }, 12 | "rules": { 13 | "no-console": "off" 14 | }, 15 | "plugins": [ 16 | "jest" 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto 2 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: [nuxt] 2 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug-report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report 3 | about: Report a bug report to help us improve the tool. 4 | title: '' 5 | labels: 'bug' 6 | assignees: '' 7 | 8 | --- 9 | 10 | 12 | 13 | ### Version 14 | create-nuxt-app: 15 | 16 | ### Steps to reproduce 17 | 18 | 19 | ### What is Expected? 20 | 21 | 22 | ### What is actually happening? 23 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: false 2 | contact_links: 3 | - name: GitHub Discussions 4 | url: https://github.com/nuxt/create-nuxt-app/discussions 5 | about: Consider asking questions about the module here. 6 | - name: Nuxt Community Discord 7 | url: https://discord.nuxtjs.org/ 8 | about: Consider asking questions about the module here too. 9 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature-request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea or enhancement for the tool. 4 | title: '' 5 | labels: 'enhancement' 6 | assignees: '' 7 | 8 | --- 9 | 10 | ### Is your feature request related to a problem? Please describe. 11 | 12 | 13 | ### Describe the solution you'd like 14 | 15 | 16 | ### Describe alternatives you've considered 17 | 18 | 19 | ### Additional context 20 | 21 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | ## Types of changes 4 | 5 | - [ ] Bug fix (a non-breaking change which fixes an issue) 6 | - [ ] New feature (a non-breaking change which adds functionality) 7 | - [ ] Breaking change (fix or feature that would cause existing functionality to change) 8 | 9 | 10 | ## Description 11 | 12 | 13 | 14 | 15 | 16 | ## Checklist: 17 | 18 | 19 | 20 | - [ ] My change requires a change to the documentation. 21 | - [ ] I have updated the documentation accordingly. 22 | - [ ] I have added tests to cover my changes (if not applicable, please state why) 23 | -------------------------------------------------------------------------------- /.github/semantic.yml: -------------------------------------------------------------------------------- 1 | # Always validate the PR title 2 | titleOnly: true 3 | -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- 1 | name: ci 2 | 3 | on: 4 | push: 5 | branches: 6 | - master 7 | pull_request: 8 | branches: 9 | - master 10 | 11 | jobs: 12 | ci: 13 | runs-on: ${{ matrix.os }} 14 | if: ${{ github.event_name != 'pull_request' || github.actor != 'renovate[bot]' }} 15 | 16 | strategy: 17 | matrix: 18 | os: [ubuntu-latest, macos-latest, windows-latest] 19 | node: [14, 16, 18] 20 | 21 | steps: 22 | - uses: actions/setup-node@v3 23 | with: 24 | node-version: ${{ matrix.node }} 25 | check-latest: true 26 | 27 | - name: checkout 28 | uses: actions/checkout@master 29 | 30 | - name: cache node_modules 31 | id: cache 32 | uses: actions/cache@v3 33 | with: 34 | path: node_modules 35 | key: ${{ matrix.os }}-node-v${{ matrix.node }}-deps-${{ hashFiles(format('{0}{1}', github.workspace, '/yarn.lock')) }} 36 | 37 | - name: install 38 | if: steps.cache.outputs.cache-hit != 'true' 39 | run: yarn --check-files --frozen-lockfile --non-interactive 40 | 41 | - name: lint 42 | run: yarn lint 43 | 44 | - name: test 45 | run: yarn test 46 | -------------------------------------------------------------------------------- /.github/workflows/snapshot.yml: -------------------------------------------------------------------------------- 1 | name: snapshots 2 | 3 | on: [pull_request] 4 | 5 | jobs: 6 | ci-and-update-snapshots: 7 | runs-on: ubuntu-latest 8 | if: ${{ github.actor == 'renovate[bot]' }} 9 | 10 | steps: 11 | - name: Setup node 12 | uses: actions/setup-node@v3 13 | with: 14 | node-version: latest 15 | 16 | - name: Checkout 17 | uses: actions/checkout@v3 18 | with: 19 | ref: ${{ github.head_ref }} 20 | 21 | - name: Cache node_modules 22 | id: cache 23 | uses: actions/cache@v3 24 | with: 25 | path: node_modules 26 | key: deps-${{ hashFiles(format('{0}{1}', github.workspace, '/yarn.lock')) }} 27 | 28 | - name: Install dependencies 29 | if: steps.cache.outputs.cache-hit != 'true' 30 | run: yarn --frozen-lockfile --non-interactive 31 | 32 | - name: Lint 33 | run: yarn lint 34 | 35 | - name: Test with update-snapshots 36 | run: AVA_FORCE_CI="not-ci" yarn test:snapshot 37 | 38 | - name: Test 39 | run: yarn test 40 | 41 | - name: Commit test snapshots 42 | id: auto-commit-action 43 | uses: stefanzweifel/git-auto-commit-action@v4.15.0 44 | env: 45 | HUSKY: 0 46 | with: 47 | commit_message: "test: update snapshots" 48 | file_pattern: "**/*.snap **/*.md" 49 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Dependencies 2 | node_modules 3 | 4 | # Logs 5 | npm-debug.log 6 | yarn-error.log 7 | 8 | # Coverage 9 | coverage 10 | .nyc_output 11 | 12 | # Editors 13 | .vscode 14 | .idea 15 | 16 | # Misc 17 | .DS_Store 18 | -------------------------------------------------------------------------------- /.husky/commit-msg: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . "$(dirname "$0")/_/husky.sh" 3 | . "$(dirname "$0")/common.sh" 4 | 5 | yarn commitlint --edit $1 6 | -------------------------------------------------------------------------------- /.husky/common.sh: -------------------------------------------------------------------------------- 1 | command_exists () { 2 | command -v "$1" >/dev/null 2>&1 3 | } 4 | 5 | # Workaround for Windows 10, Git Bash and Yarn 6 | if command_exists winpty && test -t 1; then 7 | exec < /dev/tty 8 | fi 9 | -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . "$(dirname "$0")/_/husky.sh" 3 | . "$(dirname "$0")/common.sh" 4 | 5 | yarn lint && yarn test -u && git add ./packages/*/test/snapshots/* 6 | -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | registry=https://registry.npmjs.org 2 | -------------------------------------------------------------------------------- /.stylelintignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | packages/cna-template/template/nuxt/pages/index.vue 3 | packages/cna-template/template/frameworks/view-ui/pages/index.vue 4 | -------------------------------------------------------------------------------- /.stylelintrc: -------------------------------------------------------------------------------- 1 | { 2 | customSyntax: "postcss-html", 3 | "extends": [ 4 | "stylelint-config-standard", 5 | "stylelint-config-recommended-vue" 6 | ] 7 | } 8 | -------------------------------------------------------------------------------- /.yarnrc: -------------------------------------------------------------------------------- 1 | registry "https://registry.npmjs.org" 2 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Log 2 | 3 | All notable changes to this project will be documented in this file. 4 | See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. 5 | 6 | # [5.0.0](https://github.com/nuxt/create-nuxt-app/compare/v4.0.0...v5.0.0) (2022-10-02) 7 | 8 | 9 | ### Bug Fixes 10 | 11 | * **ava:** vue-template-compiler version conflict on require-extension-hooks-vue ([6757cb8](https://github.com/nuxt/create-nuxt-app/commit/6757cb8844a1fd50b3fd7d6efc9711363758f6e5)) 12 | * **deps:** cannot find module issue ([#918](https://github.com/nuxt/create-nuxt-app/issues/918)) ([#919](https://github.com/nuxt/create-nuxt-app/issues/919)) ([d816416](https://github.com/nuxt/create-nuxt-app/commit/d816416e22ac559bdcd20c98510910c157b04eef)) 13 | 14 | 15 | ### chore 16 | 17 | * drop support for Node.js 12 ([9f8b21c](https://github.com/nuxt/create-nuxt-app/commit/9f8b21ccfc9050e57ad8ac4b3c2251fcd27cbce1)) 18 | 19 | 20 | ### Features 21 | 22 | * **template:** support pug template ([#960](https://github.com/nuxt/create-nuxt-app/issues/960)) ([49c7a80](https://github.com/nuxt/create-nuxt-app/commit/49c7a80070c5357b308ddea3fcb24aebd2c1bed9)) 23 | 24 | 25 | ### BREAKING CHANGES 26 | 27 | * minimum Node.js version is 14 28 | 29 | 30 | 31 | 32 | 33 | # [4.0.0](https://github.com/nuxt/create-nuxt-app/compare/v3.7.1...v4.0.0) (2021-12-12) 34 | 35 | 36 | ### Bug Fixes 37 | 38 | * **ava:** revert require-extension-hooks-vue for fixing peer dep error on vue-template-compiler ([4b6247d](https://github.com/nuxt/create-nuxt-app/commit/4b6247d3968668dd045757ca1a08a8ff7f8ae5f9)) 39 | * **axios:** avoid hard-coded base URL localhost:3000, fixes [#641](https://github.com/nuxt/create-nuxt-app/issues/641) ([#830](https://github.com/nuxt/create-nuxt-app/issues/830)) ([93297e5](https://github.com/nuxt/create-nuxt-app/commit/93297e55a142cebb61c09ac1f7f7f3ca68c5a2da)) 40 | * **deps:** add nuxt required deps to root for avoiding hosting issue ([ca5e6b4](https://github.com/nuxt/create-nuxt-app/commit/ca5e6b47db23dc6c4b16a73b98ca1d8d3743b82d)) 41 | * **husky:** revert stdin tty workaround of [#766](https://github.com/nuxt/create-nuxt-app/issues/766) for npm ([#825](https://github.com/nuxt/create-nuxt-app/issues/825)) ([1520453](https://github.com/nuxt/create-nuxt-app/commit/152045398e95dc08e5a38f35d4c8ea7ec1cff266)) 42 | * **nightwatch:** use correct css selector ([f19bc15](https://github.com/nuxt/create-nuxt-app/commit/f19bc15836a9866f499312b40f54a0d90bb632cc)) 43 | * **primevue:** fix primevue nuxt module name ([c12c1ee](https://github.com/nuxt/create-nuxt-app/commit/c12c1eed9f4b5201bc5e785813ae7f1bbada5e3f)) 44 | * **stylelint:** unknown word on scss file ([9461143](https://github.com/nuxt/create-nuxt-app/commit/94611434d63fc334260592c2e25b06a1169695f4)) 45 | * **vuetify:** update @nuxtjs/vuetify for using sass-loader v10 ([c897e1a](https://github.com/nuxt/create-nuxt-app/commit/c897e1ae60cc646c92749b2ad7c4e5282152609b)) 46 | 47 | 48 | ### chore 49 | 50 | * remove node 10 support ([#905](https://github.com/nuxt/create-nuxt-app/issues/905)) ([a12df38](https://github.com/nuxt/create-nuxt-app/commit/a12df38fccd45103cdc64f770b5a7dca3bab88a8)) 51 | 52 | 53 | ### Features 54 | 55 | * add lintfix and prettier scripts ([#829](https://github.com/nuxt/create-nuxt-app/issues/829)) ([f3e61cd](https://github.com/nuxt/create-nuxt-app/commit/f3e61cdad360e8837c66555b763bf4e29076c8a2)), closes [#827](https://github.com/nuxt/create-nuxt-app/issues/827) 56 | * add primevue ui framework ([#859](https://github.com/nuxt/create-nuxt-app/issues/859)) ([0fa8a67](https://github.com/nuxt/create-nuxt-app/commit/0fa8a67317491e0543799b07fdee58c70eef1545)) 57 | * **cli:** add user-friendly exit for unknown options ([#854](https://github.com/nuxt/create-nuxt-app/issues/854)) ([b734105](https://github.com/nuxt/create-nuxt-app/commit/b73410519234c3ce3b97e5032d78d5e235b6b8f9)) 58 | * **frameworks:** remove framevuerk ([#904](https://github.com/nuxt/create-nuxt-app/issues/904)) ([c54809d](https://github.com/nuxt/create-nuxt-app/commit/c54809d1b0553bc0b942f9393714284df4b911f9)) 59 | 60 | 61 | ### BREAKING CHANGES 62 | 63 | * minimum node version is 12 64 | 65 | 66 | 67 | 68 | 69 | ## [3.7.1](https://github.com/nuxt/create-nuxt-app/compare/v3.7.0...v3.7.1) (2021-06-29) 70 | 71 | 72 | ### Bug Fixes 73 | 74 | * **eslint:** no babel config file detected ([#806](https://github.com/nuxt/create-nuxt-app/issues/806)) ([4ce06e6](https://github.com/nuxt/create-nuxt-app/commit/4ce06e62aa666de9071c69d7fd17439669b55c46)) 75 | 76 | 77 | 78 | 79 | 80 | # [3.7.0](https://github.com/nuxt/create-nuxt-app/compare/v3.6.0...v3.7.0) (2021-06-27) 81 | 82 | 83 | ### Bug Fixes 84 | 85 | * **cli:** rephrase not empty directory error message ([#778](https://github.com/nuxt/create-nuxt-app/issues/778)) ([8186168](https://github.com/nuxt/create-nuxt-app/commit/81861685b08cdb3887fcf30f3708b387b0e1f017)) 86 | * **cna-template:** use npx to invoke locally installed binaries ([#774](https://github.com/nuxt/create-nuxt-app/issues/774)) ([a9844ee](https://github.com/nuxt/create-nuxt-app/commit/a9844eec09262138f364e03aa4165bf580f6fc8a)) 87 | * **husky:** stdin is not a tty in git bash ([#766](https://github.com/nuxt/create-nuxt-app/issues/766)) ([807546d](https://github.com/nuxt/create-nuxt-app/commit/807546d65f107378c15503c5f1585b9131a7e469)) 88 | * **jest:** jest 27 changed the default test environment to node ([8c27b44](https://github.com/nuxt/create-nuxt-app/commit/8c27b44ade0b3750cacc3a31f2c8934f6d80f515)) 89 | * **template:** nodemismatch error in ios safari ([#770](https://github.com/nuxt/create-nuxt-app/issues/770)) ([41463d1](https://github.com/nuxt/create-nuxt-app/commit/41463d16912e0026ac533cb0b8441cb7a9e5c8b8)) 90 | * **template:** update vant template demo ([#776](https://github.com/nuxt/create-nuxt-app/issues/776)) ([de45005](https://github.com/nuxt/create-nuxt-app/commit/de45005e276ce2882b4294dbb3cb40504228cb45)) 91 | * **templates:** remove not being maintained vuesax ([#795](https://github.com/nuxt/create-nuxt-app/issues/795)) ([e7211b3](https://github.com/nuxt/create-nuxt-app/commit/e7211b3c1d2a683c2376cfa8f2437555ccf526c7)) 92 | * **templates:** remove not recommended eslint-plugin-prettier ([#797](https://github.com/nuxt/create-nuxt-app/issues/797)) ([5d8c498](https://github.com/nuxt/create-nuxt-app/commit/5d8c49878c98cc2842b65fa8edaa201d9d3bc0aa)) 93 | * **templates:** use PascalCase component names in single-file components ([ed17e67](https://github.com/nuxt/create-nuxt-app/commit/ed17e67e1499a69f9c6eb364c0df6b64cd5a2a19)) 94 | * add vuetify to dependencies ([#787](https://github.com/nuxt/create-nuxt-app/issues/787)) ([3610d12](https://github.com/nuxt/create-nuxt-app/commit/3610d123fb9f2725bf7fd9c15137568159240c6d)) 95 | 96 | 97 | ### Features 98 | 99 | * **create-nuxt-app:** add --overwrite-dir flag ([#799](https://github.com/nuxt/create-nuxt-app/issues/799)) ([e45bdbb](https://github.com/nuxt/create-nuxt-app/commit/e45bdbb433fbb8d242630f8062dc5d76c65f8f2f)) 100 | * update design ([#792](https://github.com/nuxt/create-nuxt-app/issues/792)) ([b7d2db9](https://github.com/nuxt/create-nuxt-app/commit/b7d2db9f10ff2bb1fedbe65800f1ac43cb84fad1)) 101 | * **template:** update to husky v6 ([#715](https://github.com/nuxt/create-nuxt-app/issues/715)) ([5ee3feb](https://github.com/nuxt/create-nuxt-app/commit/5ee3feb3dd9ae776f335d835c93ad9f609344a8b)) 102 | 103 | 104 | ### Performance Improvements 105 | 106 | * use npm ci instead of npm i in GH Action Workflow ([#762](https://github.com/nuxt/create-nuxt-app/issues/762)) ([8c9b77d](https://github.com/nuxt/create-nuxt-app/commit/8c9b77deb7ef64f5a4b7a484c4a9e3ef4d0a3208)) 107 | 108 | 109 | 110 | 111 | 112 | # [3.6.0](https://github.com/nuxt/create-nuxt-app/compare/v3.5.2...v3.6.0) (2021-03-19) 113 | 114 | 115 | ### Bug Fixes 116 | 117 | * **prompts:** change JAMstack to Jamstack ([#742](https://github.com/nuxt/create-nuxt-app/issues/742)) ([904a26f](https://github.com/nuxt/create-nuxt-app/commit/904a26fad2a584fc722cda62ecc04dafe3a4ead4)) 118 | * Oruga packagePatterns in renovate.json ([#734](https://github.com/nuxt/create-nuxt-app/issues/734)) ([236a5e0](https://github.com/nuxt/create-nuxt-app/commit/236a5e037e9a34e3c9c3842672509f65b31dda23)) 119 | * **ts:** remove @nuxt/typescript-runtime ([#721](https://github.com/nuxt/create-nuxt-app/issues/721)) ([cbd58dc](https://github.com/nuxt/create-nuxt-app/commit/cbd58dc3242c90668f771d9d68bc5e48606a4274)) 120 | * **ui:** add index page for vant ([cf2461b](https://github.com/nuxt/create-nuxt-app/commit/cf2461b5159c5cf4accfd90d01ffa2d89b5830fc)) 121 | * **vuesax:** add boxicons ([#722](https://github.com/nuxt/create-nuxt-app/issues/722)) ([d121169](https://github.com/nuxt/create-nuxt-app/commit/d12116967a7bed3d96d4543bdd56561c4126e72c)) 122 | * update sao link ([#707](https://github.com/nuxt/create-nuxt-app/issues/707)) ([3f548e5](https://github.com/nuxt/create-nuxt-app/commit/3f548e5de4a6fec4be2b987795b1a5bf29da4b4e)) 123 | 124 | 125 | ### Features 126 | 127 | * Add CircleCI and Travis CI ([#737](https://github.com/nuxt/create-nuxt-app/issues/737)) ([1cfe0d4](https://github.com/nuxt/create-nuxt-app/commit/1cfe0d4b161593db986995bb2e677700ac83f457)) 128 | * Add nuxt windicss. ([#753](https://github.com/nuxt/create-nuxt-app/issues/753)) ([a0da946](https://github.com/nuxt/create-nuxt-app/commit/a0da9468f0f95b4577e1dbbc7bb303396d99c1b8)) 129 | * add vant ui framework ([#710](https://github.com/nuxt/create-nuxt-app/issues/710)) ([37bfea3](https://github.com/nuxt/create-nuxt-app/commit/37bfea3a7f16e2e92941053b8bff40e5ed414abf)) 130 | * update @nuxtjs/tailwindcss to v4 ([#751](https://github.com/nuxt/create-nuxt-app/issues/751)) ([691bd8a](https://github.com/nuxt/create-nuxt-app/commit/691bd8a1d2cbcc3807c7b2acb19f7369216bd579)) 131 | * update iview to viewui ([#714](https://github.com/nuxt/create-nuxt-app/issues/714)) ([43da555](https://github.com/nuxt/create-nuxt-app/commit/43da55582dc87bb1a1f80747b70181bc6f5fb174)) 132 | * upgrade @oruga-ui/oruga to version 0.3.3 ([#717](https://github.com/nuxt/create-nuxt-app/issues/717)) ([77f948c](https://github.com/nuxt/create-nuxt-app/commit/77f948cca6e3eab3c16e7ed8ed8b1539a726fb27)) 133 | 134 | 135 | 136 | 137 | 138 | ## [3.5.2](https://github.com/nuxt/create-nuxt-app/compare/v3.5.1...v3.5.2) (2021-01-28) 139 | 140 | **Note:** Version bump only for package create-nuxt-app 141 | 142 | 143 | 144 | 145 | 146 | ## [3.5.1](https://github.com/nuxt/create-nuxt-app/compare/v3.5.0...v3.5.1) (2021-01-28) 147 | 148 | 149 | ### Bug Fixes 150 | 151 | * **types:** include @nuxtjs/axios types ([#691](https://github.com/nuxt/create-nuxt-app/issues/691)) ([c4680b0](https://github.com/nuxt/create-nuxt-app/commit/c4680b0018edefdd5de0a771858faa83c7d43b37)) 152 | * **ui:** remove @nuxtjs/bulma ([#695](https://github.com/nuxt/create-nuxt-app/issues/695)) ([371bb59](https://github.com/nuxt/create-nuxt-app/commit/371bb5999acaf68bf29acc994ded130bd6c0c9ce)) 153 | 154 | 155 | 156 | 157 | 158 | # [3.5.0](https://github.com/nuxt/create-nuxt-app/compare/v3.4.0...v3.5.0) (2021-01-17) 159 | 160 | 161 | ### Bug Fixes 162 | 163 | * **link:** add eslint-plugin-vue to devDependency ([7cef146](https://github.com/nuxt/create-nuxt-app/commit/7cef1461933464294857ebad31ea0574d2f23e29)) 164 | * **lint:** use double quotes for glob syntax ([#684](https://github.com/nuxt/create-nuxt-app/issues/684)) ([2e1aff8](https://github.com/nuxt/create-nuxt-app/commit/2e1aff819eac10e7a18588917b06ec5bc611e968)) 165 | * **template:** htmlAttrs typo ([af72313](https://github.com/nuxt/create-nuxt-app/commit/af723137760844299545209973cc237191aba2a8)) 166 | * **types:** add nuxt content support for typescript ([#688](https://github.com/nuxt/create-nuxt-app/issues/688)) ([ecbc960](https://github.com/nuxt/create-nuxt-app/commit/ecbc9607126bc11e82850a959ac463a61694bda4)) 167 | * e2e tests are configured with project's nuxt.config ([#670](https://github.com/nuxt/create-nuxt-app/issues/670)) ([be14839](https://github.com/nuxt/create-nuxt-app/commit/be14839914ccb3b15b5f9ad7a68d8784fd9d8327)) 168 | 169 | 170 | ### Features 171 | 172 | * add BalmUI to UI framework ([#636](https://github.com/nuxt/create-nuxt-app/issues/636)) ([d57c992](https://github.com/nuxt/create-nuxt-app/commit/d57c992b966f2ff0c70cfbfb2eac95c5a4ed65d9)) 173 | * **pwa:** add default language to nuxt.config ([#653](https://github.com/nuxt/create-nuxt-app/issues/653)) ([31dd1a3](https://github.com/nuxt/create-nuxt-app/commit/31dd1a39bb134738a04de93961e6dea16807ef8f)) 174 | * add Nightwatch.js as test framework option ([#572](https://github.com/nuxt/create-nuxt-app/issues/572)) ([75985e4](https://github.com/nuxt/create-nuxt-app/commit/75985e47a841fe8898f6f17b265fe6566984db8e)) 175 | * add Oruga as UI framework option ([#635](https://github.com/nuxt/create-nuxt-app/issues/635)) ([b6facaf](https://github.com/nuxt/create-nuxt-app/commit/b6facaf6383c30699879f7b5e4e2433bf22adfa7)) 176 | * add route page and content fetch ([#632](https://github.com/nuxt/create-nuxt-app/issues/632)) ([d045b20](https://github.com/nuxt/create-nuxt-app/commit/d045b200e69983b56a5ebc679fd35f7c00ea07da)) 177 | * don't install @nuxtjs/eslint-config and @nuxtjs/eslint-config-typescript together ([#633](https://github.com/nuxt/create-nuxt-app/issues/633)) ([60795d1](https://github.com/nuxt/create-nuxt-app/commit/60795d152992b68cd833530068b4549e132ecc19)) 178 | 179 | 180 | 181 | 182 | 183 | # [3.4.0](https://github.com/nuxt/create-nuxt-app/compare/v3.3.0...v3.4.0) (2020-10-06) 184 | 185 | 186 | ### Bug Fixes 187 | 188 | * **vuetify:** updated layout to be on par with vuetify 2.x ([#619](https://github.com/nuxt/create-nuxt-app/issues/619)) ([4ceb4c1](https://github.com/nuxt/create-nuxt-app/commit/4ceb4c176d9a829d67485e1a099001f7b743ea60)) 189 | 190 | 191 | ### Features 192 | 193 | * add GitHub Action out-of-the-box ([#621](https://github.com/nuxt/create-nuxt-app/issues/621)) ([ad67d2f](https://github.com/nuxt/create-nuxt-app/commit/ad67d2f4dbd01a08be7d01056e626d26c03e0951)) 194 | 195 | 196 | 197 | 198 | 199 | # [3.3.0](https://github.com/nuxt/create-nuxt-app/compare/v3.2.0...v3.3.0) (2020-09-17) 200 | 201 | 202 | ### Bug Fixes 203 | 204 | * **template:** bump typescript packages versions ([#599](https://github.com/nuxt/create-nuxt-app/issues/599)) ([b00e836](https://github.com/nuxt/create-nuxt-app/commit/b00e836b43cd8f0d7cb459be59c227efc3503cd3)) 205 | * eslint issue with ava ([#595](https://github.com/nuxt/create-nuxt-app/issues/595)) ([f77d6bd](https://github.com/nuxt/create-nuxt-app/commit/f77d6bd4d361644fc4d4006ecff87f5d7cc93a56)) 206 | * updated layout to be in par with vuetify 2.x ([#597](https://github.com/nuxt/create-nuxt-app/issues/597)) ([4d404ff](https://github.com/nuxt/create-nuxt-app/commit/4d404ff6bb1f9e0c0017a2e83b52ab8f68bf4051)) 207 | 208 | 209 | ### Features 210 | 211 | * add commitlint as linting tools option ([#592](https://github.com/nuxt/create-nuxt-app/issues/592)) ([33817a8](https://github.com/nuxt/create-nuxt-app/commit/33817a8bfcc4162e32030de4232defd1f99b0c33)) 212 | * add support for dependabot ([#604](https://github.com/nuxt/create-nuxt-app/issues/604)) ([80e04e9](https://github.com/nuxt/create-nuxt-app/commit/80e04e9644ea26b2b7243d3cdb5ee968bb57c511)) 213 | * prompt for git ([#596](https://github.com/nuxt/create-nuxt-app/issues/596)) ([ec431e8](https://github.com/nuxt/create-nuxt-app/commit/ec431e8291044c537e3bd0a321b5e516c2ec5a0c)) 214 | * use `core-js@3` by default ([#594](https://github.com/nuxt/create-nuxt-app/issues/594)) ([146a312](https://github.com/nuxt/create-nuxt-app/commit/146a3122a20dd235608a1f513ec3e83ecae1aa40)) 215 | 216 | 217 | 218 | 219 | 220 | # [3.2.0](https://github.com/nuxt/create-nuxt-app/compare/v3.1.0...v3.2.0) (2020-07-27) 221 | 222 | 223 | ### Bug Fixes 224 | 225 | * **template:** fix package.json dev script for typescript ([#568](https://github.com/nuxt/create-nuxt-app/issues/568)) ([1f64e5a](https://github.com/nuxt/create-nuxt-app/commit/1f64e5afbb973422a34c7a64252cea9a3411664c)) 226 | * show up an appropriate warning if the target path exists and is non-empty ([#570](https://github.com/nuxt/create-nuxt-app/issues/570)) ([21d6729](https://github.com/nuxt/create-nuxt-app/commit/21d6729c64e608bf53d87868b372d2e0d1041587)) 227 | * **vuetify:** v-content is deprecated ([f547654](https://github.com/nuxt/create-nuxt-app/commit/f547654c4b478a2c59aa1ed49867da9251202a9a)) 228 | 229 | 230 | ### Features 231 | 232 | * **template:** update typescript ([#567](https://github.com/nuxt/create-nuxt-app/issues/567)) ([251c50d](https://github.com/nuxt/create-nuxt-app/commit/251c50d7589dd2568252ebedefebda9779eca33f)) 233 | * add chakra-ui-vue ([#573](https://github.com/nuxt/create-nuxt-app/issues/573)) ([c9ede63](https://github.com/nuxt/create-nuxt-app/commit/c9ede63abdad60462fd3280fbd211a857e8fe1e8)) 234 | 235 | 236 | 237 | 238 | 239 | # [3.1.0](https://github.com/nuxt/create-nuxt-app/compare/v3.0.0...v3.1.0) (2020-06-22) 240 | 241 | 242 | ### Features 243 | 244 | * prepare for Nuxt 2.13 ([#529](https://github.com/nuxt/create-nuxt-app/issues/529)) ([47aa7c1](https://github.com/nuxt/create-nuxt-app/commit/47aa7c1eaf743118bb0b0d8fca78ed58bfe30b05)), closes [#509](https://github.com/nuxt/create-nuxt-app/issues/509) [#513](https://github.com/nuxt/create-nuxt-app/issues/513) [#544](https://github.com/nuxt/create-nuxt-app/issues/544) [#547](https://github.com/nuxt/create-nuxt-app/issues/547) [#540](https://github.com/nuxt/create-nuxt-app/issues/540) [#541](https://github.com/nuxt/create-nuxt-app/issues/541) 245 | 246 | 247 | 248 | 249 | 250 | # [3.0.0](https://github.com/nuxt/create-nuxt-app/compare/v2.16.0...v3.0.0) (2020-06-18) 251 | 252 | 253 | ### Bug Fixes 254 | 255 | * **ava:** expect vm truthy as vue instance assertion ([46594db](https://github.com/nuxt/create-nuxt-app/commit/46594dbb35eefe4684adb3eb1a3f6b647d7c9850)) 256 | * **jest:** downgrate vue-jest to v3 ([8a75b51](https://github.com/nuxt/create-nuxt-app/commit/8a75b51986ff7aa5dd4fb4135b5991b723594f89)) 257 | * **prettier:** add stylelint-config-prettier ([50aa285](https://github.com/nuxt/create-nuxt-app/commit/50aa2851f80fc177add7185d485758dceca29d7d)) 258 | 259 | 260 | ### Features 261 | 262 | * **template:** remove dotenv module ([#544](https://github.com/nuxt/create-nuxt-app/issues/544)) ([ba93891](https://github.com/nuxt/create-nuxt-app/commit/ba938913bab21a96f29678c91897a6294003f32d)) 263 | * add content module ([#540](https://github.com/nuxt/create-nuxt-app/issues/540)) ([9aba2f6](https://github.com/nuxt/create-nuxt-app/commit/9aba2f692e716e7e0e027cca447fa2c260df2a40)) 264 | 265 | 266 | 267 | 268 | 269 | # [2.16.0](https://github.com/nuxt/create-nuxt-app/compare/v2.15.0...v2.16.0) (2020-05-18) 270 | 271 | 272 | ### Bug Fixes 273 | 274 | * update snapshots ([b5fd723](https://github.com/nuxt/create-nuxt-app/commit/b5fd723f40c27489838984aba45ed15b58a100c8)) 275 | * **lint:** disable eslint nuxt.config.js extend line ([#491](https://github.com/nuxt/create-nuxt-app/issues/491)) ([a7d3142](https://github.com/nuxt/create-nuxt-app/commit/a7d3142b8374338aa8e0a9aabe77fc030f4b1b93)) 276 | * update prompts to add static in universal ([#462](https://github.com/nuxt/create-nuxt-app/issues/462)) ([71d84b1](https://github.com/nuxt/create-nuxt-app/commit/71d84b16a57147f159ce0c858a0b7bfa757d7a4b)) 277 | * update snapshots ([2b26088](https://github.com/nuxt/create-nuxt-app/commit/2b26088546a4de0de4adae177ebf5749a2825cc7)) 278 | * **ava:** e2e test hangs until timeout ([8393524](https://github.com/nuxt/create-nuxt-app/commit/8393524cd99db4847c339fac5e594419cba7f6bb)) 279 | * **lint-staged:** run eslint only for staged files ([9133954](https://github.com/nuxt/create-nuxt-app/commit/91339542f6cb249e3ef3abe2445227a15d58480d)) 280 | * vuetify footer fixed attribute toggling ([dae1734](https://github.com/nuxt/create-nuxt-app/commit/dae17340f5a3b905aad655a622d6bab21aacbafe)) 281 | 282 | 283 | ### Features 284 | 285 | * add WebdriverIO as test framework option ([#528](https://github.com/nuxt/create-nuxt-app/issues/528)) ([9a1497f](https://github.com/nuxt/create-nuxt-app/commit/9a1497f04e446a3b91b3eed1fef6273ad717b2f0)) 286 | * **deps:** update eslint to v7 ([916f288](https://github.com/nuxt/create-nuxt-app/commit/916f2887052d97272ed25c5f339a21286520e95b)) 287 | * **lint:** add stylelint-config-standard and separate lint scripts ([#493](https://github.com/nuxt/create-nuxt-app/issues/493)) ([8034d68](https://github.com/nuxt/create-nuxt-app/commit/8034d68109231b62e134f1fa06eb1ae72f9fd8ed)) 288 | * **server:** upgrade fastify to v2 ([952230b](https://github.com/nuxt/create-nuxt-app/commit/952230b1227da7b05182667385eaabc4e3127281)) 289 | * **template:** remove author and description from prompt ([#466](https://github.com/nuxt/create-nuxt-app/issues/466)) ([1d7d0c4](https://github.com/nuxt/create-nuxt-app/commit/1d7d0c4cdfdf8d2a04fd7afb12937bb3fcf61472)) 290 | * **templates:** deprecate server templates ([#501](https://github.com/nuxt/create-nuxt-app/issues/501)) ([c60f39e](https://github.com/nuxt/create-nuxt-app/commit/c60f39e9fee49bcd4306217ec732b45d9d706c27)) 291 | * migrate to monorepo ([#458](https://github.com/nuxt/create-nuxt-app/issues/458)) ([64991bb](https://github.com/nuxt/create-nuxt-app/commit/64991bba05b208e5078c8101c5adac55f2100ff2)) 292 | * minimum required nodejs version is 10.20.0 ([33fbf49](https://github.com/nuxt/create-nuxt-app/commit/33fbf49aabd27fae7b4ee4e23e2e3a14357b137c)) 293 | * **template:** support package.json and handler ([#467](https://github.com/nuxt/create-nuxt-app/issues/467)) ([ff37dc8](https://github.com/nuxt/create-nuxt-app/commit/ff37dc85672f55b2441ef6612b5917ca0b32b4f5)) 294 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) Nuxt.js Team , @clarkdo & @egoist <0x142857@gmail.com> (https://egoist.moe) 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 13 | all 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 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # 🚧 Repository update 🚧 2 | 3 | The repository for `create-nuxt-app` has updated to be https://github.com/nuxt/cli - please raise new issues, discussions and pull requests there 🙏 4 | 5 |
6 | 7 | # Create Nuxt App 8 | 9 | [![NPM version](https://img.shields.io/npm/v/create-nuxt-app.svg?style=flat)](https://npmjs.com/package/create-nuxt-app) 10 | [![NPM downloads](https://img.shields.io/npm/dm/create-nuxt-app.svg?style=flat)](https://npmjs.com/package/create-nuxt-app) 11 | [![GitHub Action](https://github.com/nuxt/create-nuxt-app/workflows/ci/badge.svg?branch=master)](https://github.com/nuxt/create-nuxt-app/actions?query=branch%3Amaster++) 12 | 13 | > Create a [Nuxt.js](https://nuxtjs.org) project in seconds 14 | 15 | ## Usage 16 | 17 | Make sure you have [npx](https://www.npmjs.com/package/npx) installed (`npx` is shipped by default since [npm](https://www.npmjs.com/get-npm) `5.2.0`) 18 | 19 | ```bash 20 | npx create-nuxt-app 21 | ``` 22 | 23 | Or starting with npm v6.1 you can do: 24 | 25 | ```bash 26 | npm init nuxt-app@latest 27 | ``` 28 | 29 | Or with [yarn](https://yarnpkg.com/en/): 30 | 31 | ```bash 32 | yarn create nuxt-app 33 | ``` 34 | 35 | ## Features :tada: 36 | 37 | 1. Package manager 38 | - Yarn 39 | - Npm 40 | 1. Programming language 41 | - JavaScript 42 | - TypeScript 43 | 1. UI framework: 44 | - None (feel free to add one later) 45 | - [Ant Design Vue](https://github.com/vueComponent/ant-design-vue) 46 | - [BalmUI](https://material.balmjs.com/) 47 | - [Bootstrap](https://github.com/bootstrap-vue/bootstrap-vue) 48 | - [Buefy](https://buefy.org) 49 | - [Chakra UI](https://github.com/chakra-ui/chakra-ui-vue) 50 | - [Element](https://github.com/ElemeFE/element) 51 | - [Oruga](https://oruga.io/) 52 | - [Primevue/](https://www.primefaces.org/primevue/) 53 | - [Tachyons](https://github.com/tachyons-css/tachyons) 54 | - [Tailwind CSS](https://github.com/tailwindcss/tailwindcss) 55 | - [Windi CSS](https://github.com/windicss/windicss) 56 | - [Vant](https://github.com/youzan/vant) 57 | - [View UI](https://www.iviewui.com/) 58 | - [Vuetify](https://github.com/vuetifyjs/vuetify) 59 | 1. Template engine 60 | - HTML 61 | - Pug 62 | 1. Nuxt.js modules: 63 | - [Axios - Promise based HTTP client](https://github.com/nuxt-community/axios-module) 64 | - [Progressive Web App (PWA)](https://github.com/nuxt-community/pwa-module) 65 | - [Content - Git-based headless CMS](https://github.com/nuxt/content) 66 | 1. Linting tools: 67 | - [ESLint](https://github.com/nuxt/eslint-config) 68 | - [Prettier](https://github.com/prettier/prettier) 69 | - [Lint staged files](https://github.com/okonet/lint-staged) 70 | - [StyleLint](https://github.com/stylelint/stylelint) 71 | - [Commitlint](https://github.com/conventional-changelog/commitlint) 72 | 1. Testing framework: 73 | - None 74 | - [Jest](https://github.com/facebook/jest) 75 | - [AVA](https://github.com/avajs/ava) 76 | - [WebdriverIO](https://webdriver.io) 77 | - [Nightwatch](https://nightwatchjs.org) 78 | 1. Rendering mode 79 | - [Universal (SSR / Static)](https://nuxtjs.org/docs/features/rendering-modes#server-side-rendered-sites-and-static-sites) 80 | - [SPA](https://nuxtjs.org/docs/features/rendering-modes#client-side-rendering-only) 81 | 1. Deployment target 82 | - [Server (Node.js hosting)](https://nuxtjs.org/docs/configuration-glossary/configuration-target) 83 | - [Static (Static/JAMStack hosting)](https://nuxtjs.org/docs/configuration-glossary/configuration-target) 84 | 1. Development tools 85 | - [jsconfig.json](https://code.visualstudio.com/docs/languages/jsconfig) 86 | - [Semantic PR](https://probot.github.io/apps/semantic-pull-requests/) 87 | - [Dependabot (for GitHub only)](https://dependabot.com/) 88 | 1. Continuous Integration 89 | - [GitHub Actions](https://github.com/features/actions) 90 | - [Travis CI](https://travis-ci.com) 91 | - [CircleCI](https://circleci.com) 92 | 93 | ## CLI Options 94 | 95 | ### `--edge` 96 | 97 | Alias: `-e`. 98 | 99 | To install [nuxt-edge](https://www.npmjs.com/package/nuxt-edge) instead of [nuxt](https://www.npmjs.com/package/nuxt), add the command line option `--edge`: 100 | 101 | ```bash 102 | npx create-nuxt-app --edge 103 | ``` 104 | 105 | Or 106 | 107 | ```bash 108 | npm init nuxt-app --edge 109 | ``` 110 | 111 | Or 112 | 113 | ```bash 114 | yarn create nuxt-app --edge 115 | ``` 116 | 117 | ### `--info` 118 | 119 | Alias: `-i`. Print out debugging information relating to the local environment and exit. 120 | 121 | ### `--help` 122 | 123 | Alias: `-h`. Show the help information and exit, include: usage, command and all cli options. 124 | 125 | ### `--verbose` 126 | 127 | Show debug logs 128 | 129 | ### `--version` 130 | 131 | Alias: `-v`. Show version number and exit. 132 | 133 | ### `--overwrite-dir` 134 | 135 | Overwrite the target directory. 136 | 137 | ## Credits 138 | 139 | - [egoist](https://github.com/egoist) 140 | - [clarko](https://github.com/clarkdo) 141 | - All our contributors ([list](https://github.com/nuxt/create-nuxt-app/contributors)). 142 | -------------------------------------------------------------------------------- /ava.config.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | ignoredByWatcher: ['!**/*.{js}'], 3 | files: ['./packages/*/test/*.test.js', '!template'], 4 | tap: false, 5 | verbose: true 6 | } 7 | -------------------------------------------------------------------------------- /commitlint.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | extends: ['@commitlint/config-conventional'] 3 | } 4 | -------------------------------------------------------------------------------- /lerna.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "5.0.0", 3 | "npmClient": "yarn", 4 | "useWorkspaces": true, 5 | "packages": [ 6 | "packages/*" 7 | ], 8 | "command": { 9 | "publish": { 10 | "npmClient": "npm" 11 | }, 12 | "version": { 13 | "conventionalCommits": true 14 | } 15 | }, 16 | "changelog": { 17 | "labels": { 18 | "feat": "New Feature", 19 | "fix": "Bug Fix", 20 | "docs": "Documentation", 21 | "perf": "Performance", 22 | "refactor": "Code Refactoring" 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "private": true, 3 | "license": "MIT", 4 | "workspaces": [ 5 | "packages/*" 6 | ], 7 | "homepage": "https://github.com/nuxt/create-nuxt-app#readme", 8 | "repository": { 9 | "url": "https://github.com/nuxt/create-nuxt-app.git", 10 | "type": "git" 11 | }, 12 | "scripts": { 13 | "lint": "yarn lint:js && yarn lint:style", 14 | "lint:js": "eslint --ext \".js,.mjs,.vue\" .", 15 | "lint:style": "stylelint \"**/*.{vue,css,scss}\"", 16 | "test": "ava --verbose", 17 | "test:snapshot": "ava --verbose --update-snapshots", 18 | "prepare": "husky install" 19 | }, 20 | "devDependencies": { 21 | "@commitlint/cli": "^17.1.2", 22 | "@commitlint/config-conventional": "^17.1.0", 23 | "@nuxtjs/eslint-config": "^11.0.0", 24 | "ava": "^4.3.3", 25 | "eslint": "^8.24.0", 26 | "eslint-plugin-jest": "^27.0.4", 27 | "husky": "^8.0.1", 28 | "lerna": "^5.5.4", 29 | "postcss-html": "^1.5.0", 30 | "stylelint": "^14.13.0", 31 | "stylelint-config-recommended-vue": "^1.4.0", 32 | "stylelint-config-standard": "^28.0.0" 33 | }, 34 | "name": "create-nuxt-app" 35 | } 36 | -------------------------------------------------------------------------------- /packages/cna-template/.npmignore: -------------------------------------------------------------------------------- 1 | # Dependencies 2 | node_modules 3 | 4 | # Logs 5 | npm-debug.log 6 | yarn-error.log 7 | 8 | # Coverage 9 | coverage 10 | .nyc_output 11 | 12 | # Editors 13 | .vscode 14 | .idea 15 | 16 | # Misc 17 | .DS_Store 18 | -------------------------------------------------------------------------------- /packages/cna-template/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Log 2 | 3 | All notable changes to this project will be documented in this file. 4 | See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. 5 | 6 | # [5.0.0](https://github.com/nuxt/create-nuxt-app/compare/v4.0.0...v5.0.0) (2022-10-02) 7 | 8 | 9 | ### Bug Fixes 10 | 11 | * **ava:** vue-template-compiler version conflict on require-extension-hooks-vue ([6757cb8](https://github.com/nuxt/create-nuxt-app/commit/6757cb8844a1fd50b3fd7d6efc9711363758f6e5)) 12 | * **deps:** cannot find module issue ([#918](https://github.com/nuxt/create-nuxt-app/issues/918)) ([#919](https://github.com/nuxt/create-nuxt-app/issues/919)) ([d816416](https://github.com/nuxt/create-nuxt-app/commit/d816416e22ac559bdcd20c98510910c157b04eef)) 13 | 14 | 15 | ### Features 16 | 17 | * **template:** support pug template ([#960](https://github.com/nuxt/create-nuxt-app/issues/960)) ([49c7a80](https://github.com/nuxt/create-nuxt-app/commit/49c7a80070c5357b308ddea3fcb24aebd2c1bed9)) 18 | 19 | 20 | 21 | 22 | 23 | # [4.0.0](https://github.com/nuxt/create-nuxt-app/compare/v3.7.1...v4.0.0) (2021-12-12) 24 | 25 | 26 | ### Bug Fixes 27 | 28 | * **ava:** revert require-extension-hooks-vue for fixing peer dep error on vue-template-compiler ([4b6247d](https://github.com/nuxt/create-nuxt-app/commit/4b6247d3968668dd045757ca1a08a8ff7f8ae5f9)) 29 | * **axios:** avoid hard-coded base URL localhost:3000, fixes [#641](https://github.com/nuxt/create-nuxt-app/issues/641) ([#830](https://github.com/nuxt/create-nuxt-app/issues/830)) ([93297e5](https://github.com/nuxt/create-nuxt-app/commit/93297e55a142cebb61c09ac1f7f7f3ca68c5a2da)) 30 | * **deps:** add nuxt required deps to root for avoiding hosting issue ([ca5e6b4](https://github.com/nuxt/create-nuxt-app/commit/ca5e6b47db23dc6c4b16a73b98ca1d8d3743b82d)) 31 | * **husky:** revert stdin tty workaround of [#766](https://github.com/nuxt/create-nuxt-app/issues/766) for npm ([#825](https://github.com/nuxt/create-nuxt-app/issues/825)) ([1520453](https://github.com/nuxt/create-nuxt-app/commit/152045398e95dc08e5a38f35d4c8ea7ec1cff266)) 32 | * **nightwatch:** use correct css selector ([f19bc15](https://github.com/nuxt/create-nuxt-app/commit/f19bc15836a9866f499312b40f54a0d90bb632cc)) 33 | * **primevue:** fix primevue nuxt module name ([c12c1ee](https://github.com/nuxt/create-nuxt-app/commit/c12c1eed9f4b5201bc5e785813ae7f1bbada5e3f)) 34 | * **stylelint:** unknown word on scss file ([9461143](https://github.com/nuxt/create-nuxt-app/commit/94611434d63fc334260592c2e25b06a1169695f4)) 35 | * **vuetify:** update @nuxtjs/vuetify for using sass-loader v10 ([c897e1a](https://github.com/nuxt/create-nuxt-app/commit/c897e1ae60cc646c92749b2ad7c4e5282152609b)) 36 | 37 | 38 | ### Features 39 | 40 | * add lintfix and prettier scripts ([#829](https://github.com/nuxt/create-nuxt-app/issues/829)) ([f3e61cd](https://github.com/nuxt/create-nuxt-app/commit/f3e61cdad360e8837c66555b763bf4e29076c8a2)), closes [#827](https://github.com/nuxt/create-nuxt-app/issues/827) 41 | * add primevue ui framework ([#859](https://github.com/nuxt/create-nuxt-app/issues/859)) ([0fa8a67](https://github.com/nuxt/create-nuxt-app/commit/0fa8a67317491e0543799b07fdee58c70eef1545)) 42 | * **frameworks:** remove framevuerk ([#904](https://github.com/nuxt/create-nuxt-app/issues/904)) ([c54809d](https://github.com/nuxt/create-nuxt-app/commit/c54809d1b0553bc0b942f9393714284df4b911f9)) 43 | 44 | 45 | 46 | 47 | 48 | ## [3.7.1](https://github.com/nuxt/create-nuxt-app/compare/v3.7.0...v3.7.1) (2021-06-29) 49 | 50 | 51 | ### Bug Fixes 52 | 53 | * **eslint:** no babel config file detected ([#806](https://github.com/nuxt/create-nuxt-app/issues/806)) ([4ce06e6](https://github.com/nuxt/create-nuxt-app/commit/4ce06e62aa666de9071c69d7fd17439669b55c46)) 54 | 55 | 56 | 57 | 58 | 59 | # [3.7.0](https://github.com/nuxt/create-nuxt-app/compare/v3.6.0...v3.7.0) (2021-06-27) 60 | 61 | 62 | ### Bug Fixes 63 | 64 | * **cna-template:** use npx to invoke locally installed binaries ([#774](https://github.com/nuxt/create-nuxt-app/issues/774)) ([a9844ee](https://github.com/nuxt/create-nuxt-app/commit/a9844eec09262138f364e03aa4165bf580f6fc8a)) 65 | * **husky:** stdin is not a tty in git bash ([#766](https://github.com/nuxt/create-nuxt-app/issues/766)) ([807546d](https://github.com/nuxt/create-nuxt-app/commit/807546d65f107378c15503c5f1585b9131a7e469)) 66 | * **jest:** jest 27 changed the default test environment to node ([8c27b44](https://github.com/nuxt/create-nuxt-app/commit/8c27b44ade0b3750cacc3a31f2c8934f6d80f515)) 67 | * **template:** nodemismatch error in ios safari ([#770](https://github.com/nuxt/create-nuxt-app/issues/770)) ([41463d1](https://github.com/nuxt/create-nuxt-app/commit/41463d16912e0026ac533cb0b8441cb7a9e5c8b8)) 68 | * **template:** update vant template demo ([#776](https://github.com/nuxt/create-nuxt-app/issues/776)) ([de45005](https://github.com/nuxt/create-nuxt-app/commit/de45005e276ce2882b4294dbb3cb40504228cb45)) 69 | * **templates:** remove not being maintained vuesax ([#795](https://github.com/nuxt/create-nuxt-app/issues/795)) ([e7211b3](https://github.com/nuxt/create-nuxt-app/commit/e7211b3c1d2a683c2376cfa8f2437555ccf526c7)) 70 | * **templates:** remove not recommended eslint-plugin-prettier ([#797](https://github.com/nuxt/create-nuxt-app/issues/797)) ([5d8c498](https://github.com/nuxt/create-nuxt-app/commit/5d8c49878c98cc2842b65fa8edaa201d9d3bc0aa)) 71 | * **templates:** use PascalCase component names in single-file components ([ed17e67](https://github.com/nuxt/create-nuxt-app/commit/ed17e67e1499a69f9c6eb364c0df6b64cd5a2a19)) 72 | * add vuetify to dependencies ([#787](https://github.com/nuxt/create-nuxt-app/issues/787)) ([3610d12](https://github.com/nuxt/create-nuxt-app/commit/3610d123fb9f2725bf7fd9c15137568159240c6d)) 73 | 74 | 75 | ### Features 76 | 77 | * update design ([#792](https://github.com/nuxt/create-nuxt-app/issues/792)) ([b7d2db9](https://github.com/nuxt/create-nuxt-app/commit/b7d2db9f10ff2bb1fedbe65800f1ac43cb84fad1)) 78 | * **template:** update to husky v6 ([#715](https://github.com/nuxt/create-nuxt-app/issues/715)) ([5ee3feb](https://github.com/nuxt/create-nuxt-app/commit/5ee3feb3dd9ae776f335d835c93ad9f609344a8b)) 79 | 80 | 81 | ### Performance Improvements 82 | 83 | * use npm ci instead of npm i in GH Action Workflow ([#762](https://github.com/nuxt/create-nuxt-app/issues/762)) ([8c9b77d](https://github.com/nuxt/create-nuxt-app/commit/8c9b77deb7ef64f5a4b7a484c4a9e3ef4d0a3208)) 84 | 85 | 86 | 87 | 88 | 89 | # [3.6.0](https://github.com/nuxt/create-nuxt-app/compare/v3.5.2...v3.6.0) (2021-03-19) 90 | 91 | 92 | ### Bug Fixes 93 | 94 | * **ts:** remove @nuxt/typescript-runtime ([#721](https://github.com/nuxt/create-nuxt-app/issues/721)) ([cbd58dc](https://github.com/nuxt/create-nuxt-app/commit/cbd58dc3242c90668f771d9d68bc5e48606a4274)) 95 | * **ui:** add index page for vant ([cf2461b](https://github.com/nuxt/create-nuxt-app/commit/cf2461b5159c5cf4accfd90d01ffa2d89b5830fc)) 96 | * **vuesax:** add boxicons ([#722](https://github.com/nuxt/create-nuxt-app/issues/722)) ([d121169](https://github.com/nuxt/create-nuxt-app/commit/d12116967a7bed3d96d4543bdd56561c4126e72c)) 97 | 98 | 99 | ### Features 100 | 101 | * Add CircleCI and Travis CI ([#737](https://github.com/nuxt/create-nuxt-app/issues/737)) ([1cfe0d4](https://github.com/nuxt/create-nuxt-app/commit/1cfe0d4b161593db986995bb2e677700ac83f457)) 102 | * Add nuxt windicss. ([#753](https://github.com/nuxt/create-nuxt-app/issues/753)) ([a0da946](https://github.com/nuxt/create-nuxt-app/commit/a0da9468f0f95b4577e1dbbc7bb303396d99c1b8)) 103 | * add vant ui framework ([#710](https://github.com/nuxt/create-nuxt-app/issues/710)) ([37bfea3](https://github.com/nuxt/create-nuxt-app/commit/37bfea3a7f16e2e92941053b8bff40e5ed414abf)) 104 | * update @nuxtjs/tailwindcss to v4 ([#751](https://github.com/nuxt/create-nuxt-app/issues/751)) ([691bd8a](https://github.com/nuxt/create-nuxt-app/commit/691bd8a1d2cbcc3807c7b2acb19f7369216bd579)) 105 | * update iview to viewui ([#714](https://github.com/nuxt/create-nuxt-app/issues/714)) ([43da555](https://github.com/nuxt/create-nuxt-app/commit/43da55582dc87bb1a1f80747b70181bc6f5fb174)) 106 | * upgrade @oruga-ui/oruga to version 0.3.3 ([#717](https://github.com/nuxt/create-nuxt-app/issues/717)) ([77f948c](https://github.com/nuxt/create-nuxt-app/commit/77f948cca6e3eab3c16e7ed8ed8b1539a726fb27)) 107 | 108 | 109 | 110 | 111 | 112 | ## [3.5.2](https://github.com/nuxt/create-nuxt-app/compare/v3.5.1...v3.5.2) (2021-01-28) 113 | 114 | **Note:** Version bump only for package cna-template 115 | 116 | 117 | 118 | 119 | 120 | ## [3.5.1](https://github.com/nuxt/create-nuxt-app/compare/v3.5.0...v3.5.1) (2021-01-28) 121 | 122 | 123 | ### Bug Fixes 124 | 125 | * **types:** include @nuxtjs/axios types ([#691](https://github.com/nuxt/create-nuxt-app/issues/691)) ([c4680b0](https://github.com/nuxt/create-nuxt-app/commit/c4680b0018edefdd5de0a771858faa83c7d43b37)) 126 | * **ui:** remove @nuxtjs/bulma ([#695](https://github.com/nuxt/create-nuxt-app/issues/695)) ([371bb59](https://github.com/nuxt/create-nuxt-app/commit/371bb5999acaf68bf29acc994ded130bd6c0c9ce)) 127 | 128 | 129 | 130 | 131 | 132 | # [3.5.0](https://github.com/nuxt/create-nuxt-app/compare/v3.4.0...v3.5.0) (2021-01-17) 133 | 134 | 135 | ### Bug Fixes 136 | 137 | * **link:** add eslint-plugin-vue to devDependency ([7cef146](https://github.com/nuxt/create-nuxt-app/commit/7cef1461933464294857ebad31ea0574d2f23e29)) 138 | * **lint:** use double quotes for glob syntax ([#684](https://github.com/nuxt/create-nuxt-app/issues/684)) ([2e1aff8](https://github.com/nuxt/create-nuxt-app/commit/2e1aff819eac10e7a18588917b06ec5bc611e968)) 139 | * **template:** htmlAttrs typo ([af72313](https://github.com/nuxt/create-nuxt-app/commit/af723137760844299545209973cc237191aba2a8)) 140 | * **types:** add nuxt content support for typescript ([#688](https://github.com/nuxt/create-nuxt-app/issues/688)) ([ecbc960](https://github.com/nuxt/create-nuxt-app/commit/ecbc9607126bc11e82850a959ac463a61694bda4)) 141 | * e2e tests are configured with project's nuxt.config ([#670](https://github.com/nuxt/create-nuxt-app/issues/670)) ([be14839](https://github.com/nuxt/create-nuxt-app/commit/be14839914ccb3b15b5f9ad7a68d8784fd9d8327)) 142 | 143 | 144 | ### Features 145 | 146 | * add BalmUI to UI framework ([#636](https://github.com/nuxt/create-nuxt-app/issues/636)) ([d57c992](https://github.com/nuxt/create-nuxt-app/commit/d57c992b966f2ff0c70cfbfb2eac95c5a4ed65d9)) 147 | * **pwa:** add default language to nuxt.config ([#653](https://github.com/nuxt/create-nuxt-app/issues/653)) ([31dd1a3](https://github.com/nuxt/create-nuxt-app/commit/31dd1a39bb134738a04de93961e6dea16807ef8f)) 148 | * add Nightwatch.js as test framework option ([#572](https://github.com/nuxt/create-nuxt-app/issues/572)) ([75985e4](https://github.com/nuxt/create-nuxt-app/commit/75985e47a841fe8898f6f17b265fe6566984db8e)) 149 | * add Oruga as UI framework option ([#635](https://github.com/nuxt/create-nuxt-app/issues/635)) ([b6facaf](https://github.com/nuxt/create-nuxt-app/commit/b6facaf6383c30699879f7b5e4e2433bf22adfa7)) 150 | * don't install @nuxtjs/eslint-config and @nuxtjs/eslint-config-typescript together ([#633](https://github.com/nuxt/create-nuxt-app/issues/633)) ([60795d1](https://github.com/nuxt/create-nuxt-app/commit/60795d152992b68cd833530068b4549e132ecc19)) 151 | 152 | 153 | 154 | 155 | 156 | # [3.4.0](https://github.com/nuxt/create-nuxt-app/compare/v3.3.0...v3.4.0) (2020-10-06) 157 | 158 | 159 | ### Bug Fixes 160 | 161 | * **vuetify:** updated layout to be on par with vuetify 2.x ([#619](https://github.com/nuxt/create-nuxt-app/issues/619)) ([4ceb4c1](https://github.com/nuxt/create-nuxt-app/commit/4ceb4c176d9a829d67485e1a099001f7b743ea60)) 162 | 163 | 164 | ### Features 165 | 166 | * add GitHub Action out-of-the-box ([#621](https://github.com/nuxt/create-nuxt-app/issues/621)) ([ad67d2f](https://github.com/nuxt/create-nuxt-app/commit/ad67d2f4dbd01a08be7d01056e626d26c03e0951)) 167 | 168 | 169 | 170 | 171 | 172 | # [3.3.0](https://github.com/nuxt/create-nuxt-app/compare/v3.2.0...v3.3.0) (2020-09-17) 173 | 174 | 175 | ### Bug Fixes 176 | 177 | * **template:** bump typescript packages versions ([#599](https://github.com/nuxt/create-nuxt-app/issues/599)) ([b00e836](https://github.com/nuxt/create-nuxt-app/commit/b00e836b43cd8f0d7cb459be59c227efc3503cd3)) 178 | * eslint issue with ava ([#595](https://github.com/nuxt/create-nuxt-app/issues/595)) ([f77d6bd](https://github.com/nuxt/create-nuxt-app/commit/f77d6bd4d361644fc4d4006ecff87f5d7cc93a56)) 179 | * updated layout to be in par with vuetify 2.x ([#597](https://github.com/nuxt/create-nuxt-app/issues/597)) ([4d404ff](https://github.com/nuxt/create-nuxt-app/commit/4d404ff6bb1f9e0c0017a2e83b52ab8f68bf4051)) 180 | 181 | 182 | ### Features 183 | 184 | * add commitlint as linting tools option ([#592](https://github.com/nuxt/create-nuxt-app/issues/592)) ([33817a8](https://github.com/nuxt/create-nuxt-app/commit/33817a8bfcc4162e32030de4232defd1f99b0c33)) 185 | * add support for dependabot ([#604](https://github.com/nuxt/create-nuxt-app/issues/604)) ([80e04e9](https://github.com/nuxt/create-nuxt-app/commit/80e04e9644ea26b2b7243d3cdb5ee968bb57c511)) 186 | * use `core-js@3` by default ([#594](https://github.com/nuxt/create-nuxt-app/issues/594)) ([146a312](https://github.com/nuxt/create-nuxt-app/commit/146a3122a20dd235608a1f513ec3e83ecae1aa40)) 187 | 188 | 189 | 190 | 191 | 192 | # [3.2.0](https://github.com/nuxt/create-nuxt-app/compare/v3.1.0...v3.2.0) (2020-07-27) 193 | 194 | 195 | ### Bug Fixes 196 | 197 | * **template:** fix package.json dev script for typescript ([#568](https://github.com/nuxt/create-nuxt-app/issues/568)) ([1f64e5a](https://github.com/nuxt/create-nuxt-app/commit/1f64e5afbb973422a34c7a64252cea9a3411664c)) 198 | * **vuetify:** v-content is deprecated ([f547654](https://github.com/nuxt/create-nuxt-app/commit/f547654c4b478a2c59aa1ed49867da9251202a9a)) 199 | 200 | 201 | ### Features 202 | 203 | * **template:** update typescript ([#567](https://github.com/nuxt/create-nuxt-app/issues/567)) ([251c50d](https://github.com/nuxt/create-nuxt-app/commit/251c50d7589dd2568252ebedefebda9779eca33f)) 204 | * add chakra-ui-vue ([#573](https://github.com/nuxt/create-nuxt-app/issues/573)) ([c9ede63](https://github.com/nuxt/create-nuxt-app/commit/c9ede63abdad60462fd3280fbd211a857e8fe1e8)) 205 | 206 | 207 | 208 | 209 | 210 | # [3.1.0](https://github.com/nuxt-community/create-nuxt-app/compare/v3.0.0...v3.1.0) (2020-06-22) 211 | 212 | 213 | ### Features 214 | 215 | * prepare for Nuxt 2.13 ([#529](https://github.com/nuxt-community/create-nuxt-app/issues/529)) ([47aa7c1](https://github.com/nuxt-community/create-nuxt-app/commit/47aa7c1eaf743118bb0b0d8fca78ed58bfe30b05)), closes [#509](https://github.com/nuxt-community/create-nuxt-app/issues/509) [#513](https://github.com/nuxt-community/create-nuxt-app/issues/513) [#544](https://github.com/nuxt-community/create-nuxt-app/issues/544) [#547](https://github.com/nuxt-community/create-nuxt-app/issues/547) [#540](https://github.com/nuxt-community/create-nuxt-app/issues/540) [#541](https://github.com/nuxt-community/create-nuxt-app/issues/541) 216 | 217 | 218 | 219 | 220 | 221 | # [3.0.0](https://github.com/nuxt/create-nuxt-app/compare/v2.16.0...v3.0.0) (2020-06-18) 222 | 223 | 224 | ### Bug Fixes 225 | 226 | * **ava:** expect vm truthy as vue instance assertion ([46594db](https://github.com/nuxt/create-nuxt-app/commit/46594dbb35eefe4684adb3eb1a3f6b647d7c9850)) 227 | * **jest:** downgrate vue-jest to v3 ([8a75b51](https://github.com/nuxt/create-nuxt-app/commit/8a75b51986ff7aa5dd4fb4135b5991b723594f89)) 228 | * **prettier:** add stylelint-config-prettier ([50aa285](https://github.com/nuxt/create-nuxt-app/commit/50aa2851f80fc177add7185d485758dceca29d7d)) 229 | 230 | 231 | ### Features 232 | 233 | * **template:** remove dotenv module ([#544](https://github.com/nuxt/create-nuxt-app/issues/544)) ([ba93891](https://github.com/nuxt/create-nuxt-app/commit/ba938913bab21a96f29678c91897a6294003f32d)) 234 | * add content module ([#540](https://github.com/nuxt/create-nuxt-app/issues/540)) ([9aba2f6](https://github.com/nuxt/create-nuxt-app/commit/9aba2f692e716e7e0e027cca447fa2c260df2a40)) 235 | 236 | 237 | 238 | 239 | 240 | # [2.16.0](https://github.com/nuxt-community/create-nuxt-app/compare/v2.15.0...v2.16.0) (2020-05-18) 241 | 242 | 243 | ### Bug Fixes 244 | 245 | * **ava:** e2e test hangs until timeout ([8393524](https://github.com/nuxt-community/create-nuxt-app/commit/8393524cd99db4847c339fac5e594419cba7f6bb)) 246 | * **lint:** disable eslint nuxt.config.js extend line ([#491](https://github.com/nuxt-community/create-nuxt-app/issues/491)) ([a7d3142](https://github.com/nuxt-community/create-nuxt-app/commit/a7d3142b8374338aa8e0a9aabe77fc030f4b1b93)) 247 | * **lint-staged:** run eslint only for staged files ([9133954](https://github.com/nuxt-community/create-nuxt-app/commit/91339542f6cb249e3ef3abe2445227a15d58480d)) 248 | 249 | 250 | ### Features 251 | 252 | * add WebdriverIO as test framework option ([#528](https://github.com/nuxt-community/create-nuxt-app/issues/528)) ([9a1497f](https://github.com/nuxt-community/create-nuxt-app/commit/9a1497f04e446a3b91b3eed1fef6273ad717b2f0)) 253 | * **deps:** update eslint to v7 ([916f288](https://github.com/nuxt-community/create-nuxt-app/commit/916f2887052d97272ed25c5f339a21286520e95b)) 254 | * **lint:** add stylelint-config-standard and separate lint scripts ([#493](https://github.com/nuxt-community/create-nuxt-app/issues/493)) ([8034d68](https://github.com/nuxt-community/create-nuxt-app/commit/8034d68109231b62e134f1fa06eb1ae72f9fd8ed)) 255 | * **template:** remove author and description from prompt ([#466](https://github.com/nuxt-community/create-nuxt-app/issues/466)) ([1d7d0c4](https://github.com/nuxt-community/create-nuxt-app/commit/1d7d0c4cdfdf8d2a04fd7afb12937bb3fcf61472)) 256 | * **template:** support package.json and handler ([#467](https://github.com/nuxt-community/create-nuxt-app/issues/467)) ([ff37dc8](https://github.com/nuxt-community/create-nuxt-app/commit/ff37dc85672f55b2441ef6612b5917ca0b32b4f5)) 257 | * **templates:** deprecate server templates ([#501](https://github.com/nuxt-community/create-nuxt-app/issues/501)) ([c60f39e](https://github.com/nuxt-community/create-nuxt-app/commit/c60f39e9fee49bcd4306217ec732b45d9d706c27)) 258 | * migrate to monorepo ([#458](https://github.com/nuxt-community/create-nuxt-app/issues/458)) ([64991bb](https://github.com/nuxt-community/create-nuxt-app/commit/64991bba05b208e5078c8101c5adac55f2100ff2)) 259 | -------------------------------------------------------------------------------- /packages/cna-template/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "cna-template", 3 | "version": "5.0.0", 4 | "description": "Templates for Create Nuxt App.", 5 | "files": [ 6 | "template" 7 | ], 8 | "license": "MIT" 9 | } 10 | -------------------------------------------------------------------------------- /packages/cna-template/template/.editorconfig: -------------------------------------------------------------------------------- 1 | # editorconfig.org 2 | root = true 3 | 4 | [*] 5 | indent_style = space 6 | indent_size = 2 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 | -------------------------------------------------------------------------------- /packages/cna-template/template/README.md: -------------------------------------------------------------------------------- 1 | # <%= name %> 2 | 3 | ## Build Setup 4 | 5 | ```bash 6 | # install dependencies 7 | $ <%= pm %> install 8 | 9 | # serve with hot reload at localhost:3000 10 | $ <%= pmRun %> dev 11 | 12 | # build for production and launch server 13 | $ <%= pmRun %> build 14 | $ <%= pmRun %> start 15 | 16 | # generate static project 17 | $ <%= pmRun %> generate 18 | ``` 19 | 20 | For detailed explanation on how things work, check out the [documentation](https://nuxtjs.org). 21 | 22 | ## Special Directories 23 | 24 | You can create the following extra directories, some of which have special behaviors. Only `pages` is required; you can delete them if you don't want to use their functionality. 25 | 26 | ### `assets` 27 | 28 | The assets directory contains your uncompiled assets such as Stylus or Sass files, images, or fonts. 29 | 30 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/assets). 31 | 32 | ### `components` 33 | 34 | The components directory contains your Vue.js components. Components make up the different parts of your page and can be reused and imported into your pages, layouts and even other components. 35 | 36 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/components). 37 | 38 | ### `layouts` 39 | 40 | Layouts are a great help when you want to change the look and feel of your Nuxt app, whether you want to include a sidebar or have distinct layouts for mobile and desktop. 41 | 42 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/layouts). 43 | 44 | 45 | ### `pages` 46 | 47 | This directory contains your application views and routes. Nuxt will read all the `*.vue` files inside this directory and setup Vue Router automatically. 48 | 49 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/get-started/routing). 50 | 51 | ### `plugins` 52 | 53 | The plugins directory contains JavaScript plugins that you want to run before instantiating the root Vue.js Application. This is the place to add Vue plugins and to inject functions or constants. Every time you need to use `Vue.use()`, you should create a file in `plugins/` and add its path to plugins in `nuxt.config.js`. 54 | 55 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/plugins). 56 | 57 | ### `static` 58 | 59 | This directory contains your static files. Each file inside this directory is mapped to `/`. 60 | 61 | Example: `/static/robots.txt` is mapped as `/robots.txt`. 62 | 63 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/static). 64 | 65 | ### `store` 66 | 67 | This directory contains your Vuex store files. Creating a file in this directory automatically activates Vuex. 68 | 69 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/docs/2.x/directory-structure/store). 70 | -------------------------------------------------------------------------------- /packages/cna-template/template/_.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | env: { 4 | browser: true, 5 | <%_ if (test === 'jest') { _%> 6 | "jest/globals": true, 7 | <%_ } _%> 8 | node: true 9 | }, 10 | <%_ if (!typescript) { _%> 11 | parserOptions: { 12 | parser: '@babel/eslint-parser', 13 | requireConfigFile: false 14 | }, 15 | <%_ } _%> 16 | extends: [ 17 | <%_ if (typescript) { _%> 18 | '@nuxtjs/eslint-config-typescript', 19 | <%_ } else {_%> 20 | '@nuxtjs', 21 | <%_ } _%> 22 | <%_ if (test === 'webdriverio') { _%> 23 | 'plugin:wdio/recommended', 24 | <%_ } _%> 25 | 'plugin:nuxt/recommended', 26 | <%_ if (prettier) { _%> 27 | 'prettier' 28 | <%_ } _%> 29 | ], 30 | plugins: [ 31 | <%_ if (test === 'webdriverio') { _%> 32 | 'wdio' 33 | <%_ } else if (test === 'jest') { _%> 34 | "jest" 35 | <%_ } _%> 36 | ], 37 | // add your custom rules here 38 | rules: {} 39 | } 40 | -------------------------------------------------------------------------------- /packages/cna-template/template/_.prettierignore: -------------------------------------------------------------------------------- 1 | ### 2 | # Place your Prettier ignore content here 3 | 4 | ### 5 | # .gitignore content is duplicated here due to https://github.com/prettier/prettier/issues/8506 6 | 7 | # Created by .ignore support plugin (hsz.mobi) 8 | ### Node template 9 | # Logs 10 | /logs 11 | *.log 12 | npm-debug.log* 13 | yarn-debug.log* 14 | yarn-error.log* 15 | 16 | # Runtime data 17 | pids 18 | *.pid 19 | *.seed 20 | *.pid.lock 21 | 22 | # Directory for instrumented libs generated by jscoverage/JSCover 23 | lib-cov 24 | 25 | # Coverage directory used by tools like istanbul 26 | coverage 27 | 28 | # nyc test coverage 29 | .nyc_output 30 | 31 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 32 | .grunt 33 | 34 | # Bower dependency directory (https://bower.io/) 35 | bower_components 36 | 37 | # node-waf configuration 38 | .lock-wscript 39 | 40 | # Compiled binary addons (https://nodejs.org/api/addons.html) 41 | build/Release 42 | 43 | # Dependency directories 44 | node_modules/ 45 | jspm_packages/ 46 | 47 | # TypeScript v1 declaration files 48 | typings/ 49 | 50 | # Optional npm cache directory 51 | .npm 52 | 53 | # Optional eslint cache 54 | .eslintcache 55 | 56 | # Optional REPL history 57 | .node_repl_history 58 | 59 | # Output of 'npm pack' 60 | *.tgz 61 | 62 | # Yarn Integrity file 63 | .yarn-integrity 64 | 65 | # dotenv environment variables file 66 | .env 67 | 68 | # parcel-bundler cache (https://parceljs.org/) 69 | .cache 70 | 71 | # next.js build output 72 | .next 73 | 74 | # nuxt.js build output 75 | .nuxt 76 | 77 | # Nuxt generate 78 | dist 79 | 80 | # vuepress build output 81 | .vuepress/dist 82 | 83 | # Serverless directories 84 | .serverless 85 | 86 | # IDE / Editor 87 | .idea 88 | 89 | # Service worker 90 | sw.* 91 | 92 | # macOS 93 | .DS_Store 94 | 95 | # Vim swap files 96 | *.swp 97 | -------------------------------------------------------------------------------- /packages/cna-template/template/_.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "semi": false, 3 | "singleQuote": true 4 | } 5 | -------------------------------------------------------------------------------- /packages/cna-template/template/_commitlint.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | extends: ["@commitlint/config-conventional"], 3 | }; 4 | -------------------------------------------------------------------------------- /packages/cna-template/template/_jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "baseUrl": ".", 4 | "paths": { 5 | "~/*": ["./*"], 6 | "@/*": ["./*"], 7 | "~~/*": ["./*"], 8 | "@@/*": ["./*"] 9 | } 10 | }, 11 | "exclude": ["node_modules", ".nuxt", "dist"] 12 | } 13 | -------------------------------------------------------------------------------- /packages/cna-template/template/_package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "<%= name %>", 3 | "version": "1.0.0", 4 | "private": true 5 | } 6 | -------------------------------------------------------------------------------- /packages/cna-template/template/_stylelint.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | customSyntax: 'postcss-html', 3 | extends: [ 4 | 'stylelint-config-standard', 5 | 'stylelint-config-recommended-vue', 6 | <%_ if (prettier) { _%> 7 | 'stylelint-config-prettier' 8 | <%_ } _%> 9 | ], 10 | // add your custom config here 11 | // https://stylelint.io/user-guide/configuration 12 | rules: {} 13 | } 14 | -------------------------------------------------------------------------------- /packages/cna-template/template/dependabot.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | updates: 3 | # Fetch and update latest `npm` packages 4 | - package-ecosystem: npm 5 | directory: '/' 6 | schedule: 7 | interval: daily 8 | time: '00:00' 9 | open-pull-requests-limit: 10 10 | reviewers: 11 | - <%= gitUsername %> 12 | assignees: 13 | - <%= gitUsername %> 14 | commit-message: 15 | prefix: fix 16 | prefix-development: chore 17 | include: scope 18 | <%_ if (ci === 'github-actions') { _%> 19 | # Fetch and update latest `github-actions` pkgs 20 | - package-ecosystem: github-actions 21 | directory: '/' 22 | schedule: 23 | interval: daily 24 | time: '00:00' 25 | open-pull-requests-limit: 10 26 | reviewers: 27 | - <%= gitUsername %> 28 | assignees: 29 | - <%= gitUsername %> 30 | commit-message: 31 | prefix: fix 32 | prefix-development: chore 33 | include: scope 34 | <%_ } _%> 35 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/ant-design-vue/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "ant-design-vue": "^1.7.8" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/ant-design-vue/plugins/antd-ui.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Antd from 'ant-design-vue/lib' 3 | 4 | Vue.use(Antd) 5 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/ava/.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "test": { 4 | "plugins": [ 5 | [ 6 | "module-resolver", 7 | { 8 | "root": ["."], 9 | "alias": { 10 | "@": ".", 11 | "~": "." 12 | } 13 | } 14 | ] 15 | ] 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/ava/ava.config.cjs: -------------------------------------------------------------------------------- 1 | module.exports = () => { 2 | return { 3 | require: ['./test/helpers/ava.setup.js'], 4 | ignoredByWatcher: ['!**/*.{js,vue}'], 5 | tap: true, 6 | verbose: true, 7 | color: true 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/ava/package.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | apply (pkg, generator) { 3 | const { pm } = generator.answers 4 | if (pm === 'npm') { 5 | // Temporary fix for https://github.com/jackmellis/require-extension-hooks-vue/issues/49 6 | // Remove this when the issue is fixed 7 | pkg.overrides = { 8 | 'require-extension-hooks-vue': { 9 | 'vue-template-compiler': '$vue-template-compiler' 10 | } 11 | } 12 | } 13 | return pkg 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/ava/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "scripts": { 3 | "test": "<%= pmRun %> test:unit && <%= pmRun %> test:e2e", 4 | "test:unit": "cross-env TEST=unit ava ./test/specs/**/*", 5 | "test:e2e": "cross-env TEST=e2e ava ./test/e2e/**/*" 6 | }, 7 | "devDependencies": { 8 | "@vue/test-utils": "^1.3.0", 9 | "ava": "^4.3.3", 10 | "babel-plugin-module-resolver": "^4.1.0", 11 | "cross-env": "^7.0.3", 12 | "jsdom": "^20.0.1", 13 | "jsdom-global": "^3.0.2", 14 | "require-extension-hooks": "^0.3.3", 15 | "require-extension-hooks-babel": "^1.0.0", 16 | "require-extension-hooks-vue": "^3.0.0" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/ava/test/e2e/index.spec.js: -------------------------------------------------------------------------------- 1 | import { resolve } from 'path' 2 | import test, { before, after } from 'ava' 3 | import { Nuxt, Builder } from 'nuxt' 4 | import config from '../../nuxt.config' 5 | 6 | // We keep the nuxt and server instance 7 | // So we can close them at the end of the test 8 | let nuxt = null 9 | 10 | // Init Nuxt.js and create a server listening on localhost:4000 11 | before(async () => { 12 | nuxt = new Nuxt({ 13 | ...config, 14 | dev: false, 15 | rootDir: resolve(__dirname, '../../') 16 | }) 17 | await new Builder(nuxt).build() 18 | await nuxt.server.listen(4000, 'localhost') 19 | }, 30000) 20 | 21 | // Example of testing only generated html 22 | test('Route / exits and render HTML', async (t) => { 23 | const { html } = await nuxt.renderRoute('/', {}) 24 | t.true(html.includes('Documentation')) 25 | }) 26 | 27 | // Close server and ask nuxt to stop listening to file changes 28 | after('Closing server and nuxt.js', () => { 29 | nuxt.close() 30 | }) 31 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/ava/test/helpers/ava.setup.js: -------------------------------------------------------------------------------- 1 | if (process.env.TEST === 'unit') { 2 | require('jsdom-global')() 3 | // https://github.com/nuxt/create-nuxt-app/issues/180#issuecomment-463069941 4 | window.Date = global.Date = Date 5 | } 6 | 7 | const Vue = require('vue') 8 | Vue.config.productionTip = false 9 | 10 | const hooks = require('require-extension-hooks') 11 | hooks('vue').plugin('vue').push() 12 | hooks(['vue', 'js']) 13 | .exclude(({ filename }) => filename.match(/\/node_modules\//)) 14 | .plugin('babel') 15 | .push() 16 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/ava/test/specs/NuxtLogo.spec.js: -------------------------------------------------------------------------------- 1 | import test from 'ava' 2 | import { mount } from '@vue/test-utils' 3 | import NuxtLogo from '@/components/NuxtLogo.vue' 4 | 5 | test('is a Vue instance', (t) => { 6 | const wrapper = mount(NuxtLogo) 7 | t.truthy(wrapper.vm) 8 | }) 9 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/balm-ui/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "balm-ui": "^8.55.0" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/balm-ui/plugins/balm-ui.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import BalmUI from 'balm-ui' 3 | import BalmUIPlus from 'balm-ui/dist/balm-ui-plus' 4 | 5 | Vue.use(BalmUI) 6 | Vue.use(BalmUIPlus) 7 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/bootstrap/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "bootstrap-vue": "^2.22.0", 4 | "bootstrap": "^4.6.2" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/buefy/assets/buefy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nuxt/create-nuxt-app/2f04969c2f30b16b85a93bea52e489109c0a7210/packages/cna-template/template/frameworks/buefy/assets/buefy.png -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/buefy/components/Card.vue: -------------------------------------------------------------------------------- 1 | 28 | 29 | 44 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/buefy/layouts/default.vue: -------------------------------------------------------------------------------- 1 | 54 | 55 | 76 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/buefy/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "nuxt-buefy": "^0.4.24" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/buefy/pages/index.vue: -------------------------------------------------------------------------------- 1 | 42 | 43 | 53 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/buefy/pages/inspire.vue: -------------------------------------------------------------------------------- 1 | 16 | 17 | 22 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/chakra-ui/layouts/default.vue: -------------------------------------------------------------------------------- 1 | 13 | 31 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/chakra-ui/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "@chakra-ui/nuxt": "^0.6.0", 4 | "@nuxtjs/emotion": "^0.1.0" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/chakra-ui/pages/index.vue: -------------------------------------------------------------------------------- 1 | 90 | 91 | 169 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/circleci/.circleci/config.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | 3 | jobs: 4 | ci: 5 | docker: 6 | - image: cimg/node:lts 7 | steps: 8 | - checkout 9 | 10 | - restore_cache: 11 | keys: 12 | <%_ if (pm === 'npm') { _%> 13 | - node-v1-{{ checksum "package-lock.json" }} 14 | <%_ } _%> 15 | <%_ if (pm === 'yarn') { _%> 16 | - yarn-v1-{{ checksum "yarn.lock" }} 17 | <%_ } _%> 18 | 19 | - run: 20 | name: Install dependencies 21 | command: <%= pm === 'yarn' ? 'yarn --frozen-lockfile --cache-folder ~/.cache/yarn': 'npm ci' %> 22 | 23 | - save_cache: 24 | <%_ if (pm === 'npm') { _%> 25 | key: node-v1-{{ checksum "package-lock.json" }} 26 | paths: 27 | - ~/.npm 28 | <%_ } _%> 29 | <%_ if (pm === 'yarn') { _%> 30 | key: yarn-v1-{{ checksum "yarn.lock" }} 31 | paths: 32 | - ~/.cache/yarn 33 | <%_ } _%> 34 | 35 | <%_ if (linter.length > 0) { _%> 36 | - run: 37 | name: Run linter 38 | command: <%= pmRun %> lint 39 | <%_ } _%> 40 | 41 | <%_ if (test !== 'none') { _%> 42 | - run: 43 | name: Run tests 44 | command: <%= pmRun %> test 45 | <%_ } _%> 46 | 47 | workflows: 48 | version: 2 49 | ci: 50 | jobs: 51 | - ci: 52 | filters: 53 | branches: 54 | only: 55 | - main 56 | - master 57 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/element-ui/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "element-ui": "^2.15.10" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/element-ui/plugins/element-ui.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Element from 'element-ui' 3 | import locale from 'element-ui/lib/locale/lang/en' 4 | 5 | Vue.use(Element, { locale }) 6 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/github-actions/.github/workflows/ci.yml: -------------------------------------------------------------------------------- 1 | name: ci 2 | 3 | on: 4 | push: 5 | branches: 6 | - main 7 | - master 8 | pull_request: 9 | branches: 10 | - main 11 | - master 12 | 13 | jobs: 14 | ci: 15 | runs-on: ${{ matrix.os }} 16 | 17 | strategy: 18 | matrix: 19 | os: [ubuntu-latest] 20 | node: [lts/*] 21 | 22 | steps: 23 | - name: Checkout 🛎 24 | uses: actions/checkout@master 25 | 26 | - name: Setup node env 🏗 27 | uses: actions/setup-node@v3.0.0 28 | with: 29 | node-version: ${{ matrix.node }} 30 | check-latest: true 31 | 32 | <%_ if (pm === 'yarn') { _%> 33 | - name: Get yarn cache directory path 🛠 34 | id: yarn-cache-dir-path 35 | run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT 36 | 37 | - name: Cache node_modules 📦 38 | uses: actions/cache@v2.1.7 39 | id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) 40 | with: 41 | path: ${{ steps.yarn-cache-dir-path.outputs.dir }} 42 | key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} 43 | restore-keys: | 44 | ${{ runner.os }}-yarn- 45 | <%_ } _%> 46 | <%_ if (pm === 'npm') { _%> 47 | - name: Cache node_modules 📦 48 | uses: actions/cache@v2.1.7 49 | with: 50 | path: ~/.npm 51 | key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} 52 | restore-keys: | 53 | ${{ runner.os }}-node- 54 | <%_ } _%> 55 | 56 | - name: Install dependencies 👨🏻‍💻 57 | run: <%= pmRun === 'yarn' ? 'yarn' : 'npm ci --prefer-offline --no-audit' %> 58 | 59 | <%_ if (linter.length > 0) { _%> 60 | - name: Run linter 👀 61 | run: <%= pmRun %> lint 62 | <%_ } _%> 63 | 64 | <%_ if (test !== 'none') { _%> 65 | - name: Run tests 🧪 66 | run: <%= pmRun %> test 67 | <%_ } _%> 68 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/jest/.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "test": { 4 | "presets": [ 5 | [ 6 | "@babel/preset-env", 7 | { 8 | "targets": { 9 | "node": "current" 10 | } 11 | } 12 | ] 13 | ] 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/jest/jest.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | moduleNameMapper: { 3 | '^@/(.*)$': '/$1', 4 | '^~/(.*)$': '/$1', 5 | '^vue$': 'vue/dist/vue.common.js' 6 | }, 7 | moduleFileExtensions: [ 8 | <%_ if (typescript) { _%> 9 | 'ts', 10 | <%_ } _%> 11 | 'js', 12 | 'vue', 13 | 'json' 14 | ], 15 | transform: { 16 | <%_ if (typescript) { _%> 17 | '^.+\\.ts$': 'ts-jest', 18 | <%_ } _%> 19 | '^.+\\.js$': 'babel-jest', 20 | '.*\\.(vue)$': 'vue-jest' 21 | }, 22 | collectCoverage: true, 23 | collectCoverageFrom: [ 24 | '/components/**/*.vue', 25 | '/pages/**/*.vue' 26 | ], 27 | testEnvironment: 'jsdom' 28 | } 29 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/jest/package.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | apply (pkg, generator) { 3 | const { language = [], linter = [] } = generator.answers 4 | const typescript = language.includes('ts') 5 | if (!typescript) { 6 | delete pkg.devDependencies['ts-jest'] 7 | } 8 | const eslint = linter.includes('eslint') 9 | if (!eslint) { 10 | delete pkg.devDependencies['eslint-plugin-jest'] 11 | } 12 | return pkg 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/jest/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "scripts": { 3 | "test": "jest" 4 | }, 5 | "devDependencies": { 6 | "@vue/test-utils": "^1.3.0", 7 | "babel-core": "7.0.0-bridge.0", 8 | "babel-jest": "^29.1.2", 9 | "eslint-plugin-jest": "^27.0.4", 10 | "jest": "^29.1.2", 11 | "jest-environment-jsdom": "^29.1.2", 12 | "ts-jest": "^29.0.3", 13 | "vue-jest": "^3.0.4" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/jest/test/NuxtLogo.spec.js: -------------------------------------------------------------------------------- 1 | import { mount } from '@vue/test-utils' 2 | import NuxtLogo from '@/components/NuxtLogo.vue' 3 | 4 | describe('NuxtLogo', () => { 5 | test('is a Vue instance', () => { 6 | const wrapper = mount(NuxtLogo) 7 | expect(wrapper.vm).toBeTruthy() 8 | }) 9 | }) 10 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/nightwatch/nightwatch.conf.js: -------------------------------------------------------------------------------- 1 | // Refer to the online docs for more details: https://nightwatchjs.org/gettingstarted/configuration/ 2 | const Services = {}; loadServices() 3 | 4 | module.exports = { 5 | // An array of folders (excluding subfolders) where your tests are located; 6 | // if this is not specified, the test source must be passed as the second argument to the test runner. 7 | src_folders: ['test/e2e/specs'], 8 | 9 | exclude: [], 10 | 11 | // See https://nightwatchjs.org/guide/working-with-page-objects/ 12 | page_objects_path: 'test/e2e/pageObjects', 13 | 14 | // See https://nightwatchjs.org/guide/extending-nightwatch/#writing-custom-commands 15 | custom_commands_path: '', 16 | 17 | // See https://nightwatchjs.org/guide/extending-nightwatch/#writing-custom-assertions 18 | custom_assertions_path: '', 19 | 20 | // See https://nightwatchjs.org/guide/#external-globals 21 | globals_path: 'nightwatch_globals.js', 22 | 23 | webdriver: {}, 24 | 25 | test_settings: { 26 | default: { 27 | disable_error_log: false, 28 | launch_url: 'https://nightwatchjs.org', 29 | 30 | screenshots: { 31 | enabled: false, 32 | path: 'screens', 33 | on_failure: true 34 | }, 35 | 36 | desiredCapabilities: { 37 | browserName: 'chrome' 38 | }, 39 | 40 | webdriver: { 41 | start_process: true, 42 | server_path: 'node_modules/.bin/chromedriver', 43 | port: 9515 44 | } 45 | }, 46 | 47 | safari: { 48 | desiredCapabilities: { 49 | browserName: 'safari', 50 | alwaysMatch: { 51 | acceptInsecureCerts: false 52 | } 53 | }, 54 | webdriver: { 55 | port: 4445, 56 | start_process: true, 57 | server_path: '/usr/bin/safaridriver' 58 | } 59 | }, 60 | 61 | firefox: { 62 | desiredCapabilities: { 63 | browserName: 'firefox', 64 | alwaysMatch: { 65 | // Enable this if you encounter unexpected SSL certificate errors in Firefox 66 | // acceptInsecureCerts: true, 67 | 'moz:firefoxOptions': { 68 | args: [ 69 | // '-headless', 70 | // '-verbose' 71 | ] 72 | } 73 | } 74 | }, 75 | webdriver: { 76 | start_process: true, 77 | // default_path_prefix: '/wd/hub', 78 | use_legacy_jsonwire: true, 79 | port: 4444, 80 | server_path: (Services.geckodriver ? Services.geckodriver.path : ''), 81 | cli_args: [ 82 | // very verbose geckodriver logs 83 | // '-vv' 84 | ] 85 | } 86 | }, 87 | 88 | chrome: { 89 | desiredCapabilities: { 90 | browserName: 'chrome', 91 | chromeOptions: { 92 | // This tells Chromedriver to run using the legacy JSONWire protocol (not required in Chrome 78) 93 | // w3c: false, 94 | // More info on Chromedriver: https://sites.google.com/a/chromium.org/chromedriver/ 95 | args: [ 96 | // '--no-sandbox', 97 | // '--ignore-certificate-errors', 98 | // '--allow-insecure-localhost', 99 | // '--headless' 100 | ] 101 | } 102 | }, 103 | 104 | webdriver: { 105 | start_process: true, 106 | port: 9515, 107 | server_path: (Services.chromedriver ? Services.chromedriver.path : ''), 108 | cli_args: [ 109 | // --verbose 110 | ] 111 | } 112 | }, 113 | 114 | // //////////////////////////////////////////////////////////////////////////////// 115 | // Configuration for when using the browserstack.com cloud service | 116 | // | 117 | // Please set the username and access key by setting the environment variables: | 118 | // - BROWSERSTACK_USER | 119 | // - BROWSERSTACK_KEY | 120 | // .env files are supported | 121 | // //////////////////////////////////////////////////////////////////////////////// 122 | browserstack: { 123 | selenium: { 124 | host: 'hub-cloud.browserstack.com', 125 | port: 443 126 | }, 127 | // More info on configuring capabilities can be found on: 128 | // https://www.browserstack.com/automate/capabilities?tag=selenium-4 129 | desiredCapabilities: { 130 | 'bstack:options': { 131 | local: 'false', 132 | userName: '{BROWSERSTACK_USER}', 133 | accessKey: '{BROWSERSTACK_KEY}' 134 | } 135 | }, 136 | 137 | disable_error_log: true, 138 | webdriver: { 139 | keep_alive: true, 140 | start_process: false 141 | } 142 | }, 143 | 144 | 'browserstack.chrome': { 145 | extends: 'browserstack', 146 | desiredCapabilities: { 147 | browserName: 'chrome', 148 | chromeOptions: { 149 | // This tells Chromedriver to run using the legacy JSONWire protocol 150 | // More info on Chromedriver: https://sites.google.com/a/chromium.org/chromedriver/ 151 | w3c: false 152 | } 153 | } 154 | }, 155 | 156 | 'browserstack.firefox': { 157 | extends: 'browserstack', 158 | desiredCapabilities: { 159 | browserName: 'firefox' 160 | } 161 | }, 162 | 163 | 'browserstack.ie': { 164 | extends: 'browserstack', 165 | desiredCapabilities: { 166 | browserName: 'IE', 167 | browserVersion: '11.0', 168 | 'bstack:options': { 169 | os: 'Windows', 170 | osVersion: '10', 171 | local: 'false', 172 | seleniumVersion: '3.5.2', 173 | resolution: '1366x768' 174 | } 175 | } 176 | }, 177 | 178 | // //////////////////////////////////////////////////////////////////////////////// 179 | // Configuration for when using the Selenium service, either locally or remote, | 180 | // like Selenium Grid | 181 | // //////////////////////////////////////////////////////////////////////////////// 182 | selenium: { 183 | // Selenium Server is running locally and is managed by Nightwatch 184 | selenium: { 185 | start_process: true, 186 | port: 4444, 187 | server_path: (Services.seleniumServer ? Services.seleniumServer.path : ''), 188 | cli_args: { 189 | 'webdriver.gecko.driver': (Services.geckodriver ? Services.geckodriver.path : ''), 190 | 'webdriver.chrome.driver': (Services.chromedriver ? Services.chromedriver.path : '') 191 | } 192 | } 193 | }, 194 | 195 | 'selenium.chrome': { 196 | extends: 'selenium', 197 | desiredCapabilities: { 198 | browserName: 'chrome', 199 | chromeOptions: { 200 | w3c: false 201 | } 202 | } 203 | }, 204 | 205 | 'selenium.firefox': { 206 | extends: 'selenium', 207 | desiredCapabilities: { 208 | browserName: 'firefox', 209 | 'moz:firefoxOptions': { 210 | args: [ 211 | // '-headless', 212 | // '-verbose' 213 | ] 214 | } 215 | } 216 | } 217 | } 218 | } 219 | 220 | function loadServices () { 221 | try { 222 | Services.seleniumServer = require('selenium-server') 223 | } catch (err) {} 224 | 225 | try { 226 | Services.chromedriver = require('chromedriver') 227 | } catch (err) {} 228 | 229 | try { 230 | Services.geckodriver = require('geckodriver') 231 | } catch (err) {} 232 | } 233 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/nightwatch/nightwatch_globals.js: -------------------------------------------------------------------------------- 1 | // External Globals doc: https://nightwatchjs.org/guide/#external-globals 2 | 3 | module.exports = { 4 | // this controls whether to abort the test execution when an assertion failed and skip the rest 5 | // it's being used in waitFor commands and expect assertions 6 | abortOnAssertionFailure: true, 7 | 8 | // this will overwrite the default polling interval (currently 500ms) for waitFor commands 9 | // and expect assertions that use retry 10 | waitForConditionPollInterval: 500, 11 | 12 | // default timeout value in milliseconds for waitFor commands and implicit waitFor value for 13 | // expect assertions 14 | waitForConditionTimeout: 5000, 15 | 16 | // this will cause waitFor commands on elements to throw an error if multiple 17 | // elements are found using the given locate strategy and selector 18 | throwOnMultipleElementsReturned: false, 19 | 20 | // controls the timeout value for async hooks. Expects the done() callback to be invoked within this time 21 | // or an error is thrown 22 | asyncHookTimeout: 10000, 23 | 24 | // controls the timeout value for when running async unit tests. Expects the done() callback to be invoked within this time 25 | // or an error is thrown 26 | unitTestsTimeout: 2000, 27 | 28 | // controls the timeout value for when executing the global async reporter. Expects the done() callback to be invoked within this time 29 | // or an error is thrown 30 | customReporterCallbackTimeout: 20000, 31 | 32 | // Automatically retrying failed assertions - You can tell Nightwatch to automatically retry failed assertions until a given timeout is reached, before the test runner gives up and fails the test. 33 | retryAssertionTimeout: 1000 34 | 35 | // 'default' : { 36 | // myGlobal : function() { 37 | // return 'I\'m a method'; 38 | // } 39 | // }, 40 | 41 | // 'test_env' : { 42 | // myGlobal: 'test_global', 43 | // beforeEach : function() { 44 | // } 45 | // }, 46 | 47 | // 48 | // External before hook is ran at the beginning of the tests run, before creating the Selenium session 49 | // before(cb) { 50 | // cb(); 51 | // }, 52 | 53 | // 54 | // External beforeEach hook ran before each test suite is started 55 | // beforeEach(browser, cb) { 56 | // cb(); 57 | // }, 58 | 59 | // 60 | // External after hook is ran at the very end of the tests run, after closing the Selenium session 61 | // after(cb) { 62 | // cb(); 63 | // }, 64 | 65 | // 66 | // External afterEach hook ran after each test suite is finished 67 | // afterEach(browser, cb) { 68 | // browser.perform(function() { 69 | // //console.log('GLOBAL afterEach') 70 | // cb(); 71 | // }); 72 | // }, 73 | 74 | // 75 | // The global reporter is invoked before calling the built-in junit reporter (or a custom reporter specified using the --reporter CLI option). 76 | // reporter(results, cb) { 77 | // cb(); 78 | // } 79 | } 80 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/nightwatch/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "scripts": { 3 | "test:e2e": "nightwatch" 4 | }, 5 | "devDependencies": { 6 | "nightwatch": "^2.3.9", 7 | "chromedriver": "^106.0.1" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/nightwatch/test/e2e/pageObjects/main.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | commands: [], 3 | url: 'http://localhost:3000', 4 | elements: { 5 | docButton: { 6 | selector: '.button--doc' 7 | }, 8 | githubButton: { 9 | selector: '.button--github' 10 | } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/nightwatch/test/e2e/specs/index.spec.js: -------------------------------------------------------------------------------- 1 | describe('Example test', () => { 2 | test('open app correctly', (browser) => { 3 | const main = browser.page.main() 4 | main.navigate() 5 | main.assert.visible('@docButton') 6 | main.assert.visible('@githubButton') 7 | browser.end() 8 | }) 9 | }) 10 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/oruga/assets/oruga.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nuxt/create-nuxt-app/2f04969c2f30b16b85a93bea52e489109c0a7210/packages/cna-template/template/frameworks/oruga/assets/oruga.png -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/oruga/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "@oruga-ui/oruga": "^0.5.6" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/oruga/pages/index.vue: -------------------------------------------------------------------------------- 1 | 20 | 21 | 34 | 35 | 97 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/primevue/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "primevue": "^2.10.0", 4 | "primeicons": "^6.0.1", 5 | "primeflex": "^3.2.1" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/pug/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "pug": "^3.0.2", 4 | "pug-plain-loader": "^1.1.0" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/pug/pages/index.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 28 | 29 | 69 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/vant/plugins/vant.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Vant from 'vant' 3 | 4 | Vue.use(Vant) 5 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/view-ui/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "view-design": "^4.7.0" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/view-ui/pages/index.vue: -------------------------------------------------------------------------------- 1 | 25 | 26 | 31 | 32 | 72 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/view-ui/plugins/view-ui.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import ViewUI from 'view-design' 3 | import locale from 'view-design/dist/locale/en-US' // Change locale, check node_modules/view-design/dist/locale 4 | 5 | Vue.use(ViewUI, { 6 | locale 7 | }) 8 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/vuetify/assets/variables.scss: -------------------------------------------------------------------------------- 1 | // Ref: https://github.com/nuxt-community/vuetify-module#customvariables 2 | // 3 | // The variables you want to modify 4 | // $font-size-root: 20px; 5 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/vuetify/components/VuetifyLogo.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 23 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/vuetify/layouts/default.vue: -------------------------------------------------------------------------------- 1 | 90 | 91 | 119 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/vuetify/layouts/error.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | 40 | 41 | 46 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/vuetify/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "vuetify": "^2.6.10" 4 | }, 5 | "devDependencies": { 6 | "@nuxtjs/vuetify": "^1.12.3" 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/vuetify/pages/index.vue: -------------------------------------------------------------------------------- 1 | 78 | 79 | 84 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/vuetify/pages/inspire.vue: -------------------------------------------------------------------------------- 1 | 20 | 21 | 26 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/vuetify/static/v.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nuxt/create-nuxt-app/2f04969c2f30b16b85a93bea52e489109c0a7210/packages/cna-template/template/frameworks/vuetify/static/v.png -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/vuetify/static/vuetify-logo.svg: -------------------------------------------------------------------------------- 1 | Artboard 46 2 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/webdriverio/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "scripts": { 3 | "test:e2e": "wdio wdio.conf.js" 4 | }, 5 | "devDependencies": { 6 | "@wdio/cli": "^7.25.1", 7 | "@wdio/local-runner": "^7.25.1", 8 | "@wdio/mocha-framework": "^7.25.1", 9 | "@wdio/spec-reporter": "^7.25.1", 10 | "@wdio/sync": "^7.25.1", 11 | "eslint-plugin-wdio": "^7.21.0", 12 | "webdriverio": "^7.25.1" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/webdriverio/test/e2e/pageObjects/main.page.js: -------------------------------------------------------------------------------- 1 | class Page { 2 | open (path = '/') { 3 | browser.url(path) 4 | } 5 | } 6 | 7 | module.exports = new Page() 8 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/webdriverio/test/e2e/specs/index.spec.js: -------------------------------------------------------------------------------- 1 | const Page = require('../pageObjects/main.page') 2 | 3 | describe('Example test', () => { 4 | it('should open correct app', () => { 5 | Page.open() 6 | expect(browser).toHaveTitle('<%= name %>') 7 | }) 8 | }) 9 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/webdriverio/wdio.conf.js: -------------------------------------------------------------------------------- 1 | exports.config = { 2 | // 3 | // ==================== 4 | // Runner Configuration 5 | // ==================== 6 | // 7 | // ================== 8 | // Specify Test Files 9 | // ================== 10 | // Define which test specs should run. The pattern is relative to the directory 11 | // from which `wdio` was called. Notice that, if you are calling `wdio` from an 12 | // NPM script (see https://docs.npmjs.com/cli/run-script) then the current working 13 | // directory is where your package.json resides, so `wdio` will be called from there. 14 | // 15 | specs: [ 16 | './test/e2e/**/*.spec.js' 17 | ], 18 | // Patterns to exclude. 19 | exclude: [ 20 | // 'path/to/excluded/files' 21 | ], 22 | // 23 | // ============ 24 | // Capabilities 25 | // ============ 26 | // Define your capabilities here. WebdriverIO can run multiple capabilities at the same 27 | // time. Depending on the number of capabilities, WebdriverIO launches several test 28 | // sessions. Within your capabilities you can overwrite the spec and exclude options in 29 | // order to group specific specs to a specific capability. 30 | // 31 | // First, you can define how many instances should be started at the same time. Let's 32 | // say you have 3 different capabilities (Chrome, Firefox, and Safari) and you have 33 | // set maxInstances to 1; wdio will spawn 3 processes. Therefore, if you have 10 spec 34 | // files and you set maxInstances to 10, all spec files will get tested at the same time 35 | // and 30 processes will get spawned. The property handles how many capabilities 36 | // from the same test should run tests. 37 | // 38 | maxInstances: 10, 39 | // 40 | // If you have trouble getting all important capabilities together, check out the 41 | // Sauce Labs platform configurator - a great tool to configure your capabilities: 42 | // https://docs.saucelabs.com/reference/platforms-configurator 43 | // 44 | capabilities: [{ 45 | // maxInstances can get overwritten per capability. So if you have an in-house Selenium 46 | // grid with only 5 firefox instances available you can make sure that not more than 47 | // 5 instances get started at a time. 48 | maxInstances: 5, 49 | // 50 | browserName: 'chrome' 51 | // If outputDir is provided WebdriverIO can capture driver session logs 52 | // it is possible to configure which logTypes to include/exclude. 53 | // excludeDriverLogs: ['*'], // pass '*' to exclude all driver session logs 54 | // excludeDriverLogs: ['bugreport', 'server'], 55 | }], 56 | // 57 | // =================== 58 | // Test Configurations 59 | // =================== 60 | // Define all options that are relevant for the WebdriverIO instance here 61 | // 62 | // Level of logging verbosity: trace | debug | info | warn | error | silent 63 | logLevel: 'info', 64 | // 65 | // Set specific log levels per logger 66 | // loggers: 67 | // - webdriver, webdriverio 68 | // - @wdio/applitools-service, @wdio/browserstack-service, @wdio/devtools-service, @wdio/sauce-service 69 | // - @wdio/mocha-framework, @wdio/jasmine-framework 70 | // - @wdio/local-runner, @wdio/lambda-runner 71 | // - @wdio/sumologic-reporter 72 | // - @wdio/cli, @wdio/config, @wdio/sync, @wdio/utils 73 | // Level of logging verbosity: trace | debug | info | warn | error | silent 74 | // logLevels: { 75 | // webdriver: 'info', 76 | // '@wdio/applitools-service': 'info' 77 | // }, 78 | // 79 | // If you only want to run your tests until a specific amount of tests have failed use 80 | // bail (default is 0 - don't bail, run all tests). 81 | bail: 0, 82 | // 83 | // Set a base URL in order to shorten url command calls. If your `url` parameter starts 84 | // with `/`, the base url gets prepended, not including the path portion of your baseUrl. 85 | // If your `url` parameter starts without a scheme or `/` (like `some/path`), the base url 86 | // gets prepended directly. 87 | baseUrl: 'http://localhost:3000', 88 | // 89 | // Default timeout for all waitFor* commands. 90 | waitforTimeout: 10000, 91 | // 92 | // Default timeout in milliseconds for request 93 | // if browser driver or grid doesn't send response 94 | connectionRetryTimeout: 120000, 95 | // 96 | // Default request retries count 97 | connectionRetryCount: 3, 98 | // 99 | // Test runner services 100 | // Services take over a specific job you don't want to take care of. They enhance 101 | // your test setup with almost no effort. Unlike plugins, they don't add new 102 | // commands. Instead, they hook themselves up into the test process. 103 | // services: [], 104 | // 105 | // Framework you want to run your specs with. 106 | // The following are supported: Mocha, Jasmine, and Cucumber 107 | // see also: https://webdriver.io/docs/frameworks.html 108 | // 109 | // Make sure you have the wdio adapter package for the specific framework installed 110 | // before running any tests. 111 | framework: 'mocha', 112 | // 113 | // The number of times to retry the entire specfile when it fails as a whole 114 | // specFileRetries: 1, 115 | // 116 | // Whether or not retried specfiles should be retried immediately or deferred to the end of the queue 117 | // specFileRetriesDeferred: false, 118 | // 119 | // Test reporter for stdout. 120 | // The only one supported by default is 'dot' 121 | // see also: https://webdriver.io/docs/dot-reporter.html 122 | reporters: ['spec'], 123 | 124 | // 125 | // Options to be passed to Mocha. 126 | // See the full list at http://mochajs.org/ 127 | mochaOpts: { 128 | ui: 'bdd', 129 | timeout: 60000 130 | } 131 | // 132 | // ===== 133 | // Hooks 134 | // ===== 135 | // WebdriverIO provides several hooks you can use to interfere with the test process in order to enhance 136 | // it and to build services around it. You can either apply a single function or an array of 137 | // methods to it. If one of them returns with a promise, WebdriverIO will wait until that promise got 138 | // resolved to continue. 139 | /** 140 | * Gets executed once before all workers get launched. 141 | * @param {Object} config wdio configuration object 142 | * @param {Array.} capabilities list of capabilities details 143 | */ 144 | // onPrepare: function (config, capabilities) { 145 | // }, 146 | /** 147 | * Gets executed before a worker process is spawned and can be used to initialise specific service 148 | * for that worker as well as modify runtime environments in an async fashion. 149 | * @param {String} cid capability id (e.g 0-0) 150 | * @param {[type]} caps object containing capabilities for session that will be spawn in the worker 151 | * @param {[type]} specs specs to be run in the worker process 152 | * @param {[type]} args object that will be merged with the main configuration once worker is initialised 153 | * @param {[type]} execArgv list of string arguments passed to the worker process 154 | */ 155 | // onWorkerStart: function (cid, caps, specs, args, execArgv) { 156 | // }, 157 | /** 158 | * Gets executed just before initialising the webdriver session and test framework. It allows you 159 | * to manipulate configurations depending on the capability or spec. 160 | * @param {Object} config wdio configuration object 161 | * @param {Array.} capabilities list of capabilities details 162 | * @param {Array.} specs List of spec file paths that are to be run 163 | */ 164 | // beforeSession: function (config, capabilities, specs) { 165 | // }, 166 | /** 167 | * Gets executed before test execution begins. At this point you can access to all global 168 | * variables like `browser`. It is the perfect place to define custom commands. 169 | * @param {Array.} capabilities list of capabilities details 170 | * @param {Array.} specs List of spec file paths that are to be run 171 | */ 172 | // before: function (capabilities, specs) { 173 | // }, 174 | /** 175 | * Runs before a WebdriverIO command gets executed. 176 | * @param {String} commandName hook command name 177 | * @param {Array} args arguments that command would receive 178 | */ 179 | // beforeCommand: function (commandName, args) { 180 | // }, 181 | /** 182 | * Hook that gets executed before the suite starts 183 | * @param {Object} suite suite details 184 | */ 185 | // beforeSuite: function (suite) { 186 | // }, 187 | /** 188 | * Function to be executed before a test (in Mocha/Jasmine) starts. 189 | */ 190 | // beforeTest: function (test, context) { 191 | // }, 192 | /** 193 | * Hook that gets executed _before_ a hook within the suite starts (e.g. runs before calling 194 | * beforeEach in Mocha) 195 | */ 196 | // beforeHook: function (test, context) { 197 | // }, 198 | /** 199 | * Hook that gets executed _after_ a hook within the suite starts (e.g. runs after calling 200 | * afterEach in Mocha) 201 | */ 202 | // afterHook: function (test, context, { error, result, duration, passed, retries }) { 203 | // }, 204 | /** 205 | * Function to be executed after a test (in Mocha/Jasmine). 206 | */ 207 | // afterTest: function(test, context, { error, result, duration, passed, retries }) { 208 | // }, 209 | 210 | /** 211 | * Hook that gets executed after the suite has ended 212 | * @param {Object} suite suite details 213 | */ 214 | // afterSuite: function (suite) { 215 | // }, 216 | /** 217 | * Runs after a WebdriverIO command gets executed 218 | * @param {String} commandName hook command name 219 | * @param {Array} args arguments that command would receive 220 | * @param {Number} result 0 - command success, 1 - command error 221 | * @param {Object} error error object if any 222 | */ 223 | // afterCommand: function (commandName, args, result, error) { 224 | // }, 225 | /** 226 | * Gets executed after all tests are done. You still have access to all global variables from 227 | * the test. 228 | * @param {Number} result 0 - test pass, 1 - test fail 229 | * @param {Array.} capabilities list of capabilities details 230 | * @param {Array.} specs List of spec file paths that ran 231 | */ 232 | // after: function (result, capabilities, specs) { 233 | // }, 234 | /** 235 | * Gets executed right after terminating the webdriver session. 236 | * @param {Object} config wdio configuration object 237 | * @param {Array.} capabilities list of capabilities details 238 | * @param {Array.} specs List of spec file paths that ran 239 | */ 240 | // afterSession: function (config, capabilities, specs) { 241 | // }, 242 | /** 243 | * Gets executed after all workers got shut down and the process is about to exit. An error 244 | * thrown in the onComplete hook will result in the test run failing. 245 | * @param {Object} exitCode 0 - success, 1 - fail 246 | * @param {Object} config wdio configuration object 247 | * @param {Array.} capabilities list of capabilities details 248 | * @param {} results object containing test results 249 | */ 250 | // onComplete: function(exitCode, config, capabilities, results) { 251 | // }, 252 | /** 253 | * Gets executed when a refresh happens. 254 | * @param {String} oldSessionId session ID of the old session 255 | * @param {String} newSessionId session ID of the new session 256 | */ 257 | // onReload: function(oldSessionId, newSessionId) { 258 | // } 259 | } 260 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/windicss/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "devDependencies": { 3 | "nuxt-windicss": "^2" 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /packages/cna-template/template/frameworks/windicss/windi.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from '@windicss/plugin-utils' 2 | 3 | export default defineConfig({ 4 | /** 5 | * Write windi classes in html attributes. 6 | * @see https://windicss.org/features/attributify.html 7 | */ 8 | attributify: true, 9 | }) 10 | -------------------------------------------------------------------------------- /packages/cna-template/template/gitignore: -------------------------------------------------------------------------------- 1 | # Created by .ignore support plugin (hsz.mobi) 2 | ### Node template 3 | # Logs 4 | /logs 5 | *.log 6 | npm-debug.log* 7 | yarn-debug.log* 8 | yarn-error.log* 9 | 10 | # Runtime data 11 | pids 12 | *.pid 13 | *.seed 14 | *.pid.lock 15 | 16 | # Directory for instrumented libs generated by jscoverage/JSCover 17 | lib-cov 18 | 19 | # Coverage directory used by tools like istanbul 20 | coverage 21 | 22 | # nyc test coverage 23 | .nyc_output 24 | 25 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 26 | .grunt 27 | 28 | # Bower dependency directory (https://bower.io/) 29 | bower_components 30 | 31 | # node-waf configuration 32 | .lock-wscript 33 | 34 | # Compiled binary addons (https://nodejs.org/api/addons.html) 35 | build/Release 36 | 37 | # Dependency directories 38 | node_modules/ 39 | jspm_packages/ 40 | 41 | # TypeScript v1 declaration files 42 | typings/ 43 | 44 | # Optional npm cache directory 45 | .npm 46 | 47 | # Optional eslint cache 48 | .eslintcache 49 | 50 | # Optional REPL history 51 | .node_repl_history 52 | 53 | # Output of 'npm pack' 54 | *.tgz 55 | 56 | # Yarn Integrity file 57 | .yarn-integrity 58 | 59 | # dotenv environment variables file 60 | .env 61 | 62 | # parcel-bundler cache (https://parceljs.org/) 63 | .cache 64 | 65 | # next.js build output 66 | .next 67 | 68 | # nuxt.js build output 69 | .nuxt 70 | 71 | # Nuxt generate 72 | dist 73 | 74 | # vuepress build output 75 | .vuepress/dist 76 | 77 | # Serverless directories 78 | .serverless 79 | 80 | # IDE / Editor 81 | .idea 82 | 83 | # Service worker 84 | sw.* 85 | 86 | # macOS 87 | .DS_Store 88 | 89 | # Vim swap files 90 | *.swp 91 | -------------------------------------------------------------------------------- /packages/cna-template/template/nuxt/.husky/commit-msg: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . "$(dirname "$0")/_/husky.sh" 3 | <%_ if (pm === 'yarn') { _%> 4 | . "$(dirname "$0")/common.sh" 5 | <%_ } _%> 6 | 7 | <%= pm === 'yarn' ? 'yarn' : 'npx --no-install' %> commitlint --edit $1 8 | -------------------------------------------------------------------------------- /packages/cna-template/template/nuxt/.husky/common.sh: -------------------------------------------------------------------------------- 1 | command_exists () { 2 | command -v "$1" >/dev/null 2>&1 3 | } 4 | 5 | # Workaround for Windows 10, Git Bash and Yarn 6 | if command_exists winpty && test -t 1; then 7 | exec < /dev/tty 8 | fi 9 | -------------------------------------------------------------------------------- /packages/cna-template/template/nuxt/.husky/pre-commit: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . "$(dirname "$0")/_/husky.sh" 3 | <%_ if (pm === 'yarn') { _%> 4 | . "$(dirname "$0")/common.sh" 5 | <%_ } _%> 6 | 7 | <%= pm === 'yarn' ? 'yarn' : 'npx --no-install' %> lint-staged 8 | -------------------------------------------------------------------------------- /packages/cna-template/template/nuxt/components/NuxtLogo.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 12 | -------------------------------------------------------------------------------- /packages/cna-template/template/nuxt/components/Tutorial.vue: -------------------------------------------------------------------------------- 1 | 2 | 47 | 48 | 53 | -------------------------------------------------------------------------------- /packages/cna-template/template/nuxt/content/hello.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Getting started 3 | description: 'Empower your NuxtJS application with @nuxt/content module: write in a content/ directory and fetch your Markdown, JSON, YAML and CSV files through a MongoDB like API, acting as a Git-based Headless CMS.' 4 | --- 5 | 6 | Empower your NuxtJS application with `@nuxtjs/content` module: write in a `content/` directory and fetch your Markdown, JSON, YAML and CSV files through a MongoDB like API, acting as a **Git-based Headless CMS**. 7 | 8 | ## Writing content 9 | 10 | Learn how to write your `content/`, supporting Markdown, YAML, CSV and JSON: https://content.nuxtjs.org/writing. 11 | 12 | ## Fetching content 13 | 14 | Learn how to fetch your content with `$content`: https://content.nuxtjs.org/fetching. 15 | 16 | ## Displaying content 17 | 18 | Learn how to display your Markdown content with the `` component directly in your template: https://content.nuxtjs.org/displaying. -------------------------------------------------------------------------------- /packages/cna-template/template/nuxt/nuxt.config.js: -------------------------------------------------------------------------------- 1 | <%_ if (ui === 'vuetify') { _%>import colors from 'vuetify/es5/util/colors' 2 | 3 | <%_ } _%>export default { 4 | <%_ if (mode === 'spa') { _%> 5 | // Disable server-side rendering: https://go.nuxtjs.dev/ssr-mode 6 | ssr: false, 7 | 8 | <%_ } _%><%_ if (target === 'static') { _%> 9 | // Target: https://go.nuxtjs.dev/config-target 10 | target: '<%= target %>', 11 | 12 | <%_ } _%> 13 | // Global page headers: https://go.nuxtjs.dev/config-head 14 | head: { 15 | <%_ if (ui === 'vuetify') { _%> 16 | titleTemplate: '%s - <%= name %>', 17 | <%_ } _%> 18 | title: '<%= name %>', 19 | <%_ if (!pwa) { _%> 20 | htmlAttrs: { 21 | lang: 'en' 22 | }, 23 | <%_ } _%> 24 | meta: [ 25 | { charset: 'utf-8' }, 26 | { name: 'viewport', content: 'width=device-width, initial-scale=1' }, 27 | { hid: 'description', name: 'description', content: '' }, 28 | { name: 'format-detection', content: 'telephone=no' } 29 | ], 30 | link: [ 31 | { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' } 32 | ] 33 | }, 34 | 35 | // Global CSS: https://go.nuxtjs.dev/config-css 36 | css: [ 37 | <%_ if (ui === 'element-ui') { _%> 38 | 'element-ui/lib/theme-chalk/index.css' 39 | <%_ } else if (ui === 'view-ui') { _%> 40 | 'view-design/dist/styles/iview.css' 41 | <%_ } else if (ui === 'ant-design-vue') { _%> 42 | 'ant-design-vue/dist/antd.css' 43 | <%_ } else if (ui === 'balm-ui') { _%> 44 | 'balm-ui/dist/balm-ui.css' 45 | <%_ } else if (ui === 'tachyons') { _%> 46 | 'tachyons/css/tachyons.css' 47 | <%_ } else if (ui === 'vant') { _%> 48 | 'vant/lib/index.css' 49 | <%_ } else if (ui === 'primevue') { _%> 50 | 'primeflex/primeflex.css' 51 | <%_ } _%> 52 | ], 53 | 54 | // Plugins to run before rendering page: https://go.nuxtjs.dev/config-plugins 55 | plugins: [ 56 | <%_ if (ui === 'element-ui') { _%> 57 | '@/plugins/element-ui' 58 | <%_ } else if (ui === 'view-ui') { _%> 59 | '@/plugins/view-ui' 60 | <%_ } else if (ui === 'ant-design-vue') { _%> 61 | '@/plugins/antd-ui' 62 | <%_ } else if (ui === 'balm-ui') { _%> 63 | '@/plugins/balm-ui' 64 | <%_ } else if (ui === 'vant') { _%> 65 | '@/plugins/vant' 66 | <%_ } _%> 67 | ], 68 | 69 | // Auto import components: https://go.nuxtjs.dev/config-components 70 | components: true, 71 | 72 | // Modules for dev and build (recommended): https://go.nuxtjs.dev/config-modules 73 | buildModules: [ 74 | <%_ if (typescript) { _%> 75 | // https://go.nuxtjs.dev/typescript 76 | '@nuxt/typescript-build', 77 | <%_ } _%> 78 | <%_ if (eslint && !typescript) { _%> 79 | // https://go.nuxtjs.dev/eslint 80 | '@nuxtjs/eslint-module', 81 | <%_ } _%> 82 | <%_ if (stylelint) { _%> 83 | // https://go.nuxtjs.dev/stylelint 84 | '@nuxtjs/stylelint-module', 85 | <%_ } _%> 86 | <%_ if (ui === 'windicss') { _%> 87 | 'nuxt-windicss', 88 | <%_ } _%> 89 | <%_ if (ui === 'tailwind') { _%> 90 | // https://go.nuxtjs.dev/tailwindcss 91 | '@nuxtjs/tailwindcss', 92 | <%_ } else if (ui === 'vuetify') { _%> 93 | // https://go.nuxtjs.dev/vuetify 94 | '@nuxtjs/vuetify', 95 | <%_ } _%> 96 | ], 97 | 98 | // Modules: https://go.nuxtjs.dev/config-modules 99 | modules: [ 100 | <%_ if (ui === 'bootstrap') { _%> 101 | // https://go.nuxtjs.dev/bootstrap 102 | 'bootstrap-vue/nuxt', 103 | <%_ } else if (ui === 'buefy') { _%> 104 | // https://go.nuxtjs.dev/buefy 105 | 'nuxt-buefy', 106 | <%_ } else if (ui === 'oruga') { _%> 107 | // Doc: https://oruga.io/documentation/#nuxt 108 | '@oruga-ui/oruga/nuxt', 109 | <%_ } else if (ui === 'chakra-ui') { _%> 110 | // https://go.nuxtjs.dev/chakra 111 | '@chakra-ui/nuxt', 112 | // https://go.nuxtjs.dev/emotion 113 | '@nuxtjs/emotion', 114 | <%_ } else if (ui === 'primevue') { _%> 115 | // Doc: https://www.primefaces.org/primevue/showcase-v2/#/setup 116 | 'primevue/nuxt', 117 | <%_ } _%> 118 | <%_ if (axios) { _%> 119 | // https://go.nuxtjs.dev/axios 120 | '@nuxtjs/axios', 121 | <%_ } _%> 122 | <%_ if (pwa) { _%> 123 | // https://go.nuxtjs.dev/pwa 124 | '@nuxtjs/pwa', 125 | <%_ } _%> 126 | <%_ if (content) { _%> 127 | // https://go.nuxtjs.dev/content 128 | '@nuxt/content', 129 | <%_ } _%> 130 | ], 131 | <%_ if (axios) { _%> 132 | 133 | // Axios module configuration: https://go.nuxtjs.dev/config-axios 134 | axios: { 135 | // Workaround to avoid enforcing hard-coded localhost:3000: https://github.com/nuxt-community/axios-module/issues/308 136 | baseURL: '/', 137 | }, 138 | <%_ } _%> 139 | <%_ if (pwa) { _%> 140 | 141 | // PWA module configuration: https://go.nuxtjs.dev/pwa 142 | pwa: { 143 | manifest: { 144 | lang: 'en' 145 | } 146 | }, 147 | <%_ } _%> 148 | <%_ if (content) { _%> 149 | 150 | // Content module configuration: https://go.nuxtjs.dev/config-content 151 | content: {}, 152 | <%_ } _%> 153 | <%_ if (ui === 'vuetify') { _%> 154 | 155 | // Vuetify module configuration: https://go.nuxtjs.dev/config-vuetify 156 | vuetify: { 157 | customVariables: ['~/assets/variables.scss'], 158 | theme: { 159 | dark: true, 160 | themes: { 161 | dark: { 162 | primary: colors.blue.darken2, 163 | accent: colors.grey.darken3, 164 | secondary: colors.amber.darken3, 165 | info: colors.teal.lighten1, 166 | warning: colors.amber.base, 167 | error: colors.deepOrange.accent4, 168 | success: colors.green.accent3 169 | } 170 | } 171 | } 172 | }, 173 | <%_ } _%> 174 | 175 | // Build Configuration: https://go.nuxtjs.dev/config-build 176 | build: { 177 | <%_ if (ui === 'element-ui') { _%> 178 | transpile: [/^element-ui/], 179 | <%_ } else if (ui === 'primevue') { _%> 180 | // https://github.com/primefaces/primevue/issues/844 181 | transpile: ['primevue'], 182 | <%_ } _%> 183 | } 184 | } 185 | -------------------------------------------------------------------------------- /packages/cna-template/template/nuxt/package.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | apply (pkg, generator) { 3 | // edge 4 | const { cliOptions = {} } = generator.sao.opts 5 | const edge = cliOptions.edge ? '-edge' : '' 6 | if (edge) { 7 | delete pkg.dependencies.nuxt 8 | pkg.dependencies['nuxt-edge'] = 'latest' 9 | } 10 | 11 | const { features, language = [], linter = [] } = generator.answers 12 | 13 | // Linter 14 | const eslint = linter.includes('eslint') 15 | const lintStaged = linter.includes('lintStaged') 16 | const stylelint = linter.includes('stylelint') 17 | const prettier = linter.includes('prettier') 18 | const commitlint = linter.includes('commitlint') 19 | const lintScripts = { 20 | eslint: '<%= pmRun %> lint:js', 21 | stylelint: '<%= pmRun %> lint:style', 22 | prettier: '<%= pmRun %> lint:prettier' 23 | } 24 | const lintfixScripts = { 25 | // prettier before eslint to avoid conflicting rules like no-return-assign 26 | // without having to use prettier via eslint (plugin:prettier/recommended) 27 | prettier: 'prettier --write --list-different .', 28 | eslint: "<%= pmRun %> lint:js <%= pm === 'npm' ? '-- ' : '' %>--fix", 29 | stylelint: "<%= pmRun %> lint:style <%= pm === 'npm' ? '-- ' : '' %>--fix" 30 | } 31 | 32 | if (!eslint) { 33 | lintStaged && delete pkg['lint-staged']["*.{js,<%= typescript ? 'ts,' : '' %>vue}"] 34 | delete lintScripts.eslint 35 | delete lintfixScripts.eslint 36 | delete pkg.scripts['lint:js'] 37 | delete pkg.devDependencies['@nuxtjs/eslint-config'] 38 | delete pkg.devDependencies['@nuxtjs/eslint-module'] 39 | delete pkg.devDependencies['@babel/eslint-parser'] 40 | delete pkg.devDependencies.eslint 41 | delete pkg.devDependencies['eslint-plugin-nuxt'] 42 | delete pkg.devDependencies['eslint-plugin-vue'] 43 | } 44 | if (!lintStaged) { 45 | delete pkg['lint-staged'] 46 | delete pkg.devDependencies['lint-staged'] 47 | } 48 | if (!stylelint) { 49 | lintStaged && delete pkg['lint-staged']['*.{css,scss,sass,html,vue}'] 50 | delete lintScripts.stylelint 51 | delete lintfixScripts.stylelint 52 | delete pkg.scripts['lint:style'] 53 | delete pkg.devDependencies['@nuxtjs/stylelint-module'] 54 | delete pkg.devDependencies['postcss-html'] 55 | delete pkg.devDependencies.stylelint 56 | delete pkg.devDependencies['stylelint-config-standard'] 57 | delete pkg.devDependencies['stylelint-config-prettier'] 58 | delete pkg.devDependencies['stylelint-config-recommended-vue'] 59 | } 60 | if (!prettier) { 61 | lintStaged && delete pkg['lint-staged']['*.**'] 62 | delete pkg.scripts['lint:prettier'] 63 | delete lintScripts.prettier 64 | delete lintfixScripts.prettier 65 | delete pkg.devDependencies['eslint-config-prettier'] 66 | delete pkg.devDependencies['stylelint-config-prettier'] 67 | delete pkg.devDependencies.prettier 68 | } 69 | if (!commitlint) { 70 | delete pkg.devDependencies['@commitlint/config-conventional'] 71 | delete pkg.devDependencies['@commitlint/cli'] 72 | } 73 | 74 | const lintScript = Object.values(lintScripts).join(' && ') 75 | if (lintScript) { 76 | pkg.scripts.lint = lintScript 77 | } 78 | const lintfixScript = Object.values(lintfixScripts).join(' && ') 79 | if (lintfixScript) { 80 | pkg.scripts.lintfix = lintfixScript 81 | } 82 | 83 | if (!lintStaged && !commitlint) { 84 | delete pkg.devDependencies.husky 85 | delete pkg.scripts.prepare 86 | } else { 87 | // Move prepare to make it the last script 88 | const prepare = pkg.scripts.prepare 89 | delete pkg.scripts.prepare 90 | pkg.scripts.prepare = prepare 91 | } 92 | 93 | // Modules 94 | if (!features.includes('axios')) { 95 | delete pkg.dependencies['@nuxtjs/axios'] 96 | } 97 | if (!features.includes('pwa')) { 98 | delete pkg.dependencies['@nuxtjs/pwa'] 99 | } 100 | if (!features.includes('content')) { 101 | delete pkg.dependencies['@nuxt/content'] 102 | } 103 | 104 | // TS 105 | const typescript = language.includes('ts') 106 | 107 | if (!typescript) { 108 | delete pkg.devDependencies['@nuxt/types'] 109 | delete pkg.devDependencies['@nuxt/typescript-build'] 110 | } 111 | if (!typescript || !eslint) { 112 | delete pkg.devDependencies['@nuxtjs/eslint-config-typescript'] 113 | } 114 | if (typescript && eslint) { 115 | delete pkg.devDependencies['@nuxtjs/eslint-config'] 116 | } 117 | return pkg 118 | } 119 | } 120 | -------------------------------------------------------------------------------- /packages/cna-template/template/nuxt/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "scripts": { 3 | "dev": "nuxt", 4 | "build": "nuxt build", 5 | "start": "nuxt start", 6 | "generate": "nuxt generate", 7 | "lint:js": "eslint --ext \".js<%= typescript ? ',.ts' : '' %>,.vue\" --ignore-path .gitignore .", 8 | "lint:style": "stylelint \"**/*.{css,scss,sass,html,vue}\" --ignore-path .gitignore", 9 | "lint:prettier": "prettier --check .", 10 | "prepare": "husky install" 11 | }, 12 | "lint-staged": { 13 | "*.{js,<%= typescript ? 'ts,' : '' %>vue}": "eslint --cache", 14 | "*.{css,scss,sass,html,vue}": "stylelint", 15 | "*.**": "prettier --check --ignore-unknown" 16 | }, 17 | "dependencies": { 18 | "@nuxt/content": "^1.0.0", 19 | "@nuxtjs/axios": "^5.13.6", 20 | "@nuxtjs/pwa": "^3.3.5", 21 | "core-js": "^3.25.3", 22 | "nuxt": "^2.15.8", 23 | "vue": "^2.7.10", 24 | "vue-server-renderer": "^2.7.10", 25 | "vue-template-compiler": "^2.7.10" 26 | }, 27 | "devDependencies": { 28 | "@babel/eslint-parser": "^7.19.1", 29 | "@commitlint/cli": "^17.1.2", 30 | "@commitlint/config-conventional": "^17.1.0", 31 | "@nuxt/types": "^2.15.8", 32 | "@nuxt/typescript-build": "^2.1.0", 33 | "@nuxtjs/eslint-config": "^11.0.0", 34 | "@nuxtjs/eslint-config-typescript": "^11.0.0", 35 | "@nuxtjs/eslint-module": "^3.1.0", 36 | "@nuxtjs/stylelint-module": "^4.1.0", 37 | "eslint": "^8.24.0", 38 | "eslint-config-prettier": "^8.5.0", 39 | "eslint-plugin-nuxt": "^4.0.0", 40 | "eslint-plugin-vue": "^9.5.1", 41 | "husky": "^8.0.1", 42 | "lint-staged": "^13.0.3", 43 | "postcss-html": "^1.5.0", 44 | "prettier": "^2.7.1", 45 | "stylelint": "^14.13.0", 46 | "stylelint-config-prettier": "^9.0.3", 47 | "stylelint-config-recommended-vue": "^1.4.0", 48 | "stylelint-config-standard": "^28.0.0" 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /packages/cna-template/template/nuxt/pages/index.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | <%_ if (typescript) { _%> 6 | 13 | <%_ } else { _%> 14 | 19 | <%_ } _%> 20 | -------------------------------------------------------------------------------- /packages/cna-template/template/nuxt/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nuxt/create-nuxt-app/2f04969c2f30b16b85a93bea52e489109c0a7210/packages/cna-template/template/nuxt/static/favicon.ico -------------------------------------------------------------------------------- /packages/cna-template/template/nuxt/static/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nuxt/create-nuxt-app/2f04969c2f30b16b85a93bea52e489109c0a7210/packages/cna-template/template/nuxt/static/icon.png -------------------------------------------------------------------------------- /packages/cna-template/template/nuxt/store/README.md: -------------------------------------------------------------------------------- 1 | # STORE 2 | 3 | **This directory is not required, you can delete it if you don't want to use it.** 4 | 5 | This directory contains your Vuex Store files. 6 | Vuex Store option is implemented in the Nuxt.js framework. 7 | 8 | Creating a file in this directory automatically activates the option in the framework. 9 | 10 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/vuex-store). 11 | -------------------------------------------------------------------------------- /packages/cna-template/template/semantic.yml: -------------------------------------------------------------------------------- 1 | # Always validate the PR title AND all the commits 2 | titleAndCommits: true 3 | # Allows use of Merge commits (eg on github: "Merge branch 'master' into feature/ride-unicorns") 4 | # this is only relevant when using commitsOnly: true (or titleAndCommits: true) 5 | allowMergeCommits: true 6 | -------------------------------------------------------------------------------- /packages/cna-template/template/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ES2018", 4 | "module": "ESNext", 5 | "moduleResolution": "Node", 6 | "lib": [ 7 | "ESNext", 8 | "ESNext.AsyncIterable", 9 | "DOM" 10 | ], 11 | "esModuleInterop": true, 12 | "allowJs": true, 13 | "sourceMap": true, 14 | "strict": true, 15 | "noEmit": true, 16 | "experimentalDecorators": true, 17 | "baseUrl": ".", 18 | "paths": { 19 | "~/*": [ 20 | "./*" 21 | ], 22 | "@/*": [ 23 | "./*" 24 | ] 25 | }, 26 | "types": [ 27 | "@nuxt/types", 28 | <%_ if (axios) { _%> 29 | "@nuxtjs/axios", 30 | <%_ } _%> 31 | <%_ if (content) { _%> 32 | "@nuxt/content", 33 | <%_ } _%> 34 | "@types/node" 35 | ] 36 | }, 37 | "exclude": [ 38 | "node_modules", 39 | ".nuxt", 40 | "dist" 41 | ] 42 | } 43 | -------------------------------------------------------------------------------- /packages/create-nuxt-app/.npmignore: -------------------------------------------------------------------------------- 1 | # Dependencies 2 | node_modules 3 | 4 | # Logs 5 | npm-debug.log 6 | yarn-error.log 7 | 8 | # Coverage 9 | coverage 10 | .nyc_output 11 | 12 | # Editors 13 | .vscode 14 | .idea 15 | 16 | # Misc 17 | .DS_Store 18 | -------------------------------------------------------------------------------- /packages/create-nuxt-app/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Log 2 | 3 | All notable changes to this project will be documented in this file. 4 | See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. 5 | 6 | # [5.0.0](https://github.com/nuxt/create-nuxt-app/compare/v4.0.0...v5.0.0) (2022-10-02) 7 | 8 | 9 | ### Bug Fixes 10 | 11 | * **ava:** vue-template-compiler version conflict on require-extension-hooks-vue ([6757cb8](https://github.com/nuxt/create-nuxt-app/commit/6757cb8844a1fd50b3fd7d6efc9711363758f6e5)) 12 | 13 | 14 | ### chore 15 | 16 | * drop support for Node.js 12 ([9f8b21c](https://github.com/nuxt/create-nuxt-app/commit/9f8b21ccfc9050e57ad8ac4b3c2251fcd27cbce1)) 17 | 18 | 19 | ### Features 20 | 21 | * **template:** support pug template ([#960](https://github.com/nuxt/create-nuxt-app/issues/960)) ([49c7a80](https://github.com/nuxt/create-nuxt-app/commit/49c7a80070c5357b308ddea3fcb24aebd2c1bed9)) 22 | 23 | 24 | ### BREAKING CHANGES 25 | 26 | * minimum Node.js version is 14 27 | 28 | 29 | 30 | 31 | 32 | # [4.0.0](https://github.com/nuxt/create-nuxt-app/compare/v3.7.1...v4.0.0) (2021-12-12) 33 | 34 | 35 | ### Bug Fixes 36 | 37 | * **axios:** avoid hard-coded base URL localhost:3000, fixes [#641](https://github.com/nuxt/create-nuxt-app/issues/641) ([#830](https://github.com/nuxt/create-nuxt-app/issues/830)) ([93297e5](https://github.com/nuxt/create-nuxt-app/commit/93297e55a142cebb61c09ac1f7f7f3ca68c5a2da)) 38 | * **husky:** revert stdin tty workaround of [#766](https://github.com/nuxt/create-nuxt-app/issues/766) for npm ([#825](https://github.com/nuxt/create-nuxt-app/issues/825)) ([1520453](https://github.com/nuxt/create-nuxt-app/commit/152045398e95dc08e5a38f35d4c8ea7ec1cff266)) 39 | * **primevue:** fix primevue nuxt module name ([c12c1ee](https://github.com/nuxt/create-nuxt-app/commit/c12c1eed9f4b5201bc5e785813ae7f1bbada5e3f)) 40 | * **stylelint:** unknown word on scss file ([9461143](https://github.com/nuxt/create-nuxt-app/commit/94611434d63fc334260592c2e25b06a1169695f4)) 41 | 42 | 43 | ### chore 44 | 45 | * remove node 10 support ([#905](https://github.com/nuxt/create-nuxt-app/issues/905)) ([a12df38](https://github.com/nuxt/create-nuxt-app/commit/a12df38fccd45103cdc64f770b5a7dca3bab88a8)) 46 | 47 | 48 | ### Features 49 | 50 | * add lintfix and prettier scripts ([#829](https://github.com/nuxt/create-nuxt-app/issues/829)) ([f3e61cd](https://github.com/nuxt/create-nuxt-app/commit/f3e61cdad360e8837c66555b763bf4e29076c8a2)), closes [#827](https://github.com/nuxt/create-nuxt-app/issues/827) 51 | * add primevue ui framework ([#859](https://github.com/nuxt/create-nuxt-app/issues/859)) ([0fa8a67](https://github.com/nuxt/create-nuxt-app/commit/0fa8a67317491e0543799b07fdee58c70eef1545)) 52 | * **cli:** add user-friendly exit for unknown options ([#854](https://github.com/nuxt/create-nuxt-app/issues/854)) ([b734105](https://github.com/nuxt/create-nuxt-app/commit/b73410519234c3ce3b97e5032d78d5e235b6b8f9)) 53 | * **frameworks:** remove framevuerk ([#904](https://github.com/nuxt/create-nuxt-app/issues/904)) ([c54809d](https://github.com/nuxt/create-nuxt-app/commit/c54809d1b0553bc0b942f9393714284df4b911f9)) 54 | 55 | 56 | ### BREAKING CHANGES 57 | 58 | * minimum node version is 12 59 | 60 | 61 | 62 | 63 | 64 | ## [3.7.1](https://github.com/nuxt/create-nuxt-app/compare/v3.7.0...v3.7.1) (2021-06-29) 65 | 66 | **Note:** Version bump only for package create-nuxt-app 67 | 68 | 69 | 70 | 71 | 72 | # [3.7.0](https://github.com/nuxt/create-nuxt-app/compare/v3.6.0...v3.7.0) (2021-06-27) 73 | 74 | 75 | ### Bug Fixes 76 | 77 | * **cli:** rephrase not empty directory error message ([#778](https://github.com/nuxt/create-nuxt-app/issues/778)) ([8186168](https://github.com/nuxt/create-nuxt-app/commit/81861685b08cdb3887fcf30f3708b387b0e1f017)) 78 | * **husky:** stdin is not a tty in git bash ([#766](https://github.com/nuxt/create-nuxt-app/issues/766)) ([807546d](https://github.com/nuxt/create-nuxt-app/commit/807546d65f107378c15503c5f1585b9131a7e469)) 79 | * **template:** nodemismatch error in ios safari ([#770](https://github.com/nuxt/create-nuxt-app/issues/770)) ([41463d1](https://github.com/nuxt/create-nuxt-app/commit/41463d16912e0026ac533cb0b8441cb7a9e5c8b8)) 80 | * **templates:** remove not being maintained vuesax ([#795](https://github.com/nuxt/create-nuxt-app/issues/795)) ([e7211b3](https://github.com/nuxt/create-nuxt-app/commit/e7211b3c1d2a683c2376cfa8f2437555ccf526c7)) 81 | * **templates:** remove not recommended eslint-plugin-prettier ([#797](https://github.com/nuxt/create-nuxt-app/issues/797)) ([5d8c498](https://github.com/nuxt/create-nuxt-app/commit/5d8c49878c98cc2842b65fa8edaa201d9d3bc0aa)) 82 | * add vuetify to dependencies ([#787](https://github.com/nuxt/create-nuxt-app/issues/787)) ([3610d12](https://github.com/nuxt/create-nuxt-app/commit/3610d123fb9f2725bf7fd9c15137568159240c6d)) 83 | 84 | 85 | ### Features 86 | 87 | * **create-nuxt-app:** add --overwrite-dir flag ([#799](https://github.com/nuxt/create-nuxt-app/issues/799)) ([e45bdbb](https://github.com/nuxt/create-nuxt-app/commit/e45bdbb433fbb8d242630f8062dc5d76c65f8f2f)) 88 | * update design ([#792](https://github.com/nuxt/create-nuxt-app/issues/792)) ([b7d2db9](https://github.com/nuxt/create-nuxt-app/commit/b7d2db9f10ff2bb1fedbe65800f1ac43cb84fad1)) 89 | * **template:** update to husky v6 ([#715](https://github.com/nuxt/create-nuxt-app/issues/715)) ([5ee3feb](https://github.com/nuxt/create-nuxt-app/commit/5ee3feb3dd9ae776f335d835c93ad9f609344a8b)) 90 | 91 | 92 | ### Performance Improvements 93 | 94 | * use npm ci instead of npm i in GH Action Workflow ([#762](https://github.com/nuxt/create-nuxt-app/issues/762)) ([8c9b77d](https://github.com/nuxt/create-nuxt-app/commit/8c9b77deb7ef64f5a4b7a484c4a9e3ef4d0a3208)) 95 | 96 | 97 | 98 | 99 | 100 | # [3.6.0](https://github.com/nuxt/create-nuxt-app/compare/v3.5.2...v3.6.0) (2021-03-19) 101 | 102 | 103 | ### Bug Fixes 104 | 105 | * **prompts:** change JAMstack to Jamstack ([#742](https://github.com/nuxt/create-nuxt-app/issues/742)) ([904a26f](https://github.com/nuxt/create-nuxt-app/commit/904a26fad2a584fc722cda62ecc04dafe3a4ead4)) 106 | * **ts:** remove @nuxt/typescript-runtime ([#721](https://github.com/nuxt/create-nuxt-app/issues/721)) ([cbd58dc](https://github.com/nuxt/create-nuxt-app/commit/cbd58dc3242c90668f771d9d68bc5e48606a4274)) 107 | * **vuesax:** add boxicons ([#722](https://github.com/nuxt/create-nuxt-app/issues/722)) ([d121169](https://github.com/nuxt/create-nuxt-app/commit/d12116967a7bed3d96d4543bdd56561c4126e72c)) 108 | * update sao link ([#707](https://github.com/nuxt/create-nuxt-app/issues/707)) ([3f548e5](https://github.com/nuxt/create-nuxt-app/commit/3f548e5de4a6fec4be2b987795b1a5bf29da4b4e)) 109 | 110 | 111 | ### Features 112 | 113 | * Add CircleCI and Travis CI ([#737](https://github.com/nuxt/create-nuxt-app/issues/737)) ([1cfe0d4](https://github.com/nuxt/create-nuxt-app/commit/1cfe0d4b161593db986995bb2e677700ac83f457)) 114 | * Add nuxt windicss. ([#753](https://github.com/nuxt/create-nuxt-app/issues/753)) ([a0da946](https://github.com/nuxt/create-nuxt-app/commit/a0da9468f0f95b4577e1dbbc7bb303396d99c1b8)) 115 | * add vant ui framework ([#710](https://github.com/nuxt/create-nuxt-app/issues/710)) ([37bfea3](https://github.com/nuxt/create-nuxt-app/commit/37bfea3a7f16e2e92941053b8bff40e5ed414abf)) 116 | * update @nuxtjs/tailwindcss to v4 ([#751](https://github.com/nuxt/create-nuxt-app/issues/751)) ([691bd8a](https://github.com/nuxt/create-nuxt-app/commit/691bd8a1d2cbcc3807c7b2acb19f7369216bd579)) 117 | * update iview to viewui ([#714](https://github.com/nuxt/create-nuxt-app/issues/714)) ([43da555](https://github.com/nuxt/create-nuxt-app/commit/43da55582dc87bb1a1f80747b70181bc6f5fb174)) 118 | * upgrade @oruga-ui/oruga to version 0.3.3 ([#717](https://github.com/nuxt/create-nuxt-app/issues/717)) ([77f948c](https://github.com/nuxt/create-nuxt-app/commit/77f948cca6e3eab3c16e7ed8ed8b1539a726fb27)) 119 | 120 | 121 | 122 | 123 | 124 | ## [3.5.2](https://github.com/nuxt/create-nuxt-app/compare/v3.5.1...v3.5.2) (2021-01-28) 125 | 126 | **Note:** Version bump only for package create-nuxt-app 127 | 128 | 129 | 130 | 131 | 132 | ## [3.5.1](https://github.com/nuxt/create-nuxt-app/compare/v3.5.0...v3.5.1) (2021-01-28) 133 | 134 | 135 | ### Bug Fixes 136 | 137 | * **ui:** remove @nuxtjs/bulma ([#695](https://github.com/nuxt/create-nuxt-app/issues/695)) ([371bb59](https://github.com/nuxt/create-nuxt-app/commit/371bb5999acaf68bf29acc994ded130bd6c0c9ce)) 138 | 139 | 140 | 141 | 142 | 143 | # [3.5.0](https://github.com/nuxt/create-nuxt-app/compare/v3.4.0...v3.5.0) (2021-01-17) 144 | 145 | 146 | ### Bug Fixes 147 | 148 | * **link:** add eslint-plugin-vue to devDependency ([7cef146](https://github.com/nuxt/create-nuxt-app/commit/7cef1461933464294857ebad31ea0574d2f23e29)) 149 | * **lint:** use double quotes for glob syntax ([#684](https://github.com/nuxt/create-nuxt-app/issues/684)) ([2e1aff8](https://github.com/nuxt/create-nuxt-app/commit/2e1aff819eac10e7a18588917b06ec5bc611e968)) 150 | 151 | 152 | ### Features 153 | 154 | * add BalmUI to UI framework ([#636](https://github.com/nuxt/create-nuxt-app/issues/636)) ([d57c992](https://github.com/nuxt/create-nuxt-app/commit/d57c992b966f2ff0c70cfbfb2eac95c5a4ed65d9)) 155 | * **pwa:** add default language to nuxt.config ([#653](https://github.com/nuxt/create-nuxt-app/issues/653)) ([31dd1a3](https://github.com/nuxt/create-nuxt-app/commit/31dd1a39bb134738a04de93961e6dea16807ef8f)) 156 | * add Nightwatch.js as test framework option ([#572](https://github.com/nuxt/create-nuxt-app/issues/572)) ([75985e4](https://github.com/nuxt/create-nuxt-app/commit/75985e47a841fe8898f6f17b265fe6566984db8e)) 157 | * add Oruga as UI framework option ([#635](https://github.com/nuxt/create-nuxt-app/issues/635)) ([b6facaf](https://github.com/nuxt/create-nuxt-app/commit/b6facaf6383c30699879f7b5e4e2433bf22adfa7)) 158 | * add route page and content fetch ([#632](https://github.com/nuxt/create-nuxt-app/issues/632)) ([d045b20](https://github.com/nuxt/create-nuxt-app/commit/d045b200e69983b56a5ebc679fd35f7c00ea07da)) 159 | 160 | 161 | 162 | 163 | 164 | # [3.4.0](https://github.com/nuxt/create-nuxt-app/compare/v3.3.0...v3.4.0) (2020-10-06) 165 | 166 | 167 | ### Bug Fixes 168 | 169 | * **vuetify:** updated layout to be on par with vuetify 2.x ([#619](https://github.com/nuxt/create-nuxt-app/issues/619)) ([4ceb4c1](https://github.com/nuxt/create-nuxt-app/commit/4ceb4c176d9a829d67485e1a099001f7b743ea60)) 170 | 171 | 172 | ### Features 173 | 174 | * add GitHub Action out-of-the-box ([#621](https://github.com/nuxt/create-nuxt-app/issues/621)) ([ad67d2f](https://github.com/nuxt/create-nuxt-app/commit/ad67d2f4dbd01a08be7d01056e626d26c03e0951)) 175 | 176 | 177 | 178 | 179 | 180 | # [3.3.0](https://github.com/nuxt/create-nuxt-app/compare/v3.2.0...v3.3.0) (2020-09-17) 181 | 182 | 183 | ### Bug Fixes 184 | 185 | * **template:** bump typescript packages versions ([#599](https://github.com/nuxt/create-nuxt-app/issues/599)) ([b00e836](https://github.com/nuxt/create-nuxt-app/commit/b00e836b43cd8f0d7cb459be59c227efc3503cd3)) 186 | 187 | 188 | ### Features 189 | 190 | * add commitlint as linting tools option ([#592](https://github.com/nuxt/create-nuxt-app/issues/592)) ([33817a8](https://github.com/nuxt/create-nuxt-app/commit/33817a8bfcc4162e32030de4232defd1f99b0c33)) 191 | * add support for dependabot ([#604](https://github.com/nuxt/create-nuxt-app/issues/604)) ([80e04e9](https://github.com/nuxt/create-nuxt-app/commit/80e04e9644ea26b2b7243d3cdb5ee968bb57c511)) 192 | * prompt for git ([#596](https://github.com/nuxt/create-nuxt-app/issues/596)) ([ec431e8](https://github.com/nuxt/create-nuxt-app/commit/ec431e8291044c537e3bd0a321b5e516c2ec5a0c)) 193 | * use `core-js@3` by default ([#594](https://github.com/nuxt/create-nuxt-app/issues/594)) ([146a312](https://github.com/nuxt/create-nuxt-app/commit/146a3122a20dd235608a1f513ec3e83ecae1aa40)) 194 | 195 | 196 | 197 | 198 | 199 | # [3.2.0](https://github.com/nuxt/create-nuxt-app/compare/v3.1.0...v3.2.0) (2020-07-27) 200 | 201 | 202 | ### Bug Fixes 203 | 204 | * **template:** fix package.json dev script for typescript ([#568](https://github.com/nuxt/create-nuxt-app/issues/568)) ([1f64e5a](https://github.com/nuxt/create-nuxt-app/commit/1f64e5afbb973422a34c7a64252cea9a3411664c)) 205 | * show up an appropriate warning if the target path exists and is non-empty ([#570](https://github.com/nuxt/create-nuxt-app/issues/570)) ([21d6729](https://github.com/nuxt/create-nuxt-app/commit/21d6729c64e608bf53d87868b372d2e0d1041587)) 206 | 207 | 208 | ### Features 209 | 210 | * **template:** update typescript ([#567](https://github.com/nuxt/create-nuxt-app/issues/567)) ([251c50d](https://github.com/nuxt/create-nuxt-app/commit/251c50d7589dd2568252ebedefebda9779eca33f)) 211 | * add chakra-ui-vue ([#573](https://github.com/nuxt/create-nuxt-app/issues/573)) ([c9ede63](https://github.com/nuxt/create-nuxt-app/commit/c9ede63abdad60462fd3280fbd211a857e8fe1e8)) 212 | 213 | 214 | 215 | 216 | 217 | # [3.1.0](https://github.com/nuxt-community/create-nuxt-app/compare/v3.0.0...v3.1.0) (2020-06-22) 218 | 219 | 220 | ### Features 221 | 222 | * prepare for Nuxt 2.13 ([#529](https://github.com/nuxt-community/create-nuxt-app/issues/529)) ([47aa7c1](https://github.com/nuxt-community/create-nuxt-app/commit/47aa7c1eaf743118bb0b0d8fca78ed58bfe30b05)), closes [#509](https://github.com/nuxt-community/create-nuxt-app/issues/509) [#513](https://github.com/nuxt-community/create-nuxt-app/issues/513) [#544](https://github.com/nuxt-community/create-nuxt-app/issues/544) [#547](https://github.com/nuxt-community/create-nuxt-app/issues/547) [#540](https://github.com/nuxt-community/create-nuxt-app/issues/540) [#541](https://github.com/nuxt-community/create-nuxt-app/issues/541) 223 | 224 | 225 | 226 | 227 | 228 | # [3.0.0](https://github.com/nuxt/create-nuxt-app/compare/v2.16.0...v3.0.0) (2020-06-18) 229 | 230 | 231 | ### Bug Fixes 232 | 233 | * **jest:** downgrate vue-jest to v3 ([8a75b51](https://github.com/nuxt/create-nuxt-app/commit/8a75b51986ff7aa5dd4fb4135b5991b723594f89)) 234 | * **prettier:** add stylelint-config-prettier ([50aa285](https://github.com/nuxt/create-nuxt-app/commit/50aa2851f80fc177add7185d485758dceca29d7d)) 235 | 236 | 237 | ### Features 238 | 239 | * **template:** remove dotenv module ([#544](https://github.com/nuxt/create-nuxt-app/issues/544)) ([ba93891](https://github.com/nuxt/create-nuxt-app/commit/ba938913bab21a96f29678c91897a6294003f32d)) 240 | * add content module ([#540](https://github.com/nuxt/create-nuxt-app/issues/540)) ([9aba2f6](https://github.com/nuxt/create-nuxt-app/commit/9aba2f692e716e7e0e027cca447fa2c260df2a40)) 241 | 242 | 243 | 244 | 245 | 246 | # [2.16.0](https://github.com/nuxt-community/create-nuxt-app/compare/v2.15.0...v2.16.0) (2020-05-18) 247 | 248 | 249 | ### Bug Fixes 250 | 251 | * update snapshots ([b5fd723](https://github.com/nuxt-community/create-nuxt-app/commit/b5fd723f40c27489838984aba45ed15b58a100c8)) 252 | * update snapshots ([2b26088](https://github.com/nuxt-community/create-nuxt-app/commit/2b26088546a4de0de4adae177ebf5749a2825cc7)) 253 | * **ava:** e2e test hangs until timeout ([8393524](https://github.com/nuxt-community/create-nuxt-app/commit/8393524cd99db4847c339fac5e594419cba7f6bb)) 254 | * update prompts to add static in universal ([#462](https://github.com/nuxt-community/create-nuxt-app/issues/462)) ([71d84b1](https://github.com/nuxt-community/create-nuxt-app/commit/71d84b16a57147f159ce0c858a0b7bfa757d7a4b)) 255 | 256 | 257 | ### Features 258 | 259 | * add WebdriverIO as test framework option ([#528](https://github.com/nuxt-community/create-nuxt-app/issues/528)) ([9a1497f](https://github.com/nuxt-community/create-nuxt-app/commit/9a1497f04e446a3b91b3eed1fef6273ad717b2f0)) 260 | * **deps:** update eslint to v7 ([916f288](https://github.com/nuxt-community/create-nuxt-app/commit/916f2887052d97272ed25c5f339a21286520e95b)) 261 | * **lint:** add stylelint-config-standard and separate lint scripts ([#493](https://github.com/nuxt-community/create-nuxt-app/issues/493)) ([8034d68](https://github.com/nuxt-community/create-nuxt-app/commit/8034d68109231b62e134f1fa06eb1ae72f9fd8ed)) 262 | * **template:** remove author and description from prompt ([#466](https://github.com/nuxt-community/create-nuxt-app/issues/466)) ([1d7d0c4](https://github.com/nuxt-community/create-nuxt-app/commit/1d7d0c4cdfdf8d2a04fd7afb12937bb3fcf61472)) 263 | * **templates:** deprecate server templates ([#501](https://github.com/nuxt-community/create-nuxt-app/issues/501)) ([c60f39e](https://github.com/nuxt-community/create-nuxt-app/commit/c60f39e9fee49bcd4306217ec732b45d9d706c27)) 264 | * migrate to monorepo ([#458](https://github.com/nuxt-community/create-nuxt-app/issues/458)) ([64991bb](https://github.com/nuxt-community/create-nuxt-app/commit/64991bba05b208e5078c8101c5adac55f2100ff2)) 265 | * minimum required nodejs version is 10.20.0 ([33fbf49](https://github.com/nuxt-community/create-nuxt-app/commit/33fbf49aabd27fae7b4ee4e23e2e3a14357b137c)) 266 | * **template:** support package.json and handler ([#467](https://github.com/nuxt-community/create-nuxt-app/issues/467)) ([ff37dc8](https://github.com/nuxt-community/create-nuxt-app/commit/ff37dc85672f55b2441ef6612b5917ca0b32b4f5)) 267 | 268 | 269 | 270 | 271 | 272 | # Changelog 273 | 274 | All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. 275 | 276 | ## [2.15.0](https://github.com/nuxt/create-nuxt-app/compare/v2.14.0...v2.15.0) (2020-03-17) 277 | 278 | 279 | ### Bug Fixes 280 | 281 | * **ava:** no tests found in test/ava.setup.js ([#426](https://github.com/nuxt/create-nuxt-app/issues/426)) ([c1afad4](https://github.com/nuxt/create-nuxt-app/commit/c1afad4)) 282 | 283 | 284 | ### Features 285 | 286 | * add typescript support using typescript-build ([#328](https://github.com/nuxt/create-nuxt-app/issues/328)) ([e4b9cd8](https://github.com/nuxt/create-nuxt-app/commit/e4b9cd8)) 287 | 288 | ## [2.14.0](https://github.com/nuxt/create-nuxt-app/compare/v2.13.0...v2.14.0) (2020-02-09) 289 | 290 | 291 | ### Features 292 | 293 | * **eslint:** upgrade @nuxtjs/eslint-config to v2 ([85b368b](https://github.com/nuxt/create-nuxt-app/commit/85b368b6cfbe768f8de4cbe3d4820bf5a787f68b)) 294 | 295 | 296 | ### Bug Fixes 297 | 298 | * upgrade lint-staged packages ([e10fe52](https://github.com/nuxt/create-nuxt-app/commit/e10fe520c79a98467c4de976e1d46ea106099f19)) 299 | * upgrade prettier packages ([79075b0](https://github.com/nuxt/create-nuxt-app/commit/79075b0fd304c0a5dd5d9e5ce3a09bf193e6f986)) 300 | 301 | ## [2.13.0](https://github.com/nuxt/create-nuxt-app/compare/v2.12.0...v2.13.0) (2020-02-09) 302 | 303 | 304 | ### Features 305 | 306 | * **ava:** add support for ava v3 ([#414](https://github.com/nuxt/create-nuxt-app/issues/414)) ([0e14a6f](https://github.com/nuxt/create-nuxt-app/commit/0e14a6fb94e0cd40dcb06ba3dd4116b95f60b851)) 307 | * add semantic pull request support ([#405](https://github.com/nuxt/create-nuxt-app/issues/405)) ([35728ee](https://github.com/nuxt/create-nuxt-app/commit/35728ee328265239d4818cf3ff9c21b3e04b83b4)) 308 | * add stylelint to lint-staged ([33051e4](https://github.com/nuxt/create-nuxt-app/commit/33051e461e5c5c4984d87f0734cf2e22e09fda4d)) 309 | * add Vuesax framework ui ([#424](https://github.com/nuxt/create-nuxt-app/issues/424)) ([952dc47](https://github.com/nuxt/create-nuxt-app/commit/952dc4786428e00a675167f42a527cba56e28be0)) 310 | 311 | 312 | ### Bug Fixes 313 | 314 | * **template:** Stylelint config ([#387](https://github.com/nuxt/create-nuxt-app/issues/387)) ([28abd48](https://github.com/nuxt/create-nuxt-app/commit/28abd48e46dc5ca77ce880d4779428c8b2c9a01e)) 315 | * nuxt.ready is not called in dev mode ([441bb5b](https://github.com/nuxt/create-nuxt-app/commit/441bb5bd8b1cc6566202c59fb4e2f8dcb37290da)) 316 | * stylelint config rules is object ([6a6415e](https://github.com/nuxt/create-nuxt-app/commit/6a6415ebc0f94404d442134bf762a7728417fca5)) 317 | * **templates:** Vuetify copyright year ([#415](https://github.com/nuxt/create-nuxt-app/issues/415)) ([1f6d68f](https://github.com/nuxt/create-nuxt-app/commit/1f6d68fe045127acfdff326c8009dc681b57a01c)) 318 | 319 | ## [2.12.0](https://github.com/nuxt/create-nuxt-app/compare/v2.11.1...v2.12.0) (2019-11-24) 320 | 321 | 322 | ### Features 323 | 324 | * add dotenv module ([#358](https://github.com/nuxt/create-nuxt-app/issues/358)) ([40dd947](https://github.com/nuxt/create-nuxt-app/commit/40dd947dc2342dd3358adf92c4a912a4cf293a48)) 325 | * add stylelint module ([#278](https://github.com/nuxt/create-nuxt-app/issues/278)) ([18740f8](https://github.com/nuxt/create-nuxt-app/commit/18740f86eb2afd3226d277b42000e6ab21e94deb)) 326 | * update logo component with the new nuxt logo ([#363](https://github.com/nuxt/create-nuxt-app/issues/363)) ([b5a4417](https://github.com/nuxt/create-nuxt-app/commit/b5a4417bcc56aa7e7fec571b3baf4161db63f634)) 327 | 328 | ### [2.11.1](https://github.com/nuxt/create-nuxt-app/compare/v2.11.0...v2.11.1) (2019-09-30) 329 | 330 | 331 | ### Bug Fixes 332 | 333 | * add prompts.js into npm package ([#352](https://github.com/nuxt/create-nuxt-app/issues/352)) ([fef1a2e](https://github.com/nuxt/create-nuxt-app/commit/fef1a2e)) 334 | 335 | ## [2.11.0](https://github.com/nuxt/create-nuxt-app/compare/v2.10.1...v2.11.0) (2019-09-30) 336 | 337 | 338 | ### Bug Fixes 339 | 340 | * **tests:** update babel config for ava ([#342](https://github.com/nuxt/create-nuxt-app/issues/342)) ([a257561](https://github.com/nuxt/create-nuxt-app/commit/a257561)) 341 | * update snapshots ([10ad76f](https://github.com/nuxt/create-nuxt-app/commit/10ad76f)) 342 | 343 | 344 | ### Features 345 | 346 | * Add e2e testing support using Ava ([#303](https://github.com/nuxt/create-nuxt-app/issues/303)) ([4d8fe95](https://github.com/nuxt/create-nuxt-app/commit/4d8fe95)) 347 | * add support for semantic-pull-requests ([#322](https://github.com/nuxt/create-nuxt-app/issues/322)) ([5af63c0](https://github.com/nuxt/create-nuxt-app/commit/5af63c0)) 348 | * answers option ([#347](https://github.com/nuxt/create-nuxt-app/issues/347)) ([75db75e](https://github.com/nuxt/create-nuxt-app/commit/75db75e)) 349 | * bump `bootstrap-vue` to v2.0.0 stable ([#334](https://github.com/nuxt/create-nuxt-app/issues/334)) ([38af656](https://github.com/nuxt/create-nuxt-app/commit/38af656)) 350 | 351 | ### [2.10.1](https://github.com/nuxt/create-nuxt-app/compare/v2.10.0...v2.10.1) (2019-08-31) 352 | 353 | 354 | ### Bug Fixes 355 | 356 | * use framevuerk-nuxt.min.css in framevuerk ([1b5713b](https://github.com/nuxt/create-nuxt-app/commit/1b5713b)) 357 | 358 | # [2.10.0](https://github.com/nuxt/create-nuxt-app/compare/v2.9.2...v2.10.0) (2019-08-21) 359 | 360 | 361 | ### Bug Fixes 362 | 363 | * comment vuetify/variables.scss with doc link ([#318](https://github.com/nuxt/create-nuxt-app/issues/318)) ([e4f1d64](https://github.com/nuxt/create-nuxt-app/commit/e4f1d64)) 364 | * rename devModules to buildModules ([9d9c962](https://github.com/nuxt/create-nuxt-app/commit/9d9c962)) 365 | 366 | 367 | ### Features 368 | 369 | * add alias (@/~) support in ava tests ([#304](https://github.com/nuxt/create-nuxt-app/issues/304)) ([499e852](https://github.com/nuxt/create-nuxt-app/commit/499e852)) 370 | * add jsconfig.json file for VS Code users ([#277](https://github.com/nuxt/create-nuxt-app/issues/277)) ([3fee8e1](https://github.com/nuxt/create-nuxt-app/commit/3fee8e1)) 371 | 372 | 373 | 374 | ## [2.9.2](https://github.com/nuxt/create-nuxt-app/compare/v2.9.1...v2.9.2) (2019-08-05) 375 | 376 | 377 | ### Bug Fixes 378 | 379 | * lint-staged should only check staged files ([b516d23](https://github.com/nuxt/create-nuxt-app/commit/b516d23)) 380 | * updgrade @nuxtjs/pwa to v3 ([#216](https://github.com/nuxt/create-nuxt-app/issues/216)) ([de66e4e](https://github.com/nuxt/create-nuxt-app/commit/de66e4e)) 381 | 382 | 383 | 384 | ## [2.9.1](https://github.com/nuxt/create-nuxt-app/compare/v2.9.0...v2.9.1) (2019-08-04) 385 | 386 | 387 | ### Bug Fixes 388 | 389 | * cannot find module babel-core ([#310](https://github.com/nuxt/create-nuxt-app/issues/310)) ([cf1dbde](https://github.com/nuxt/create-nuxt-app/commit/cf1dbde)) 390 | * framevuerk error ([250c6e1](https://github.com/nuxt/create-nuxt-app/commit/250c6e1)) 391 | * ignore vim swap files ([#263](https://github.com/nuxt/create-nuxt-app/issues/263)) ([2ff7b11](https://github.com/nuxt/create-nuxt-app/commit/2ff7b11)) 392 | * remove unnecessary nodemon in devDependencies ([#309](https://github.com/nuxt/create-nuxt-app/issues/309)) ([cddccd6](https://github.com/nuxt/create-nuxt-app/commit/cddccd6)) 393 | 394 | 395 | ### Features 396 | 397 | * upgrade eslint-module ([#300](https://github.com/nuxt/create-nuxt-app/issues/300)) ([b61e88e](https://github.com/nuxt/create-nuxt-app/commit/b61e88e)) 398 | 399 | 400 | 401 | # [2.9.0](https://github.com/nuxt/create-nuxt-app/compare/v2.8.0...v2.9.0) (2019-07-26) 402 | 403 | 404 | ### Bug Fixes 405 | 406 | * Adonis commands always running nuxt build ([#268](https://github.com/nuxt/create-nuxt-app/issues/268)) ([d38aa96](https://github.com/nuxt/create-nuxt-app/commit/d38aa96)) 407 | * Duplicate key 'devModules' ([#273](https://github.com/nuxt/create-nuxt-app/issues/273)) ([e7ef3a9](https://github.com/nuxt/create-nuxt-app/commit/e7ef3a9)) 408 | * prettier error in vuetify ([#281](https://github.com/nuxt/create-nuxt-app/issues/281)) ([b7756a2](https://github.com/nuxt/create-nuxt-app/commit/b7756a2)) 409 | 410 | 411 | ### Features 412 | 413 | * add --verbose cli flag ([0d964e2](https://github.com/nuxt/create-nuxt-app/commit/0d964e2)) 414 | * add alias for --edge and --info ([7d0522d](https://github.com/nuxt/create-nuxt-app/commit/7d0522d)) 415 | * add UI framework Framevuerk ([#291](https://github.com/nuxt/create-nuxt-app/issues/291)) ([db8441e](https://github.com/nuxt/create-nuxt-app/commit/db8441e)) 416 | * lint git staged files ([#269](https://github.com/nuxt/create-nuxt-app/issues/269)) ([1760f6a](https://github.com/nuxt/create-nuxt-app/commit/1760f6a)) 417 | * replace tailwind with @nuxtjs/tailwindcss ([#254](https://github.com/nuxt/create-nuxt-app/issues/254)) ([5d0c6ff](https://github.com/nuxt/create-nuxt-app/commit/5d0c6ff)) 418 | * upgrade Ava ([#284](https://github.com/nuxt/create-nuxt-app/issues/284)) ([54c29ff](https://github.com/nuxt/create-nuxt-app/commit/54c29ff)) 419 | * upgrade vuetify to 2.x ([#297](https://github.com/nuxt/create-nuxt-app/issues/297)) ([f735b63](https://github.com/nuxt/create-nuxt-app/commit/f735b63)) 420 | * **chore:** included a dedicated option to show up envinfo ([#272](https://github.com/nuxt/create-nuxt-app/issues/272)) ([d2917a9](https://github.com/nuxt/create-nuxt-app/commit/d2917a9)) 421 | * **cli:** use cac for cli ([#264](https://github.com/nuxt/create-nuxt-app/issues/264)) ([b80fa2d](https://github.com/nuxt/create-nuxt-app/commit/b80fa2d)) 422 | 423 | 424 | 425 | # [2.8.0](https://github.com/nuxt/create-nuxt-app/compare/v2.7.1...v2.8.0) (2019-06-24) 426 | 427 | 428 | ### Bug Fixes 429 | 430 | * iview UI package version match ([#265](https://github.com/nuxt/create-nuxt-app/issues/265)) ([e547353](https://github.com/nuxt/create-nuxt-app/commit/e547353)) 431 | 432 | 433 | ### Features 434 | 435 | * move linting tool to separete prompt ([a6a4ac9](https://github.com/nuxt/create-nuxt-app/commit/a6a4ac9)) 436 | 437 | 438 | 439 | ## [2.7.1](https://github.com/nuxt/create-nuxt-app/compare/v2.7.0...v2.7.1) (2019-06-06) 440 | 441 | 442 | ### Bug Fixes 443 | 444 | * undefined colors vuetify errors in nuxt.config.js ([650fe6c](https://github.com/nuxt/create-nuxt-app/commit/650fe6c)) 445 | 446 | 447 | 448 | # [2.7.0](https://github.com/nuxt/create-nuxt-app/compare/v2.6.0...v2.7.0) (2019-06-06) 449 | 450 | 451 | ### Bug Fixes 452 | 453 | * **antd-ui:** register plugin only once ([#233](https://github.com/nuxt/create-nuxt-app/issues/233)) ([afe1c6c](https://github.com/nuxt/create-nuxt-app/commit/afe1c6c)) 454 | * **element:** register element UI only once ([#232](https://github.com/nuxt/create-nuxt-app/issues/232)) ([7e533dd](https://github.com/nuxt/create-nuxt-app/commit/7e533dd)) 455 | * **iview:** register plugin only once ([#234](https://github.com/nuxt/create-nuxt-app/issues/234)) ([7ab985d](https://github.com/nuxt/create-nuxt-app/commit/7ab985d)) 456 | 457 | 458 | ### Features 459 | 460 | * **hapi:** upgrade to hapi 18 ([#231](https://github.com/nuxt/create-nuxt-app/issues/231)) ([3112b75](https://github.com/nuxt/create-nuxt-app/commit/3112b75)) 461 | * **vuetify:** use vuetify module ([#225](https://github.com/nuxt/create-nuxt-app/issues/225)) ([1c8d944](https://github.com/nuxt/create-nuxt-app/commit/1c8d944)) 462 | * upgrade tailwindcss to v1 ([#237](https://github.com/nuxt/create-nuxt-app/issues/237)) ([b429533](https://github.com/nuxt/create-nuxt-app/commit/b429533)) 463 | 464 | 465 | 466 | # [2.6.0](https://github.com/nuxt/create-nuxt-app/compare/v2.5.1...v2.6.0) (2019-03-13) 467 | 468 | 469 | ### Bug Fixes 470 | 471 | * disable no cjs rule ([#203](https://github.com/nuxt/create-nuxt-app/issues/203)) ([9e29192](https://github.com/nuxt/create-nuxt-app/commit/9e29192)) 472 | 473 | 474 | ### Features 475 | 476 | * use ESM syntax for Nuxt config ([#195](https://github.com/nuxt/create-nuxt-app/issues/195)) ([4f9706f](https://github.com/nuxt/create-nuxt-app/commit/4f9706f)) 477 | 478 | 479 | 480 | ## [2.5.1](https://github.com/nuxt/create-nuxt-app/compare/v2.5.0...v2.5.1) (2019-03-06) 481 | 482 | 483 | 484 | # [2.5.0](https://github.com/nuxt/create-nuxt-app/compare/v2.4.3...v2.5.0) (2019-03-06) 485 | 486 | 487 | ### Bug Fixes 488 | 489 | * add coverage config to jest setup ([#198](https://github.com/nuxt/create-nuxt-app/issues/198)) ([85a29ec](https://github.com/nuxt/create-nuxt-app/commit/85a29ec)) 490 | * initial value of Express host and port ([#202](https://github.com/nuxt/create-nuxt-app/issues/202)) ([84110e2](https://github.com/nuxt/create-nuxt-app/commit/84110e2)) 491 | 492 | 493 | ### Features 494 | 495 | * add eslint nuxt plugin ([#199](https://github.com/nuxt/create-nuxt-app/issues/199)) ([730e6a0](https://github.com/nuxt/create-nuxt-app/commit/730e6a0)) 496 | -------------------------------------------------------------------------------- /packages/create-nuxt-app/lib/cli.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | const path = require('path') 3 | const fs = require('fs') 4 | const sao = require('sao') 5 | const cac = require('cac') 6 | const chalk = require('chalk') 7 | const envinfo = require('envinfo') 8 | const { version } = require('../package.json') 9 | 10 | const generator = path.resolve(__dirname, './') 11 | 12 | const cli = cac('create-nuxt-app') 13 | 14 | const showEnvInfo = async () => { 15 | console.log(chalk.bold('\nEnvironment Info:')) 16 | const result = await envinfo 17 | .run({ 18 | System: ['OS', 'CPU'], 19 | Binaries: ['Node', 'Yarn', 'npm'], 20 | Browsers: ['Chrome', 'Edge', 'Firefox', 'Safari'], 21 | npmGlobalPackages: ['nuxt', 'create-nuxt-app'] 22 | }) 23 | console.log(result) 24 | process.exit(1) 25 | } 26 | 27 | const run = () => { 28 | cli 29 | .command('[out-dir]', 'Generate in a custom directory or current directory') 30 | .option('-e, --edge', 'To install `nuxt-edge` instead of `nuxt`') 31 | .option('-i, --info', 'Print out debugging information relating to the local environment') 32 | .option('--answers ', 'Skip all the prompts and use the provided answers') 33 | .option('--verbose', 'Show debug logs') 34 | .option('--overwrite-dir', 'Overwrite the target directory') 35 | .action((outDir = '.', cliOptions) => { 36 | if (cliOptions.info) { 37 | return showEnvInfo() 38 | } 39 | console.log() 40 | console.log(chalk`{cyan create-nuxt-app v${version}}`) 41 | 42 | const { answers, overwriteDir, verbose } = cliOptions 43 | if (fs.existsSync(outDir) && fs.readdirSync(outDir).length && !overwriteDir) { 44 | const baseDir = outDir === '.' ? path.basename(process.cwd()) : outDir 45 | return console.error(chalk.red( 46 | `Could not create project in ${chalk.bold(baseDir)} because the directory is not empty.`)) 47 | } 48 | 49 | console.log(chalk`✨ Generating Nuxt.js project in {cyan ${outDir}}`) 50 | 51 | const logLevel = verbose ? 4 : 2 52 | // See https://sao.vercel.app/api.html#standalone-cli 53 | sao({ generator, outDir, logLevel, answers, cliOptions }) 54 | .run() 55 | .catch((err) => { 56 | console.trace(err) 57 | process.exit(1) 58 | }) 59 | }) 60 | 61 | cli.help() 62 | 63 | cli.version(version) 64 | 65 | cli.parse() 66 | } 67 | 68 | try { 69 | run() 70 | } catch (err) { 71 | // https://github.com/cacjs/cac/blob/f51fc2254d7ea30b4faea76f69f52fe291811e4f/src/utils.ts#L152 72 | // https://github.com/cacjs/cac/blob/f51fc2254d7ea30b4faea76f69f52fe291811e4f/src/Command.ts#L258 73 | if (err.name === 'CACError' && err.message.startsWith('Unknown option')) { 74 | console.error() 75 | console.error(chalk.red(err.message)) 76 | console.error() 77 | cli.outputHelp() 78 | } else { 79 | console.error() 80 | console.error(err) 81 | } 82 | process.exit(1) 83 | } 84 | -------------------------------------------------------------------------------- /packages/create-nuxt-app/lib/package.js: -------------------------------------------------------------------------------- 1 | const { merge, sortByKey } = require('./util') 2 | 3 | module.exports = { 4 | requireFile (filename) { 5 | try { 6 | return require(filename) 7 | } catch (error) { 8 | return {} 9 | } 10 | }, 11 | requireJSON (filename) { 12 | return JSON.parse(JSON.stringify(this.requireFile(filename))) 13 | }, 14 | loadPackage (name, generator) { 15 | if (!name || name === 'none') { 16 | return {} 17 | } 18 | const prefix = name === 'nuxt' ? 'nuxt' : `frameworks/${name}` 19 | const pkg = this.requireJSON(`cna-template/template/${prefix}/package.json`) 20 | const pkgHandler = this.requireFile(`cna-template/template/${prefix}/package.js`) 21 | return pkgHandler.apply ? pkgHandler.apply(pkg, generator) : pkg 22 | }, 23 | load (generator) { 24 | const nuxtPkg = this.loadPackage('nuxt', generator) 25 | const templatePkg = this.loadPackage(generator.answers.template, generator) 26 | const uiPkg = this.loadPackage(generator.answers.ui, generator) 27 | const testPkg = this.loadPackage(generator.answers.test, generator) 28 | const pkg = merge(nuxtPkg, templatePkg, uiPkg, testPkg) 29 | pkg.dependencies = sortByKey(pkg.dependencies) 30 | pkg.devDependencies = sortByKey(pkg.devDependencies) 31 | return pkg 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /packages/create-nuxt-app/lib/prompts.js: -------------------------------------------------------------------------------- 1 | module.exports = [ 2 | { 3 | name: 'name', 4 | message: 'Project name:', 5 | default: '{outFolder}' 6 | }, 7 | { 8 | name: 'language', 9 | message: 'Programming language:', 10 | choices: [ 11 | { name: 'JavaScript', value: 'js' }, 12 | { name: 'TypeScript', value: 'ts' } 13 | ], 14 | type: 'list', 15 | default: 'js' 16 | }, 17 | { 18 | name: 'pm', 19 | message: 'Package manager:', 20 | choices: [ 21 | { name: 'Yarn', value: 'yarn' }, 22 | { name: 'Npm', value: 'npm' } 23 | ], 24 | type: 'list', 25 | default: 'yarn' 26 | }, 27 | { 28 | name: 'ui', 29 | message: 'UI framework:', 30 | type: 'list', 31 | pageSize: 15, 32 | choices: [ 33 | { name: 'None', value: 'none' }, 34 | { name: 'Ant Design Vue', value: 'ant-design-vue' }, 35 | { name: 'BalmUI', value: 'balm-ui' }, 36 | { name: 'Bootstrap Vue', value: 'bootstrap' }, 37 | { name: 'Buefy', value: 'buefy' }, 38 | { name: 'Chakra UI', value: 'chakra-ui' }, 39 | { name: 'Element', value: 'element-ui' }, 40 | { name: 'Oruga', value: 'oruga' }, 41 | { name: 'Primevue', value: 'primevue' }, 42 | { name: 'Tachyons', value: 'tachyons' }, 43 | { name: 'Tailwind CSS', value: 'tailwind' }, 44 | { name: 'Windi CSS', value: 'windicss' }, 45 | { name: 'Vant', value: 'vant' }, 46 | { name: 'View UI', value: 'view-ui' }, 47 | { name: 'Vuetify.js', value: 'vuetify' } 48 | ], 49 | default: 'none' 50 | }, 51 | { 52 | name: 'template', 53 | message: 'Template engine:', 54 | type: 'list', 55 | choices: [ 56 | { name: 'HTML', value: 'html' }, 57 | { name: 'Pug', value: 'pug' } 58 | ], 59 | default: 'html' 60 | }, 61 | { 62 | name: 'features', 63 | message: 'Nuxt.js modules:', 64 | type: 'checkbox', 65 | pageSize: 10, 66 | choices: [ 67 | { name: 'Axios - Promise based HTTP client', value: 'axios' }, 68 | { name: 'Progressive Web App (PWA)', value: 'pwa' }, 69 | { name: 'Content - Git-based headless CMS', value: 'content' } 70 | ], 71 | default: [] 72 | }, 73 | { 74 | name: 'linter', 75 | message: 'Linting tools:', 76 | type: 'checkbox', 77 | pageSize: 10, 78 | choices: [ 79 | { name: 'ESLint', value: 'eslint' }, 80 | { name: 'Prettier', value: 'prettier' }, 81 | { name: 'Lint staged files', value: 'lintStaged' }, 82 | { name: 'StyleLint', value: 'stylelint' }, 83 | { name: 'Commitlint', value: 'commitlint' } 84 | ], 85 | default: [] 86 | }, 87 | { 88 | name: 'test', 89 | message: 'Testing framework:', 90 | type: 'list', 91 | choices: [ 92 | { name: 'None', value: 'none' }, 93 | { name: 'Jest', value: 'jest' }, 94 | { name: 'AVA', value: 'ava' }, 95 | { name: 'WebdriverIO', value: 'webdriverio' }, 96 | { name: 'Nightwatch', value: 'nightwatch' } 97 | ], 98 | default: 'none' 99 | }, 100 | { 101 | name: 'mode', 102 | message: 'Rendering mode:', 103 | type: 'list', 104 | choices: [ 105 | { name: 'Universal (SSR / SSG)', value: 'universal' }, 106 | { name: 'Single Page App', value: 'spa' } 107 | ], 108 | default: 'universal' 109 | }, 110 | { 111 | name: 'target', 112 | message: 'Deployment target:', 113 | type: 'list', 114 | choices: [ 115 | { name: 'Server (Node.js hosting)', value: 'server' }, 116 | { name: 'Static (Static/Jamstack hosting)', value: 'static' } 117 | ], 118 | default: 'server' 119 | }, 120 | { 121 | name: 'devTools', 122 | message: 'Development tools:', 123 | type: 'checkbox', 124 | choices: [ 125 | { name: 'jsconfig.json (Recommended for VS Code if you\'re not using typescript)', value: 'jsconfig.json' }, 126 | { name: 'Semantic Pull Requests', value: 'semantic-pull-requests' }, 127 | { name: 'Dependabot (For auto-updating dependencies, GitHub only)', value: 'dependabot' } 128 | ], 129 | default: [] 130 | }, 131 | { 132 | when: ({ test, linter }) => test !== 'none' || linter.length > 0, 133 | name: 'ci', 134 | message: 'Continuous integration:', 135 | type: 'list', 136 | choices: [ 137 | { name: 'None', value: 'none' }, 138 | { name: 'GitHub Actions (GitHub only)', value: 'github-actions' }, 139 | { name: 'Travis CI', value: 'travis-ci' }, 140 | { name: 'CircleCI', value: 'circleci' } 141 | ], 142 | default: 'none' 143 | }, 144 | { 145 | when: ({ devTools, ci }) => devTools.includes('dependabot') || ci !== 'none', 146 | name: 'gitUsername', 147 | message: 'What is your GitHub username?', 148 | default: '{gitUser.name}', 149 | filter: val => val.toLowerCase(), 150 | store: true 151 | }, 152 | { 153 | name: 'vcs', 154 | message: 'Version control system:', 155 | type: 'list', 156 | choices: [ 157 | { name: 'Git', value: 'git' }, 158 | { name: 'None', value: 'none' } 159 | ], 160 | default: 'git' 161 | } 162 | ] 163 | -------------------------------------------------------------------------------- /packages/create-nuxt-app/lib/saofile.js: -------------------------------------------------------------------------------- 1 | const { dirname, join, relative } = require('path') 2 | const fs = require('fs') 3 | const spawn = require('cross-spawn') 4 | const validate = require('validate-npm-package-name') 5 | const pkg = require('./package') 6 | 7 | const cnaTemplateDir = join(dirname(require.resolve('cna-template/package.json'))) 8 | const templateDir = join(cnaTemplateDir, 'template') 9 | const frameworksDir = join(templateDir, 'frameworks') 10 | const addExecutable = filename => new Promise( 11 | resolve => fs.chmod(filename, 0o755, resolve) 12 | ) 13 | 14 | module.exports = { 15 | prompts: require('./prompts'), 16 | templateData () { 17 | const typescript = this.answers.language.includes('ts') 18 | const pwa = this.answers.features.includes('pwa') 19 | const eslint = this.answers.linter.includes('eslint') 20 | const prettier = this.answers.linter.includes('prettier') 21 | const lintStaged = eslint && this.answers.linter.includes('lintStaged') 22 | const stylelint = this.answers.linter.includes('stylelint') 23 | const commitlint = this.answers.linter.includes('commitlint') 24 | const axios = this.answers.features.includes('axios') 25 | const content = this.answers.features.includes('content') 26 | const pm = this.answers.pm === 'yarn' ? 'yarn' : 'npm' 27 | const pmRun = this.answers.pm === 'yarn' ? 'yarn' : 'npm run' 28 | const { cliOptions = {} } = this.sao.opts 29 | const edge = cliOptions.edge ? '-edge' : '' 30 | 31 | return { 32 | typescript, 33 | pwa, 34 | eslint, 35 | prettier, 36 | lintStaged, 37 | stylelint, 38 | commitlint, 39 | axios, 40 | edge, 41 | pm, 42 | pmRun, 43 | content 44 | } 45 | }, 46 | actions () { 47 | const validation = validate(this.answers.name) 48 | validation.warnings && validation.warnings.forEach((warn) => { 49 | console.warn('Warning:', warn) 50 | }) 51 | validation.errors && validation.errors.forEach((err) => { 52 | console.error('Error:', err) 53 | }) 54 | validation.errors && validation.errors.length && process.exit(1) 55 | 56 | const { linter } = this.answers 57 | const eslint = linter.includes('eslint') 58 | const lintStaged = eslint && linter.includes('lintStaged') 59 | const commitlint = linter.includes('commitlint') 60 | const husky = lintStaged || commitlint 61 | 62 | const actions = [{ 63 | type: 'add', 64 | files: '**', 65 | templateDir: join(templateDir, 'nuxt'), 66 | filters: { 67 | 'static/icon.png': 'features.includes("pwa")', 68 | 'content/hello.md': 'features.includes("content")', 69 | 'pages/content.vue': 'features.includes("content")', 70 | '.husky/.gitignore': husky, 71 | '.husky/commit-msg': commitlint, 72 | '.husky/pre-commit': lintStaged, 73 | '.husky/common.sh': husky && this.answers.pm === 'yarn' 74 | } 75 | }] 76 | 77 | if (this.answers.template !== 'html') { 78 | actions.push({ 79 | type: 'add', 80 | files: '**', 81 | templateDir: join(frameworksDir, this.answers.template) 82 | }) 83 | } 84 | 85 | if (this.answers.ui !== 'none') { 86 | actions.push({ 87 | type: 'add', 88 | files: '**', 89 | templateDir: join(frameworksDir, this.answers.ui) 90 | }) 91 | } 92 | 93 | if (this.answers.test !== 'none') { 94 | actions.push({ 95 | type: 'add', 96 | files: '**', 97 | templateDir: join(frameworksDir, this.answers.test) 98 | }) 99 | } 100 | 101 | if (this.answers.ci && this.answers.ci !== 'none') { 102 | actions.push({ 103 | type: 'add', 104 | files: '**', 105 | templateDir: join(frameworksDir, this.answers.ci) 106 | }) 107 | } 108 | 109 | actions.push({ 110 | type: 'add', 111 | files: '*', 112 | filters: { 113 | '_.eslintrc.js': 'linter.includes("eslint")', 114 | '_.prettierignore': 'linter.includes("prettier")', 115 | '_.prettierrc': 'linter.includes("prettier")', 116 | '_jsconfig.json': 'devTools.includes("jsconfig.json")', 117 | 'tsconfig.json': 'language.includes("ts")', 118 | 'semantic.yml': 'devTools.includes("semantic-pull-requests")', 119 | '_stylelint.config.js': 'linter.includes("stylelint")', 120 | '_commitlint.config.js': 'linter.includes("commitlint")', 121 | 'dependabot.yml': 'devTools.includes("dependabot")' 122 | }, 123 | templateDir 124 | }) 125 | 126 | actions.push({ 127 | type: 'move', 128 | patterns: { 129 | gitignore: '.gitignore', 130 | '_package.json': 'package.json', 131 | '_.prettierignore': '.prettierignore', 132 | '_.prettierrc': '.prettierrc', 133 | '_.eslintrc.js': '.eslintrc.js', 134 | '_jsconfig.json': 'jsconfig.json', 135 | '_stylelint.config.js': 'stylelint.config.js', 136 | '_commitlint.config.js': 'commitlint.config.js', 137 | 'semantic.yml': '.github/semantic.yml', 138 | 'dependabot.yml': '.github/dependabot.yml' 139 | } 140 | }) 141 | 142 | const generator = this 143 | actions.push({ 144 | type: 'modify', 145 | files: 'package.json', 146 | handler (data) { 147 | return { ...data, ...pkg.load(generator) } 148 | } 149 | }) 150 | 151 | // For compiling package.json 152 | actions.push({ 153 | type: 'add', 154 | files: 'package.json', 155 | templateDir: this.outDir 156 | }) 157 | 158 | actions.push({ 159 | type: 'remove', 160 | files: 'package.js' 161 | }) 162 | 163 | return actions 164 | }, 165 | async completed () { 166 | if (this.answers.vcs === 'git') { 167 | this.gitInit() 168 | } 169 | 170 | const huskyDir = join(this.outDir, '.husky') 171 | if (this.answers.linter.includes('lintStaged')) { 172 | await addExecutable(join(huskyDir, 'pre-commit')) 173 | } 174 | if (this.answers.linter.includes('commitlint')) { 175 | await addExecutable(join(huskyDir, 'commit-msg')) 176 | } 177 | 178 | await this.npmInstall({ npmClient: this.answers.pm }) 179 | 180 | if (['eslint', 'stylelint', 'prettier'].some(linter => this.answers.linter.includes(linter))) { 181 | spawn.sync(this.answers.pm, ['run', 'lintfix'], { 182 | cwd: this.outDir, 183 | stdio: 'inherit' 184 | }) 185 | } 186 | 187 | const chalk = this.chalk 188 | const isNewFolder = this.outDir !== process.cwd() 189 | const relativeOutFolder = relative(process.cwd(), this.outDir) 190 | const cdMsg = isNewFolder ? chalk`\t{cyan cd ${relativeOutFolder}}\n` : '' 191 | const pmRun = this.answers.pm === 'yarn' ? 'yarn' : 'npm run' 192 | 193 | console.log(chalk`\n🎉 {bold Successfully created project} {cyan ${this.answers.name}}\n`) 194 | 195 | console.log(chalk` {bold To get started:}\n`) 196 | console.log(chalk`${cdMsg}\t{cyan ${pmRun} dev}\n`) 197 | 198 | console.log(chalk` {bold To build & start for production:}\n`) 199 | console.log(chalk`${cdMsg}\t{cyan ${pmRun} build}`) 200 | console.log(chalk`\t{cyan ${pmRun} start}\n`) 201 | 202 | if (this.answers.test !== 'none') { 203 | console.log(chalk` {bold To test:}\n`) 204 | console.log(chalk`${cdMsg}\t{cyan ${pmRun} test}\n`) 205 | } 206 | 207 | if (this.answers.language.includes('ts')) { 208 | console.log(chalk`\n {bold For TypeScript users.} \n\n See : https://typescript.nuxtjs.org/cookbook/components/`) 209 | } 210 | } 211 | } 212 | -------------------------------------------------------------------------------- /packages/create-nuxt-app/lib/util.js: -------------------------------------------------------------------------------- 1 | const isObject = (value) => { 2 | return !!value && 3 | typeof value === 'object' && 4 | typeof value.getMonth !== 'function' && 5 | !Array.isArray(value) 6 | } 7 | 8 | const merge = (...sources) => { 9 | const [target, ...rest] = sources 10 | 11 | for (const object of rest) { 12 | for (const key in object) { 13 | const targetValue = target[key] 14 | const sourceValue = object[key] 15 | const isMergable = isObject(targetValue) && isObject(sourceValue) 16 | target[key] = isMergable ? merge({}, targetValue, sourceValue) : sourceValue 17 | } 18 | } 19 | 20 | return target 21 | } 22 | 23 | const sortByKey = (unsortedObject) => { 24 | const sortedObject = {} 25 | Object.keys(unsortedObject).sort().forEach((key) => { 26 | sortedObject[key] = unsortedObject[key] 27 | }) 28 | return sortedObject 29 | } 30 | 31 | module.exports = { 32 | isObject, 33 | merge, 34 | sortByKey 35 | } 36 | -------------------------------------------------------------------------------- /packages/create-nuxt-app/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "create-nuxt-app", 3 | "version": "5.0.0", 4 | "description": "Create a Nuxt.js App in seconds.", 5 | "homepage": "https://github.com/nuxt/create-nuxt-app#readme", 6 | "repository": { 7 | "url": "https://github.com/nuxt/create-nuxt-app.git", 8 | "type": "git" 9 | }, 10 | "bin": "lib/cli.js", 11 | "files": [ 12 | "lib" 13 | ], 14 | "dependencies": { 15 | "cac": "^6.7.14", 16 | "chalk": "^4.1.2", 17 | "cna-template": "^5.0.0", 18 | "cross-spawn": "^7.0.3", 19 | "envinfo": "^7.8.1", 20 | "lodash": "^4.17.21", 21 | "sao": "^1.7.1", 22 | "validate-npm-package-name": "^4.0.0" 23 | }, 24 | "authors": [ 25 | "Egoist <0x142857@gmail.com>", 26 | "Nuxt team ", 27 | "Clark Du " 28 | ], 29 | "license": "MIT", 30 | "engines": { 31 | "node": ">=v14.20.1" 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /packages/create-nuxt-app/test/index.test.js: -------------------------------------------------------------------------------- 1 | const path = require('path') 2 | const test = require('ava') 3 | const sao = require('sao') 4 | const saoConfig = require('../lib/saofile') 5 | 6 | const generator = path.join(__dirname, '../lib') 7 | 8 | const getPkgFields = (pkg) => { 9 | pkg = JSON.parse(pkg) 10 | delete pkg.name 11 | delete pkg.version 12 | return pkg 13 | } 14 | 15 | const normalizeNewlines = 16 | string => string.replace(/\r\n/g, '\n') 17 | 18 | const verifyFileList = async (t, answers = {}) => { 19 | const stream = await sao.mock({ generator }, answers) 20 | t.snapshot(stream.fileList, 'Generated files') 21 | } 22 | 23 | const verifyPkg = async (t, answers = {}) => { 24 | const stream = await sao.mock({ generator }, answers) 25 | const pkg = await stream.readFile('package.json') 26 | t.snapshot(getPkgFields(pkg), 'package.json') 27 | } 28 | 29 | const verifyNuxtConfig = async (t, answers = {}) => { 30 | const stream = await sao.mock({ generator }, answers) 31 | const configFile = 'nuxt.config.js' 32 | const config = await stream.readFile(configFile) 33 | t.snapshot(normalizeNewlines(config), `Generated ${configFile}`) 34 | } 35 | 36 | const verifyAnswers = async (t, answers = {}) => { 37 | await verifyFileList(t, answers) 38 | await verifyPkg(t, answers) 39 | await verifyNuxtConfig(t, answers) 40 | } 41 | 42 | test('verify default answers', async (t) => { 43 | await verifyAnswers(t) 44 | }) 45 | 46 | for (const prompt of saoConfig.prompts) { 47 | if (Array.isArray(prompt.choices)) { 48 | if (prompt.type === 'checkbox') { 49 | const choiceNames = prompt.choices.map(choice => choice.name) 50 | const choiceValues = prompt.choices.map(choice => choice.value) 51 | test(`verify ${prompt.name}: ${choiceNames.join(', ')}`, async (t) => { 52 | const answers = { [prompt.name]: choiceValues } 53 | await verifyAnswers(t, answers) 54 | }) 55 | } 56 | for (const choice of prompt.choices) { 57 | test(`verify ${prompt.name}: ${choice.name}`, async (t) => { 58 | const answers = { [prompt.name]: prompt.type === 'checkbox' ? [choice.value] : choice.value } 59 | await verifyAnswers(t, answers) 60 | }) 61 | } 62 | } 63 | } 64 | -------------------------------------------------------------------------------- /packages/create-nuxt-app/test/snapshots/index.test.js.snap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nuxt/create-nuxt-app/2f04969c2f30b16b85a93bea52e489109c0a7210/packages/create-nuxt-app/test/snapshots/index.test.js.snap -------------------------------------------------------------------------------- /renovate.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@nuxtjs"], 3 | "dependencyDashboardApproval": true, 4 | "lockFileMaintenance": { 5 | "enabled": true 6 | }, 7 | "ignoreDeps": ["vue-jest", "@nuxt/content"], 8 | "packageRules": [ 9 | { 10 | "matchPackagePatterns": ["nuxt"], 11 | "groupName": "nuxt packages" 12 | }, 13 | { 14 | "matchPackagePatterns": ["^ant-design"], 15 | "groupName": "ant design packages" 16 | }, 17 | { 18 | "matchPackagePatterns": ["balm-ui"], 19 | "groupName": "balm-ui packages" 20 | }, 21 | { 22 | "matchPackagePatterns": ["bootstrap"], 23 | "groupName": "bootstrap packages" 24 | }, 25 | { 26 | "matchPackagePatterns": ["element-ui"], 27 | "groupName": "element-ui packages" 28 | }, 29 | { 30 | "matchPackagePatterns": ["jest"], 31 | "groupName": "jest packages" 32 | }, 33 | { 34 | "matchPackagePatterns": ["ava", "require-extension-hooks"], 35 | "groupName": "ava packages" 36 | }, 37 | { 38 | "matchPackagePatterns": ["^@wdio", "eslint-plugin-wdio", "webdriverio"], 39 | "groupName": "webdriverio packages" 40 | }, 41 | { 42 | "matchPackageNames": ["@oruga-ui/oruga"], 43 | "groupName": "oruga packages" 44 | }, 45 | { 46 | "matchPackageNames": ["nightwatch", "chromedriver"], 47 | "groupName": "nightwatch packages" 48 | } 49 | ] 50 | } 51 | --------------------------------------------------------------------------------