Test case for simple online store service.
- Authentication
- Product Management
- Cart
- Checkout
- Order Management
- Node.js (Production/Dockerization)
- Bun (Development)
- Express.js
- MySQL
- Sequelize
- Sequelize CLI
- Joi
- JWT
- Docker
- Docker Compose
- Development
- Just Trying
- Docker >= 24.0.7
- Docker Compose >= 2.15.1
Service | Endpoint | Method | Used for |
---|---|---|---|
Seller Register | /auth/register/seller |
POST | Seller |
Customer Register | /auth/register/customer |
POST | Seller |
Login | /auth/login |
POST | Both |
Add Product | /products |
POST | Seller |
Get Products | /products |
GET | Public |
Get Product by ID | /products/:id |
GET | Public |
Add Item to Cart | /carts |
POST | Customer |
Get Cart Items | /carts |
GET | Customer |
Checkout | /orders |
POST | Customer |
Get Orders | /orders |
GET | Seller |
Get Order Detail by ID | /orders/:id |
GET | Seller |
For more details, please refer to this report document.
- Clone and cd to this repo
git clone https://github.com/tudemaha/ads-testcase cd ads-testcase
- Run Docker Compose (use
sudo
if necessary)docker compose up
- Wait until
mysql
andweb
services ready - Try API using
http://localhost:8080