Full featured Vue.js starter project for browser apps
Switch branches/tags
Nothing to show
Clone or download
desktop-windows
Latest commit ece94ea Aug 6, 2017
Permalink
Failed to load latest commit information.
src Switched to history routing, added production-build serving with spa-… Aug 2, 2017
.babelrc
.editorconfig initial commit Aug 1, 2017
.eslintignore
.eslintrc initial commit Aug 1, 2017
.gitignore initial commit Aug 1, 2017
.npmrc initial commit Aug 1, 2017
LICENSE Added LICENSE (MIT) Aug 3, 2017
README.md Update README.md Aug 2, 2017
index.html initial commit Aug 1, 2017
jsconfig.json
package-lock.json Css minification after critical-path extraction, using npx instead of… Aug 6, 2017
package.json Css minification after critical-path extraction, using npx instead of… Aug 6, 2017
webpack.config.js

README.md

Friendly-vue-starter

Full featured Vue.js starter project for browser apps. Main focus:

  • Developer experience
  • Performance
  • Future-proofness

Features

Usage

git clone https://github.com/mcongy/friendly-vue-starter
cd friendly-vue-starter
npm install
npm run dev

npm run dev to start the webpack-dev-servcer in development mode with hot-reloading

npm run build to build and optimize the application for production use

npm run analyze to build and analyze the production bundle via webpack-bundle-analyzer

npm run clean to remove node_modules, package.lock, yarn.lock and dist folder

npm run lint to run Eslint on whole project

npm run check to check for outdated packages

npm run serve:build to serve production build with spa-http-server (works with history API routing)

There's also a husky pre-commit hook included, that will run eslint before commiting and possibly abort the operation if there are any errors. You can also add things like flow-typechecking and unit/e2e testing here, to ensure quality of your git repository

Roadmap

  • Add unit-tests (propably via vue-test-utils when it's finished)
  • Add e2e tests (probably via testcafe and testcafe-vue-selectors)
  • Possibly integrate Typescript (there's an ongoing work to improve typescript experience in Vue.js)
  • Possibly integrate Flow-type (currently there a lot of small issues that make flow-type (in my opinion) not-worth to use with Vue.js, but this might change in the future)

Caveats

  • Prettier will format first line of script tags in .vue files badly. There is an ongoing work on better Vue.js integration (even for templates!)

Backend

Friendly-vue-starter is configured to use GraphQL. You can use any GraphQL backend, your custom backend or BaaS solution like graph.cool or scaphold.io
If you do not want or can't use a GraphQL backend, you can simply remove apollo-client and fetch your data using any HTTP client (I recommend using axios or unfetch )

Contributors

Matúš Čongrády