Vue, Vuex and Typescript


A project made with Vue 3, Vuex 4, and Typescript.

Heavy use of new features as composition API, composable functions, and portals.

Unit testing with Vue Testing Library.

Online shop

The app runs a online shop which sells 3 products.

The current prices of the products are the following:

Code         | Name         |  Price
CAP          | Cap          |   5.00€
TSHIRT       | T-Shirt      |  20.00€
MUG          | Coffee Mug   |   7.50€

The shop offering these discounts:

  • 2-for-1 promotions: Buy two of the same product, get one free, applied to CAP items.
  • Bulk discounts: Buying 3 or more of TSHIRT product, the price of that product is reduced 5%. E.g., if you buy 3 or more TSHIRT items, the price per unit should be 19.00€.

See in action

Buy some mock products.


Check out the source code.