This project is a RESTful API for a Shoes Shop, built with Node.js, Express, and MongoDB. It provides a backend service for an online shoe store, allowing users to manage products, categories, carts, and orders.
- User authentication and authorization
- CRUD operations for products
- CRUD operations for categories
- Cart management
- Order management
- Node.js
- Express.js
- MongoDB
- Mongoose
- JSON Web Tokens (JWT)
- bcrypt for password hashing
- Joi for request validation
- dotenv for environment variable management
- Cloudinary for image storage
- Multer for handling multipart/form-data
- Clone the repository to your local machine.
- Run
npm install
to install all the dependencies. - Create a
.env
file in the root directory and set up your environment variables (check.env.example
for reference). - Run
npm start
to start the server.
/users
: User management (register, login, get user profile, update user profile)/categories
: Category management (read)/products
: Product management (read, update, search)/carts
: Cart management (add product, remove product, view cart)/orders
: Order management (create order, update order status, delete order)
- You can find the API documentation here.
- Email me to get the password to access the documentation.
- Email: nguyenquangminh570@gmail.com
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
This project is licensed under the MIT License.