From 2a3d08ce7f704a0a135fbb70afd114e74811f8e5 Mon Sep 17 00:00:00 2001 From: Guillaume Chau Date: Thu, 12 Jul 2018 01:03:46 +0200 Subject: [PATCH 1/5] feat: package.json: vueCli.resolvePlugins option, closes #1815 --- docs/guide/plugins-and-presets.md | 14 ++++++++++++++ packages/@vue/cli-service/lib/Service.js | 10 +++++++--- packages/@vue/cli/lib/invoke.js | 8 ++++++-- 3 files changed, 27 insertions(+), 5 deletions(-) diff --git a/docs/guide/plugins-and-presets.md b/docs/guide/plugins-and-presets.md index 8d423d9f5e..7dcbe3391b 100644 --- a/docs/guide/plugins-and-presets.md +++ b/docs/guide/plugins-and-presets.md @@ -57,6 +57,20 @@ vue add vuex If a plugin is already installed, you can skip the installation and only invoke its generator with the `vue invoke` command. The command takes the same arguments as `vue add`. +::: tip +If for some reason your plugins are listed in a `package.json` file other than the one located in your project, you can set the `vueCli.resolvePlugins` option in the project `package.json` with the path to the folder containing the other `package.json` file. + +For example, if you have a `.config/package.json` file: + +```json +{ + "vueCli": { + "resolvePlugins": ".config" + } +} +``` +::: + ## Presets A Vue CLI preset is a JSON object that contains pre-defined options and plugins for creating a new project so that the user don't have to go through the prompts to select them. diff --git a/packages/@vue/cli-service/lib/Service.js b/packages/@vue/cli-service/lib/Service.js index 045156842b..72bd16a032 100644 --- a/packages/@vue/cli-service/lib/Service.js +++ b/packages/@vue/cli-service/lib/Service.js @@ -36,11 +36,15 @@ module.exports = class Service { }, {}) } - resolvePkg (inlinePkg) { + resolvePkg (inlinePkg, context = this.context) { if (inlinePkg) { return inlinePkg - } else if (fs.existsSync(path.join(this.context, 'package.json'))) { - return readPkg.sync({ cwd: this.context }) + } else if (fs.existsSync(path.join(context, 'package.json'))) { + const pkg = readPkg.sync({ cwd: context }) + if (pkg.vueCli && pkg.vueCli.resolvePlugins) { + return this.resolvePkg(null, path.resolve(context, pkg.vueCli.resolvePlugins)) + } + return pkg } else { return {} } diff --git a/packages/@vue/cli/lib/invoke.js b/packages/@vue/cli/lib/invoke.js index bda2fdf919..539ff2a1e0 100644 --- a/packages/@vue/cli/lib/invoke.js +++ b/packages/@vue/cli/lib/invoke.js @@ -1,4 +1,4 @@ -const fs = require('fs') +const fs = require('fs-extra') const path = require('path') const execa = require('execa') const chalk = require('chalk') @@ -43,7 +43,11 @@ function getPkg (context) { if (!fs.existsSync(pkgPath)) { throw new Error(`package.json not found in ${chalk.yellow(context)}`) } - return loadModule(pkgPath, context, true) + const pkg = fs.readJsonSync(pkgPath) + if (pkg.vueCli && pkg.vueCli.resolvePlugins) { + return getPkg(path.resolve(context, pkg.vueCli.resolvePlugins)) + } + return pkg } async function invoke (pluginName, options = {}, context = process.cwd()) { From cf83affd150d13fa00f71e6206369ea8df67d657 Mon Sep 17 00:00:00 2001 From: Guillaume Chau Date: Thu, 12 Jul 2018 14:18:26 +0200 Subject: [PATCH 2/5] docs: structure rework [ci skip] --- docs/.vuepress/config.js | 25 ++++++++++++++++--------- docs/.vuepress/public/ui-analyzer.png | Bin 0 -> 84453 bytes docs/README.md | 10 +++++++++- docs/config/README.md | 2 ++ docs/guide/README.md | 5 +++++ docs/guide/cli-service.md | 8 ++++++++ docs/guide/creating-a-project.md | 14 -------------- docs/guide/installation.md | 26 ++++++++++++++++++++++++++ docs/guide/plugins-and-presets.md | 4 ++++ 9 files changed, 70 insertions(+), 24 deletions(-) create mode 100644 docs/.vuepress/public/ui-analyzer.png create mode 100644 docs/guide/installation.md diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js index d215fb51dd..6e214637b2 100644 --- a/docs/.vuepress/config.js +++ b/docs/.vuepress/config.js @@ -2,7 +2,7 @@ module.exports = { locales: { '/': { lang: 'en-US', - title: 'Vue CLI', + title: 'Vue CLI 3', description: '🛠️ Standard Tooling for Vue.js Development' } }, @@ -30,7 +30,7 @@ module.exports = { link: '/config/' }, { - text: 'Dev Guide', + text: 'Plugin Dev Guide', items: [ { text: 'Plugin Dev Guide', link: '/dev-guide/plugin-dev.md' }, { text: 'UI Plugin Info', link: '/dev-guide/ui-info.md' }, @@ -59,20 +59,21 @@ module.exports = { sidebar: { '/guide/': [ '/guide/', + '/guide/installation', { - title: 'CLI', + title: 'Basics', collapsable: false, children: [ - '/guide/creating-a-project', '/guide/prototyping', - '/guide/plugins-and-presets' + '/guide/creating-a-project', + '/guide/plugins-and-presets', + '/guide/cli-service' ] }, { title: 'Development', collapsable: false, children: [ - '/guide/cli-service', '/guide/browser-compatibility', '/guide/html-and-static-assets', '/guide/css', @@ -85,9 +86,15 @@ module.exports = { ], '/dev-guide/': [ '/dev-guide/plugin-dev.md', - '/dev-guide/ui-info.md', - '/dev-guide/ui-api.md', - '/dev-guide/ui-localization.md' + { + title: 'UI Development', + collapsable: false, + children: [ + '/dev-guide/ui-info.md', + '/dev-guide/ui-api.md', + '/dev-guide/ui-localization.md' + ] + } ] } } diff --git a/docs/.vuepress/public/ui-analyzer.png b/docs/.vuepress/public/ui-analyzer.png new file mode 100644 index 0000000000000000000000000000000000000000..428c83ff13b57217a81e39353e75a270bff72bf8 GIT binary patch literal 84453 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%0AJ+U zN)J@#^IsgiMjsSnH&|mj%q86ZtOt{F2y#oxW|lO(z& zL9=lciecKO@v0_L-<-3FY;dQY^gN|vnY6L7T?OJR5xa9bsq5J=)~y0k11eIyakZl; zWmZUpBJR*zERD;tnXoAx&^S@L+O@?;OuI-}y1#F_u!@wGHIaLDe;=tQ%C0RG@(c?G zBC^mLh3j-sDsrTc#GFT4YfqzMo$6Cc=5cY5);JF z>Ky}Wa?e4!t8=K}L;Ehe*BCQ7Ai&ONELAogHHsA>Eyh-@X!&QB`{}$F76^rFZx{N|KYIa=I}!Rhm~^+BAFZUT(4Bz zBIb`jD>iqo9EfqC@?oPX)jhOsesEX5q0zPSjO(ua4Aj3Di-1r-F5;Vy&$7!uy(VoK zjc9J9kvrf?_rYl;QwTudi`$hr&?1HdRZ>oYA5RD5dj#7=ad zWcg*d{w1RMM-m@`wR7iZb8G0-!M!<+;566@#7uaW2KK`B-TBY-B`ZDw*-XXgzW7{$a09HE&~h@#DJC#La@`0 zXz3Ym79#Cf3t|_5&iq>Lb22KfePuz1DYc0#%3~EMa^@k8`yn9kZJB0__o%3S_i6?{ zQM&X2D{3|SKw^MjEq01dG;y}e3OosmR|e$ZLarR7>Y(sl0F2pLZ2OVmQjja&O<7|V zFRM~buOl(;C{Lb;(Ju(k4Obh#G-;tNhpNz+@Xqb3>d{@pjd%dM1$1-oE$71(Fr*76 zcw>av5Wlq)t(%NlT2h5yG(IP}AR&$~k&))oL}Mf#GcrkZhM9Eu?kIT~Ir7H_>8K^N z>xi?q7=Y6ojQyBNR#$P`H!+1`B&}3OERygcG1+V13ZNREyP51qlttu0P`pVis7eF| zXgfXw2^1&aD-MT6WgS7t24w_g4$B-NwKB z_|~fxq%QpGoVpzmVEvXesQ#Fp�c$s)oE&fp*otWr8x|Q?@R5jddG@m#wjuiJ@sp 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 CLI is fully configurable without the need for ejecting. This allows your project to stay up-to-date for the long run.

