Skip to content

m0uneer/vue-simple-ecommerce-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CI/CD Pipeline codecov

vue-simple-ecommerce-app

Project setup

$ npm install

Compiles and hot-reloads for development

$ npm run serve

Compiles and minifies for production

$ npm run build

Run your unit tests

$ npm run test:unit

Run your end-to-end tests

npm run test:e2e

Lints and fixes files

npm run lint

What is included

  • Simple UI with Bulma framework
  • Products crud that support uploading product images
  • User register/login with JWT
  • Simple validation
  • State management using Vuex
  • ApiService to globally support interceptors to add headers, retrying requests and handle API errors.
  • EventBusService to require authentication if access token is invalid or missing
  • TokenService to encapsulate the storage of the access token to provide low-coupling, more flexibility, and testability
  • Architectural designs: MVC, Modular and Atomic
  • Refreshing token mechanism with HttpInterceptorService to retry the API request again without generating a new token
  • Single point of app configuration management config.js that can support different environments
  • Unit tests with Jest. Check productList.spec.js and productAdd.spec.js
  • Integration test with Cypress. Check userAuth.e2e.spec.js
  • Coverage with Codecov
  • Linters
  • Semantic releasing to manage package versions and generate changelog documentation
  • CICD Pipeline with Github actions. It checks npm audit, lint, run tests, upload to Codecov, deploy, and semantic release
  • Conventional commit messages with Git-cz and Husky

Live

https://vue-simple-ecommerce-app.web.app/

Backend Koa repository

https://github.com/m0uneer/simple-ecommerce-koa-server