1.6 KiB
1.6 KiB
Ecomm
Description
This is a simple e-commerce backend application.
Technologies used:
- Node.js
- typescript
- Express.js
- MongoDB
- Mongoose ORM
- Docker (docker-compose)
- bcrypt
- JWT
How to run
- Clone the repository
- Make sure you have docker and docker-compose installed
- Implement the .env file
- Run
docker-compose up
in the root directory The application will be running on port 3000 The database will be running on port 27017
API
app.use('/products', productRouter); app.use('/cart', cartRouter);
Users
POST /users ## - Create a new user
Request body
{
"name": "string",
"email": "string",
"password": "string"
}
Response body
{
"user": {
"_id": "string",
"name": "string",
"email": "string",
"password": "string",
"createdAt": "string",
"updatedAt": "string",
"__v": "number"
},
"token": "string"
}
POST /users/login ## - Login
Request body
{
"email": "string",
"password": "string"
}
Response
body
{
"access-token": "string"
}
headers
Cookie - "access-token"": "string"
Products
GET /products ## - Get all products
accepts query params: page, limit. Default values: page = 0, limit = 50.
Response body
{
"products": [
{
"_id": "string",
"name": "string",
"description": "string",
"price": "number",
"createdAt": "string",
"updatedAt": "string",
"__v": "number"
}
],
"total": "number"
}