vuesion/vuesion

View on GitHub
README.md

Summary

Maintainability
Test Coverage
<img width="256px" height="256px" src="https://user-images.githubusercontent.com/1667598/55292014-ea98a800-53e5-11e9-82ca-11ba7bb2bbcd.png" alt="vuesion logo" align="center" />

# Vuesion

_**Vuesion is a boilerplate that helps product teams build faster than ever with fewer headaches and modern best practices across engineering & design.**_

[![GitHub release](https://img.shields.io/github/release/vuesion/vuesion.svg)](https://GitHub.com/vuesion/vuesion/releases/)
[![Test Coverage](https://api.codeclimate.com/v1/badges/c8e3979ea94da8e9d683/test_coverage)](https://codeclimate.com/github/vuesion/vuesion/test_coverage)
[![Maintainability](https://api.codeclimate.com/v1/badges/c8e3979ea94da8e9d683/maintainability)](https://codeclimate.com/github/vuesion/vuesion/maintainability)
[![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg)](https://GitHub.com/vuesion/vuesion/graphs/commit-activity)
[![GitHub issues-closed](https://img.shields.io/github/issues-closed/vuesion/vuesion.svg)](https://GitHub.com/vuesion/vuesion/issues?q=is%3Aissue+is%3Aclosed)
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fvuesion%2Fvuesion.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Fvuesion%2Fvuesion?ref=badge_shield)
[![MIT license](https://img.shields.io/badge/License-MIT-blue.svg)](https://lbesson.mit-license.org/)

# Live demo

Please visit the **[vuesion app on heroku!](https://vuesion.herokuapp.com/)**

Or have a look into the future and visit the **[vuesion-next app on heroku!](https://vuesion-next.herokuapp.com/)**

# [Get started](https://vuesion.github.io/docs/en/v5/guide/install.html)

# [Documentation](https://vuesion.github.io/docs/en/v4/)

# Features

## Testing

- [Cypress.io E2E testing](https://www.cypress.io/)
- [Vitest Testing framework](https://vitest.dev/)
- [Testing-library](https://testing-library.com/) to encourage good testing practices
- 250+ example tests included

## DX, Code quality and maintenance

- [TypeScript](https://www.typescriptlang.org/)
- [Eslint](https://eslint.org/)
- [Commit message linting](https://github.com/conventional-changelog/commitlint)
- [Prettier code formatting](https://prettier.io/)
- [Semantic releases](./.github/semantic.yml)
- [Changelog](https://www.npmjs.com/package/generate-changelog)
- [Husky pre-commit hooks](https://github.com/typicode/husky)
- [Dockerfile included](./Dockerfile)
- [.env support](./.env-prod)

## Core

- server-side-rendering, single-page-app or statically generated HTML with [Nuxt.js](https://nuxtjs.org/)
- [100% customizable Design-system with 35+ components including](https://vuesion.herokuapp.com/storybook)
  - layout, typography, button, input, select, checkbox, radio, (range-)slider, toggle, ...
  - theming/whitelabel support
- [Figma UIKit](https://www.figma.com/file/DvP4EE7gAJH3fsc4RFqZYc/Vuesion-Core?node-id=1686%3A4660)
- [SEO support](https://github.com/nuxt/vue-meta)
- [i18n support](https://i18n.nuxtjs.org/)
- [Authentication module](https://sidebase.io/nuxt-auth/getting-started)
- [Axios module](https://axios.nuxtjs.org/)
- [PWA module](https://pwa.nuxtjs.org/)
- Code generators for
  - components
  - pages
  - interfaces and fixtures
  - vuex modules
- [Storybook](https://storybook.js.org/) with the following add-ons
  - [a11y](https://storybook.js.org/addons/@storybook/addon-a11y/)
  - [actions](https://storybook.js.org/addons/@storybook/addon-actions/)
  - [console](https://storybook.js.org/addons/@storybook/addon-console/)
  - [links](https://storybook.js.org/addons/@storybook/addon-links/)
  - [story-source](https://storybook.js.org/addons/@storybook/addon-storysource)
  - [viewport](https://storybook.js.org/addons/@storybook/addon-viewport/)
  - [theme-switcher](https://github.com/vuesion/packages/tree/master/packages/storybook-theme-switcher)
- Form validation with [vee-validate](https://vee-validate.logaretm.com/v3)
- [Anime.js](https://animejs.com/) integration

# Support this project

- [Give a :star:!](https://github.com/vuesion/vuesion/stargazers)
- [![Tweet](https://img.shields.io/twitter/url/http/shields.io.svg?style=flat)](https://twitter.com/intent/tweet?text=Vuesion%20an%20enterprise%20ready%20boilerplate%20for%20isomorphic,%20progressive%20web%20apps%20with%20Vue.JS&url=https://github.com/vuesion/vuesion&via=vuesion1&hashtags=Vuesion,VueJS,SEO,Enterprise) it!
- Join the <a href="https://discord.gg/59x5cg2" target="_blank"><img src="https://cdn0.iconfinder.com/data/icons/square-logo-buttons/512/discord-1-128.png" height="20px" /> Discord community</a>!
- [Contribute!](https://github.com/vuesion/vuesion/blob/master/CONTRIBUTING.md)

# Contribute

Contributions are always welcome! Please read the [contribution guidelines](https://github.com/vuesion/vuesion/blob/master/CONTRIBUTING.md) first.

Thanks goes to these wonderful people:

<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
<!-- prettier-ignore-start -->
<!-- markdownlint-disable -->
<table>
  <tr>
    <td align="center"><a href="https://twitter.com/_jwerner_"><img src="https://avatars1.githubusercontent.com/u/1667598?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Johannes Werner</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=devCrossNet" title="Code">πŸ’»</a> <a href="https://github.com/vuesion/vuesion/issues?q=author%3AdevCrossNet" title="Bug reports">πŸ›</a> <a href="https://github.com/vuesion/vuesion/commits?author=devCrossNet" title="Documentation">πŸ“–</a> <a href="#design-devCrossNet" title="Design">🎨</a> <a href="#example-devCrossNet" title="Examples">πŸ’‘</a> <a href="#tool-devCrossNet" title="Tools">πŸ”§</a></td>
    <td align="center"><a href="https://github.com/40818419"><img src="https://avatars2.githubusercontent.com/u/2235499?s=460&v=4?s=64" width="64px;" alt=""/><br /><sub><b>Konstantin Kulinicenko</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=40818419" title="Code">πŸ’»</a> <a href="https://github.com/vuesion/vuesion/issues?q=author%3A40818419" title="Bug reports">πŸ›</a> <a href="https://github.com/vuesion/vuesion/commits?author=40818419" title="Documentation">πŸ“–</a> <a href="#example-40818419" title="Examples">πŸ’‘</a></td>
    <td align="center"><a href="http://xmartin.de/"><img src="https://avatars2.githubusercontent.com/u/112532?v=4?s=64" width="64px;" alt=""/><br /><sub><b>xMartin</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=xMartin" title="Code">πŸ’»</a> <a href="https://github.com/vuesion/vuesion/issues?q=author%3AxMartin" title="Bug reports">πŸ›</a> <a href="https://github.com/vuesion/vuesion/commits?author=xMartin" title="Documentation">πŸ“–</a> <a href="#example-xMartin" title="Examples">πŸ’‘</a></td>
    <td align="center"><a href="http://saigao.fun"><img src="https://avatars0.githubusercontent.com/u/31165554?v=4?s=64" width="64px;" alt=""/><br /><sub><b>SilverΒ·ζΉ«ζΎ²</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=SilverLeaves" title="Documentation">πŸ“–</a> <a href="#translation-SilverLeaves" title="Translation">🌍</a></td>
    <td align="center"><a href="https://stavrosliaskos.com/"><img src="https://avatars2.githubusercontent.com/u/17932287?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Stavros Liaskos</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/issues?q=author%3Astavros-liaskos" title="Bug reports">πŸ›</a></td>
    <td align="center"><a href="https://marceloboeira.com"><img src="https://avatars3.githubusercontent.com/u/1898225?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Marcelo Boeira</b></sub></a><br /><a href="#translation-marceloboeira" title="Translation">🌍</a></td>
    <td align="center"><a href="http://teamteatime.net/"><img src="https://avatars3.githubusercontent.com/u/3583774?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Rick Mann</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=Riari" title="Code">πŸ’»</a></td>
  </tr>
  <tr>
    <td align="center"><a href="http://www.EnigmaCurry.com"><img src="https://avatars0.githubusercontent.com/u/43061?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Ryan McGuire</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=EnigmaCurry" title="Code">πŸ’»</a></td>
    <td align="center"><a href="https://github.com/jmcdo29"><img src="https://avatars3.githubusercontent.com/u/28268680?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Jay McDoniel</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=jmcdo29" title="Code">πŸ’»</a></td>
    <td align="center"><a href="http://livgrhm.com"><img src="https://avatars3.githubusercontent.com/u/3798005?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Olivia Graham</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=livgrhm" title="Code">πŸ’»</a></td>
    <td align="center"><a href="http://hugomagalhaes.com"><img src="https://avatars3.githubusercontent.com/u/497957?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Hugo Magalhães</b></sub></a><br /><a href="#translation-hugomn" title="Translation">🌍</a></td>
    <td align="center"><a href="https://github.com/glederer"><img src="https://avatars3.githubusercontent.com/u/7151993?v=4?s=64" width="64px;" alt=""/><br /><sub><b>glederer</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=glederer" title="Documentation">πŸ“–</a></td>
    <td align="center"><a href="https://github.com/tamer-mohamed"><img src="https://avatars3.githubusercontent.com/u/4436327?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Tamer Mohamed</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=tamer-mohamed" title="Code">πŸ’»</a></td>
    <td align="center"><a href="https://github.com/rizwanzaheer"><img src="https://avatars3.githubusercontent.com/u/13586702?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Rizwan Zaheer</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=rizwanzaheer" title="Documentation">πŸ“–</a></td>
  </tr>
  <tr>
    <td align="center"><a href="https://github.com/rgrosjean"><img src="https://avatars3.githubusercontent.com/u/39985706?v=4?s=64" width="64px;" alt=""/><br /><sub><b>rgrosjean</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=rgrosjean" title="Code">πŸ’»</a></td>
    <td align="center"><a href="https://corbella.me"><img src="https://avatars2.githubusercontent.com/u/4535719?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Bernardo Corbella</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=bernardocorbella" title="Code">πŸ’»</a></td>
    <td align="center"><a href="http://mohittilwani.com"><img src="https://avatars3.githubusercontent.com/u/13518712?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Mohit Tilwani</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=MohitTilwani15" title="Code">πŸ’»</a></td>
    <td align="center"><a href="https://github.com/eipiminus1"><img src="https://avatars2.githubusercontent.com/u/11791837?v=4?s=64" width="64px;" alt=""/><br /><sub><b>eipiminus1 </b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=eipiminus1" title="Documentation">πŸ“–</a></td>
    <td align="center"><a href="http://jezmck.com"><img src="https://avatars2.githubusercontent.com/u/89996?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Jez McKean</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=jezmck" title="Documentation">πŸ“–</a></td>
    <td align="center"><a href="http://duylam.pleaserevise.xyz"><img src="https://avatars1.githubusercontent.com/u/855206?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Duylam Nguyen-Ngo</b></sub></a><br /><a href="#design-einfalles" title="Design">🎨</a></td>
    <td align="center"><a href="https://www.merschroth.design/"><img src="https://avatars2.githubusercontent.com/u/19751007?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Martin Merschroth</b></sub></a><br /><a href="#design-majroth" title="Design">🎨</a></td>
  </tr>
  <tr>
    <td align="center"><a href="http://www.camswork.com"><img src="https://avatars0.githubusercontent.com/u/1984124?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Camila Peralta Wieland</b></sub></a><br /><a href="#design-campunknita" title="Design">🎨</a></td>
    <td align="center"><a href="http://alecsoftolio.com"><img src="https://avatars1.githubusercontent.com/u/39228141?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Alec M</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=HeavenlyEntity" title="Documentation">πŸ“–</a></td>
    <td align="center"><a href="https://misikoff.com/"><img src="https://avatars.githubusercontent.com/u/9086984?v=4?s=64" width="64px;" alt=""/><br /><sub><b>misikoff</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=misikoff" title="Code">πŸ’»</a></td>
    <td align="center"><a href="http://silver.saigao.fun/saigao/index.html"><img src="https://avatars.githubusercontent.com/u/31165554?v=4?s=64" width="64px;" alt=""/><br /><sub><b>θ‡­ε“₯ε“₯Β·ζΉ«ζ›—</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=Akimotorakiyu" title="Documentation">πŸ“–</a></td>
    <td align="center"><a href="https://www.paulvogel.me/"><img src="https://avatars.githubusercontent.com/u/4786628?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Paul Vogel</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=pavog" title="Documentation">πŸ“–</a></td>
    <td align="center"><a href="https://fuzinato.com/"><img src="https://avatars.githubusercontent.com/u/3132724?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Dario Fuzinato</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=fuzinato" title="Code">πŸ’»</a></td>
    <td align="center"><a href="https://github.com/maks232"><img src="https://avatars.githubusercontent.com/u/166910?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Maksim Bock</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=maks232" title="Tests">⚠️</a></td>
  </tr>
  <tr>
    <td align="center"><a href="https://loopios7.xyz/"><img src="https://avatars.githubusercontent.com/u/40054139?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Dan</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/issues?q=author%3ALoopios7" title="Bug reports">πŸ›</a></td>
    <td align="center"><a href="https://github.com/manuasir"><img src="https://avatars.githubusercontent.com/u/10210567?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Manuel J. Bernal</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=manuasir" title="Documentation">πŸ“–</a></td>
    <td align="center"><a href="https://github.com/drsugiaichigo00781vn"><img src="https://avatars.githubusercontent.com/u/23171740?v=4?s=64" width="64px;" alt=""/><br /><sub><b>Nguyen Kim Bang</b></sub></a><br /><a href="https://github.com/vuesion/vuesion/commits?author=drsugiaichigo00781vn" title="Documentation">πŸ“–</a></td>
  </tr>
</table>

<!-- markdownlint-restore -->
<!-- prettier-ignore-end -->

<!-- ALL-CONTRIBUTORS-LIST:END -->

This project follows the [all-contributors](https://github.com/kentcdodds/all-contributors) specification. Contributions of any kind welcome!

# References

- [nuxt](https://nuxtjs.org/)
- [@sidebase/nuxt-auth](https://sidebase.io/nuxt-auth/getting-started)
- [nuxt/pwa](https://pwa.nuxtjs.org/)
- [nuxt/i18n](https://i18n.nuxtjs.org/)
- [Storybook](https://storybook.js.org/)
- [vitest](https://vitest.dev/)
- [cypress.io](https://www.cypress.io/)
- [testing-library](https://testing-library.com/docs/vue-testing-library/intro/)
- [vee-validate](https://vee-validate.logaretm.com/v3)
- [animejs](https://animejs.com/)

# Contact

- [Discord](https://discord.gg/59x5cg2)
- [Twitter](https://twitter.com/vuesion1)

# License

[MIT](http://opensource.org/licenses/MIT)