Giter Club home page Giter Club logo

vuetwstarter's Introduction

Vue 2 Starter

Build Status Coverage Status

This starter was created as a starting template for a Vue.js 2 frontend application built with TypeScript.

Features

  • TypeScript - For type safety and other awesome features not native to vanilla JavaScript.
  • SASS - CSS extension language for CSS nesting, mixins, variables, modules and inheritance.
  • BEM Methodology - Methodology for naming and organizing CSS selectors and HTML elements.
  • Vuex - Vue.js library for state management.

Roadmap

  • Unit tests with mocha, chai & sinon
  • Continuous integration with TravisCI
  • Coverage reports with Istanbul & Coveralls
  • Add SCSS files with 7-1 architecture pattern
  • Add basic layout for the app(header,footer,wrapper)
  • Add components for auth pages(login,register,forgot/reset password)
  • Add store for state management and cookies
  • Add basic configuration for PWA
  • Containerized setup with docker-compose

Environment Variables

To begin using the starter project, first copy the example variables into a .env.[mode].local file with command: cp .env.example .env.[mode].local. The modes available are documented here. You will then need to modify the following environment variables in the .env.[mode].local file for your frontend to run:

  • VUE_APP_NAME - Name of the application

  • VUE_APP_URI - URI for the application

  • VUE_APP_API_URI - URI for the REST API

Run Locally

Clone the project

  git clone https://github.com/peterkitonga/vuetwstarter

Go to the project directory

  cd vuetwstarter

Install dependencies

  npm install

Start the server

  npm run serve

Deployment

Install dependencies first

  npm install

To deploy this project run

  npm run build

Running Tests

Tests are written in Mocha, Chai under the tests directory and uses istanbul for coverage reports. To run tests, run the following command

  npm run test:unit

To run and view coverage reports for the tests, you will need to run two scripts in sequential order

  npm run test:coverage ; npm run test:view

Linting

Linting is configured with eslint and prettier. You are free to configure it to your liking using the configuration file .eslintrc.js.

To check for and fix linting errors, run

  npm run lint

Further Customization

See configuration reference here for further customization

Authors

Peter Kitonga

vuetwstarter's People

Contributors

peterkitonga avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.