NWJS_Hour_Tracking/README.md
The Jared Wilcurt ecf13b90c1
Update README.md
2019-09-17 06:22:06 -04:00

72 lines
2.2 KiB
Markdown

# nw-vue-cli-example
NW.js + Vue-CLI 3 example
![A screenshot of the default app running on Windows](screenshot.png)
* NW.js
* Vue-CLI 3
* Vue 2
* Vue-DevTools
* Babel
* ESLint
* Jest (100% test coverage)
## Running Locally for development
1. `npm install`
1. `npm start`
1. An empty window will pop up while Webpack warm ups
1. Once Webpack is running, refresh the window and you're golden
## Building for distribution
1. `npm run build:clean` will delete your `./dist` and `./dist-vue` folders
1. `npm run build:vue` will build just your Vue app for distribution (`./dist-vue`)
1. `npm run build:nw` will build just your NW.js app (`./dist`)
1. `npm run build` is your all-in-one command. It will clean out the old dist folders and build your Vue and NW.js app
# **IMPORTANT NOTE ABOUT BUILDS!!!**
They take a long time. If you do `npm run build` expect it to take 10-30 minutes (depending on amount of dependencies in the dist and your CPU/internet). This can be adjusted by changing the build params in the `package.json`. The more platforms and build types, the longer it takes.
## Automated quality enforcment
1. **Linting:** `npm run lint` - Uses rules in `./eslint.json`
1. **Unit tests:** `npm run test:unit` - [Jest](https://jestjs.io).
1. **End-to-end:** `npm run test:e2e` - Accepting PR to make tests run in NW.js. - [Nightwatch](https://nightwatchjs.org).
### Customize configuration
Want Vue-Router? Vuex? Use the Vue-CLI to add them:
* [Vue-CLI documentation](https://cli.vuejs.org/config).
* * *
## Alternatives
* [nwjs-vue](https://github.com/elegantweb/nwjs-vue) - Uses Vue-CLI 2
* [vue-desktop-basic](https://github.com/TheJaredWilcurt/vue-desktop-basic) - Does not use a build system at all, all `.vue` files run directly in the browser context
* * *
## Maintainence of this repo
This is not for those *using* this repo, but for those *maintaining* it.
1. When updating the version of NW.js devDependency, also update these:
* `tests/unit/setup.js`
* `tests/unit/components/__snapshots__/HelloWorld.test.js.snap`
* `.browserslistrc`
1. Run `npm run regression` after updating dependencies or other major changes to verify builds still work correctly