An online book store application built with Nest.js, featuring CRUD operations for books, authors, publishers, translators, and categories. It also supports features like discount codes, shopping cart, and Zarinpal payment gateway.
This project is an online bookstore application built using Nest.js and PostgreSQL for database management. The system provides APIs for managing books, authors, publishers, translators, and categories. Users can also submit reviews for books, apply discount codes, and finalize their purchases through the Zarinpal payment gateway. The application is integrated with AWS for image management and uses Swagger for API documentation.
These instructions will help you set up the project on your local machine for development and testing purposes.
You'll need the following software installed:
- Node.js
- PostgreSQL
- Zarinpal Payment Gateway credentials
- AWS credentials for image management
Clone the repository:
git clone https://github.com/mamalli11/book-store.git
cd book-store
Install dependencies:
npm install
Rename the file from .env.local
to .env
and fill in the requested values.
Start the development server:
npm run start:dev
Once the server is running, you can access the API at http://localhost:3000
. Use Swagger for API documentation by visiting http://localhost:3000/swagger
.
To deploy the application:
- Set up a PostgreSQL instance on your server or cloud service.
- Set environment variables for your production environment.
- Run
npm run build
to create a production build. - Start the application with
npm run start
.
- NestJS - Framework
- PostgreSQL - Database
- Swagger - API Documentation
- AWS S3 - Image Storage
- Zarinpal - Payment Gateway
- @mamalli11 - Developer
See the list of contributors who participated in this project.
- Thanks to the open-source community for the inspiration and resources.