Tech Store would like to have an Inventory Management System (IMS) to keep track of items procured from suppliers, sold to customers or returned by customers. Each item has a Value and Quantity, for example Item A has a Value of 1 and Quantity of 3. IMS needs to be updated each time the store procures goods, for example a new Item A is bought by the store from a supplier. IMS will also need to be updated when a customer buys items (i.e. the item will need to be removed from the inventory). In addition, it could also happen that a customer buys an item then returns it. In this case, the item will need to be removed from the inventory when the customer buys it and then added to the inventory when the customer returns it.
https://simple-inventory-system.web.app/#/
- The uniqueness of an item is decided by the its name and value
- The scenario of returning an item has the same business rules (And test cases) of adding one
- Purchasing (Removal) an item should must pass the name and the value to be able to update that item properly.
- Using typescript
- Using Vue
- Using Vuex
- Unit test using Jest
- Using SCSS
- Using Bootstrap 4
- Applying AirBnB Style guide
- Using
semantic-release
for semantic versioning and generation changelog - Using
commitlint
andhusky
to force Angular conventional commit format and linting staged files - Using Travis for CI/CD and releasing
- Deployed to Firebase
- NodeJS > v10.18
npm install
npm run serve
npm run build
npm run test:unit
npm run lint
- Vue
- Typescript
- IMS storage should apply First In First Out (FIFO) principle
- Unit testing
- Deploy your app using Firebase Hosting
- Using Inversify to manage DI
- Advanced form validation
- Using a logger
- Using Djaty for bug tracking
- Add the badges to the README.md