/generator-jm-vuejs

A Yeoman generator for creating VueJS applications.

Primary LanguageJavaScriptMIT LicenseMIT

generator-jm-vuejs

NPM version Build Status Dependency Status Greenkeeper badge Code Climate Code Climate Known Vulnerabilities

Generator for generating VueJS applications.

General

It is important to note that this generator is heavily opinionated. It is intended to be used as a starting point for bigger Vue SPA projects.

Installation

First, install Yeoman and generator-jm-vuejs using npm (we assume you have pre-installed node.js).

npm install -g yo
npm install -g generator-jm-vuejs

Then generate your new project:

yo @jshmrtn/jm-vuejs

Yeoman

Feel free to learn more about Yeoman.

Vue Application

This generator will help you bootstrap a vue application pretty quickly. You will have a few choices for the core boilerplate. These choices will let you decide on which additional features (besides the ones in the Vue core) you would like to use. In the following section you'll get a short summary of the functionality and the libs we use to enhance our applications.

yo @jshmrtn/jm-vuejs:app

Core Features

The following core features are built into the generators root boilerplate.

Dependency Injection

This can be used to ease working with dependencies the right way. Also, this makes testing components much easier.

Libs
Docs / Articles
Error Tracking

Error tracking with raven-js will allow you to catch most uncatched errors in a production grade frontend application.

Libs
Docs / Articles
GraphQL Client

If you intend to connect your Vue application to a GraphQL backend the apollo client and vue-apollo do a great job.

Libs
Docs / Articles
HTTP Client

For communicating with regular (and not so regular) REST APIs vue-resource is a great tool.

Libs
Docs / Articles
Routing

All routing needs can be fulfilled with vue-router. This is especially true because it is developed by the core team in "feature parity" together with Vue itself.

Libs
Docs / Articles
State

Handling the state will quickly become a vital part of your Vue application if you intend to scale it. Vuex is (like the vue-router) developed by the core team.

Libs
Docs / Articles
Translations / i18n

If you consider a lightweight i18n implementation in your applications to be a "basic feature", vue-i18n can be used without hassle.

Libs
Docs / Articles

Vue Component

This generator will help you bootstrap a vue component pretty quickly.

yo @jshmrtn/jm-vuejs:component

License

MIT © JOSHMARTIN GmbH