modern-spa-boilerplate
Version:
Modern Boilerplate for Single Page Applications
61 lines (45 loc) • 3.52 kB
Markdown
# Modern Boilerplate for Single Page Applications<br/>[![Sponsored by][sponsor-img]][sponsor] [![Version][npm-version-img]][npm] [![Downloads][npm-downloads-img]][npm] [![Build Status][ci-img]][ci] [![Dependencies][deps-img]][deps]
[sponsor-img]: https://img.shields.io/badge/Sponsored%20by-Sebastian%20Software-692446.svg
[sponsor]: https://www.sebastian-software.de
[ci-img]: https://travis-ci.org/sebastian-software/modern-spa-boilerplate.svg?branch=master
[ci]: https://travis-ci.org/sebastian-software/modern-spa-boilerplate
[deps]: https://david-dm.org/sebastian-software/modern-spa-boilerplate
[deps-img]: https://david-dm.org/sebastian-software/modern-spa-boilerplate.svg
[npm]: https://www.npmjs.com/package/modern-spa-boilerplate
[npm-downloads-img]: https://img.shields.io/npm/dm/modern-spa-boilerplate.svg
[npm-version-img]: https://img.shields.io/npm/v/modern-spa-boilerplate.svg
## Demo
Check out our [Demo](https://sebastian-software.github.io/modern-spa-boilerplate/) of the distribution build.
## Features
- [x] [Gulp](http://gulpjs.com/) with full ES6 support for task definition
- [x] [JSPM](http://jspm.io) Package Manager for client side package management
- [x] [PostCSS](http://postcss.org) for advanced CSS features, automatic prefixes and compression
- [x] Best in class CSS compression with [CSS-O](https://github.com/css/csso)
- [x] Linting JavaScript sources with [ESLint](http://eslint.org)
- [x] [VueJS](http://vuejs.org) for client side view management and components
- [x] Support for `.vue`-files for seamless component-driven development
- [x] Support live-editing and -reloading of all files types incl. css, js, vue components.
- [x] [VueRouter](http://router.vuejs.org) navigation inside a VueJS application
- [x] [Vuex](http://vuex.vuejs.org/) application architecture for centralized state management
- [x] [Vuex Validator](https://github.com/sebastian-software/vuex-validator) for (simple and complex) centralized state validation
- [x] [CSS Modules](https://github.com/css-modules/css-modules) for preventing conflicts between VueJS components
- [x] Support [SugarSS](https://github.com/postcss/sugarss) for all imports (even mixed file types)
- [x] Linting of CSS source files based on [stylelint](https://github.com/stylelint/stylelint)
- [x] System notifications using [node-notifier](https://github.com/mikaelbr/node-notifier) for updates on rebuilding/errors.
- [x] Automatic deployment builds using the magic of [AssetGraph](https://github.com/assetgraph/assetgraph) with full support for hashed asset names.
- [x] Integration of UI testing based on [CasperJS](http://casperjs.org/) and [PhantomJS](http://phantomjs.org/) (Webkit-based) / [SlimerJS](https://slimerjs.org/) (Gecko-based)
- [x] Dynamic SVG optimization for inlined SVG graphics/icons.
- [x] Adds information about Git revision to all HTML files.
- [x] Favicon hashing + additional IE fallback support
## Features - Not Done
- [ ] Asset Management
- [ ] Font System PostCSS Plugin
- [ ] Layout Selector PostCSS Plugin
- [ ] Web Font Integration
- [ ] Automatic SVG Sprite Sheets
- [ ] Testing Integration mit Karma Testrunner
- [ ] API documentation generator
- [ ] Deployment with Support for SRI (Subresource Integrity)
## Copyright
<img src="https://raw.githubusercontent.com/sebastian-software/s15e-javascript/master/assets/sebastiansoftware.png" alt="Sebastian Software GmbH Logo" width="250" height="200"/>
Copyright 2016<br/>[Sebastian Software GmbH](http://www.sebastian-software.de)