This application had been created as a part of Wave Front-end Challenge.
-
VUEX. What is Vuex?
- Vuex is a state management pattern + library for Vue.js applications
- Link: https://github.com/vuejs/vuex
- Demonstration of Persisted State Behavior.
-
Bootstrap Library
-
SASS Preprocessor & Autofixer
-
Cypress. What is cypress?
- Cypress is a E2E testing framework for anything that runs in the browser.
- Link: https://www.cypress.io/
- Implementation of all the aspects of the framework, such as router, store (vuex), persisted state, e2e testing.
- Implenmentation of SCSS, which shows the ability to work with various style languages & setup.
- Implementation of linting & documentation.
- Creating environment files.
- Ability to work with packages, frameworks as well as knowlegefull implmentation of tree shaking.
- Unit testing.
- CI/CD Setup.
- Implementation of JSON Server/Stub for local stubbing.
- In order to run the project locally you would need to clone the repository. Please run the following commands in order to clone the project using the choice of your terminal/operating system.
git clone https://github.com/kunalrrv/invoicing.git
cd invoicing
- In order to run the project, you will need to have all the required dependencies for the project. Please run the following command in order to install all the dependencies.
npm install
---OR---
yarn
- In order to start a development server, you can run the following command from the terminal
npm run serve
---OR---
yarn serve
-
Once the server starts, you can access the application by opening your browser and the URL as
http://localhost:8080
-
In order to check your application size & bundle size, you can access the URL
http://localhost:8888
to see the bundle analyzer screen. -
In order to run the application in production mode, you can run the following command from the terminal
npm run serve:prod
---OR---
yarn serve:prod
- In order to create a build for the project, you can run the following command from the terminal.
npm run build
---OR---
yarn build
- In order to lint the files based on your configuration. You can run the following command from the terminal.
npm run lint
---OR---
yarn lint
- In order to perform end to end testing, you can run the following command
npm run e2e
---OR---
yarn e2e
- In order to perform end to end testing in interactive mode with the Cypress window open, you can run the following command
npm run e2e:persist
---OR---
yarn e2e:persist
- Cypress runs e2e test on its default electron browser in headless mode, but if you would like to run e2e tests in terminal with chrome (header), please run the following command
npm run e2e:chrome
---OR---
yarn e2e:chrome