This project is an Inventory Management System built with TypeScript and tested with Cypress and Vitest. It helps manage and track inventory items efficiently.
- Add, update, and delete inventory items
- Search and filter items
- Track inventory levels
- Generate reports
- TypeScript
- Node.js
- Express.js
- Cypress
- MongoDB
- Vitest
- Docker
- Clone the Repository:
git clone https://github.com/Milanshub/Inventory-management-ts-jest-project-6.git
cd inventory-management-ts-jest-project-6
- Build the Backend Server:
cd server
npm install
npm build
- Build the Frontend Client:
cd ../client
npm install
npm build
- Start the Backend Server:
cd ../server
npm start:dist
- Start the Frontend Client:
cd ../client
start:build
-
Ensure Docker and Docker Compose are Installed.
-
Build and Start the Application:
docker-compose up --build
-
Ensure Kubernetes and kubectl are Installed.
-
Apply Kubernetes Configuration:
kubectl apply -f k8s/
- Forward Ports to Access Services Locally:
kubectl port-forward svc/client-service 3000:80 -n inventory-demo-app
kubectl port-forward svc/server-service 5000:5000 -n inventory-demo-app
cd server
npm test
cd client
# Run Component Tests
npm run cypress:run:component
# Run E2E Tests
npm run cypress:run:e2e
Contributions are welcome! Please fork the repository and create a pull request.
This project is licensed under the MIT License.
For any inquiries, please contact [[email protected]].