-

GUI on top of the CLI

+

Graphical User Interface

Create, develop and manage your projects through an accompanying graphical user interface.

@@ -39,10 +39,18 @@ footer: MIT Licensed | Copyright © 2018-present Evan You ## Getting Started +Install: + ``` bash npm install -g @vue/cli # OR yarn global add @vue/cli +``` + +Create a project: +``` bash vue create my-project +# OR +vue ui ``` diff --git a/docs/config/README.md b/docs/config/README.md index c161946c2f..6371685755 100644 --- a/docs/config/README.md +++ b/docs/config/README.md @@ -10,6 +10,8 @@ sidebar: auto Some global configurations for `@vue/cli`, such as your preferred package manager and your locally saved presets, are stored in a JSON file named `.vuerc` in your home directory. You can edit this file directory with your editor of choice to change the saved options. +You can also use the `vue config` command to inspect or modify the global CLI config. + ## Target Browsers See the [Browser Compatibility](../guide/browser-compatibility.md#browserslist) section in guide. diff --git a/docs/guide/README.md b/docs/guide/README.md index 736ca049de..5469501744 100644 --- a/docs/guide/README.md +++ b/docs/guide/README.md @@ -6,6 +6,10 @@ sidebarDepth: 0 +::: warning +This documentation is for `@vue/cli` version **3.x**. For the old `vue-cli`, see [here](https://github.com/vuejs/vue-cli/tree/v2#vue-cli--). +::: + Vue CLI is a full system for rapid Vue.js development, providing: - Interactive project scaffolding via `@vue/cli`. @@ -16,6 +20,7 @@ Vue CLI is a full system for rapid Vue.js development, providing: - Configurable via in-project config file; - Extensible via plugins - A rich collection of official plugins integrating the best tools in the frontend ecosystem. +- A full graphical user intefrace to create and manage Vue.js projects. Vue CLI aims to be the standard tooling baseline for the Vue ecosystem. It ensures the various build tools work smoothly together with sensible defaults so you can focus on writing your app instead of spending days wrangling with configurations. At the same time, it still offers the flexibility to tweak the config of each tool without the need for ejecting. diff --git a/docs/guide/cli-service.md b/docs/guide/cli-service.md index 9725e462d7..223880d178 100644 --- a/docs/guide/cli-service.md +++ b/docs/guide/cli-service.md @@ -29,6 +29,14 @@ If you have [npx](https://github.com/zkat/npx) available (should be bundled with npx vue-cli-service serve ``` +::: tip +You can run scripts with additional features using the GUI with the `vue ui` command. +::: + +Here is the Webpack Analyzer from the GUI in action: + +![UI Webpack Analyzer](/ui-analyzer.png) + ## vue-cli-service serve ``` diff --git a/docs/guide/creating-a-project.md b/docs/guide/creating-a-project.md index bcbc13bdae..b4e5953828 100644 --- a/docs/guide/creating-a-project.md +++ b/docs/guide/creating-a-project.md @@ -1,19 +1,5 @@ # Creating a Project -## Installation - -::: tip Node Version Requirement -Vue CLI requires [Node.js](https://nodejs.org/) version 8 or above (8.10.0+ recommended). You can manage multiple versions of Node on the same machine with [nvm](https://github.com/creationix/nvm) or [nvm-windows](https://github.com/coreybutler/nvm-windows). -::: - -``` bash -npm install -g @vue/cli -# OR -yarn global add @vue/cli -``` - -After installation, you will have access to the `vue` binary in your command line. You can verify that it is properly installed by simply running `vue`, which should present you with a help message listing all available commands. - ## vue create To create a new project, run: diff --git a/docs/guide/installation.md b/docs/guide/installation.md new file mode 100644 index 0000000000..485ee52591 --- /dev/null +++ b/docs/guide/installation.md @@ -0,0 +1,26 @@ +# Installation + +::: danger +The package name changed from `vue-cli` to `@vue/cli`. +If you have the previous `vue-cli` (1.x or 2.x) package installed globally, you need to uninstall it first with `npm uninstall vue-cli -g` or `yarn global remove vue-cli`. +::: + +::: tip Node Version Requirement +Vue CLI requires [Node.js](https://nodejs.org/) version 8 or above (8.11.0+ recommended). You can manage multiple versions of Node on the same machine with [nvm](https://github.com/creationix/nvm) or [nvm-windows](https://github.com/coreybutler/nvm-windows). +::: + +To install the new package, use on of those commands: + +``` bash +npm install -g @vue/cli +# OR +yarn global add @vue/cli +``` + +After installation, you will have access to the `vue` binary in your command line. You can verify that it is properly installed by simply running `vue`, which should present you with a help message listing all available commands. + +You can check you have the right version (3.x) with this command: + +```bash +vue --version +``` diff --git a/docs/guide/plugins-and-presets.md b/docs/guide/plugins-and-presets.md index 7dcbe3391b..2cd9106f61 100644 --- a/docs/guide/plugins-and-presets.md +++ b/docs/guide/plugins-and-presets.md @@ -6,6 +6,10 @@ Vue CLI uses a plugin-based architecture. If you inspect a newly created project The plugin based architecture makes Vue CLI flexible and extensible. If you are interested in developing a plugin, check out the [Plugin Development Guide](../dev-guide/plugin-dev.md). +::: tip +You can install and manage Plugins using the GUI with the `vue ui` command. +::: + ### Installing Plugins in an Existing Project Each CLI plugin ships with a generator (which creates files) and a runtime plugin (which tweaks the core webpack config and injects commands). When you use `vue create` to create a new project, some plugins will be pre-installed for you based on your feature selection. In case you want to install a plugin into an already created project, you can do so with the `vue add` command: From c95d7f09d31194264ef2a62508e5006fb7016be6 Mon Sep 17 00:00:00 2001 From: Guillaume Chau Date: Thu, 12 Jul 2018 14:19:44 +0200 Subject: [PATCH 3/5] fix: set minimum node version (from mini-css-extract) --- docs/guide/installation.md | 2 +- packages/@vue/cli/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/guide/installation.md b/docs/guide/installation.md index 485ee52591..9b3eb1047f 100644 --- a/docs/guide/installation.md +++ b/docs/guide/installation.md @@ -6,7 +6,7 @@ If you have the previous `vue-cli` (1.x or 2.x) package installed globally, you ::: ::: tip Node Version Requirement -Vue CLI requires [Node.js](https://nodejs.org/) version 8 or above (8.11.0+ recommended). You can manage multiple versions of Node on the same machine with [nvm](https://github.com/creationix/nvm) or [nvm-windows](https://github.com/coreybutler/nvm-windows). +Vue CLI requires [Node.js](https://nodejs.org/) version 8.9 or above (8.11.0+ recommended). You can manage multiple versions of Node on the same machine with [nvm](https://github.com/creationix/nvm) or [nvm-windows](https://github.com/coreybutler/nvm-windows). ::: To install the new package, use on of those commands: diff --git a/packages/@vue/cli/package.json b/packages/@vue/cli/package.json index b48fcfff04..a38ef8eaa4 100644 --- a/packages/@vue/cli/package.json +++ b/packages/@vue/cli/package.json @@ -60,6 +60,6 @@ "yaml-front-matter": "^3.4.1" }, "engines": { - "node": ">=8" + "node": ">=8.9" } } From c10fab159ad2902a11b15d4e3a2dcc21b70ea1d4 Mon Sep 17 00:00:00 2001 From: Guillaume Chau Date: Fri, 13 Jul 2018 03:05:13 +0200 Subject: [PATCH 4/5] chore: new changelog [ci skip] --- package.json | 1 + scripts/genChangelog.js | 3 ++- yarn.lock | 10 +++++++++- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 3d37933286..e0a60d9cc7 100644 --- a/package.json +++ b/package.json @@ -47,6 +47,7 @@ ] }, "devDependencies": { + "@vue/conventional-changelog": "^0.1.0", "babel-core": "7.0.0-bridge.0", "conventional-changelog": "^1.1.24", "debug": "^3.1.0", diff --git a/scripts/genChangelog.js b/scripts/genChangelog.js index a784a22396..2c3d5fee19 100644 --- a/scripts/genChangelog.js +++ b/scripts/genChangelog.js @@ -1,11 +1,12 @@ const execa = require('execa') const cc = require('conventional-changelog') +const config = require('@vue/conventional-changelog') const gen = module.exports = version => { const fileStream = require('fs').createWriteStream(`CHANGELOG.md`) cc({ - preset: 'angular', + config, releaseCount: 0, pkg: { transform (pkg) { diff --git a/yarn.lock b/yarn.lock index cc6be040ea..57ec37f03f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1041,6 +1041,14 @@ source-map "^0.5.6" vue-template-es2015-compiler "^1.6.0" +"@vue/conventional-changelog@^0.1.0": + version "0.1.0" + resolved "https://registry.yarnpkg.com/@vue/conventional-changelog/-/conventional-changelog-0.1.0.tgz#f3f7e19e4f8b32b1b589f6f3b1b720256a333d88" + dependencies: + compare-func "^1.3.2" + execa "^0.10.0" + q "^1.5.1" + "@vue/preload-webpack-plugin@^1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@vue/preload-webpack-plugin/-/preload-webpack-plugin-1.0.0.tgz#08f156532909824da2aad258e151742d1e8f822e" @@ -2994,7 +3002,7 @@ commondir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" -compare-func@^1.3.1: +compare-func@^1.3.1, compare-func@^1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/compare-func/-/compare-func-1.3.2.tgz#99dd0ba457e1f9bc722b12c08ec33eeab31fa648" dependencies: From f3a2adaa75dffaf90ab6fdb65e04f8bea7b01a24 Mon Sep 17 00:00:00 2001 From: Alexander Sokolov Date: Fri, 13 Jul 2018 10:21:23 +0300 Subject: [PATCH 5/5] Update README.md --- docs/config/README.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/docs/config/README.md b/docs/config/README.md index 6371685755..1dd6585dee 100644 --- a/docs/config/README.md +++ b/docs/config/README.md @@ -348,9 +348,10 @@ See [@vue/cli-plugin-e2e-cypress](https://github.com/vuejs/vue-cli/tree/dev/pack See [@vue/cli-plugin-e2e-nightwatch](https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-e2e-nightwatch) for more details. ## Example Configurations + ### Disable Hashed Filenames -While generated static asset filenames contain a hash to [ensure the browser picks up changed files](https://webpack.js.org/guides/caching/#output-filenames) this can be disabled. One common scenario for this is when integrating Vue with a backend that dictates a code structure other than what Vue CLI generates, such as with WordPress or Laravel. To disable the hashed filenames, the following can be added to `[vue.config.js](https://cli.vuejs.org/config/#vue-config-js)`: +While generated static asset filenames contain a hash to [ensure the browser picks up changed files](https://webpack.js.org/guides/caching/#output-filenames) this can be disabled. One common scenario for this is when integrating Vue with a backend that dictates a code structure other than what Vue CLI generates, such as with WordPress or Laravel. To disable the hashed filenames, the following can be added to [`vue.config.js`](#vue-config-js): ``` js // vue.config.js @@ -378,8 +379,10 @@ module.exports = { ::: tip When manually overwriting `filename` or `chunkFilename`, `assetsDir` does not need to be included in their path values. ::: + ### Disable Generating index.html -When using Vue CLI with an existing backend, you may need to disable the generation of `index.html` so that they generated assets can be used with another default document. To do so, the following can be added to `[vue.config.js](https://cli.vuejs.org/config/#vue-config-js)`: + +When using Vue CLI with an existing backend, you may need to disable the generation of `index.html` so that they generated assets can be used with another default document. To do so, the following can be added to [`vue.config.js`](#vue-config-js): ``` js // vue.config.js @@ -393,5 +396,5 @@ module.exports = { ``` ::: warning -[Modern Mode](https://cli.vuejs.org/guide/browser-compatibility.html#modern-mode) will not work when the `html-webpack-plugin` is disabled. +[Modern Mode](../guide/browser-compatibility.md#modern-mode) will not work when the `html-webpack-plugin` is disabled. :::