Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/atillatahak/bookstore-backend
This project focuses on the backend development of a Book Store Management application using NestJS and PostgreSQL. It encompasses three user roles: User, Store Manager, and Admin.
https://github.com/atillatahak/bookstore-backend
Last synced: 19 days ago
JSON representation
This project focuses on the backend development of a Book Store Management application using NestJS and PostgreSQL. It encompasses three user roles: User, Store Manager, and Admin.
- Host: GitHub
- URL: https://github.com/atillatahak/bookstore-backend
- Owner: AtillaTahak
- Created: 2024-04-28T12:15:44.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-04-29T09:31:20.000Z (7 months ago)
- Last Synced: 2024-04-29T13:41:52.192Z (7 months ago)
- Language: TypeScript
- Size: 226 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
{BookStore}
## Table of Contents
- [Overview](#overview)
- [Built With](#built-with)
- [How to use](#how-to-use)
- [Swagger](#swagger)
- [How To Use with Docker](#how-to-use-with-docker)
- [Contact](#contact)
- [Acknowledgements](#acknowledgements)## Overview
![screenshot](Screenshot_6.png)
![screenshot](Screenshot_7.png)This project focuses on the backend development of a Book Store Management application using NestJS and PostgreSQL. It encompasses three user roles: User, Store Manager, and Admin.
User Role:
- Ability to view all bookstores
- Can view books available in each store and search for book availability across storesStore Manager Role:
- Can add or remove a specific quantity of a book to/from a store (from the Book table)
Admin Role:
- Can create a new bookstore
- Can add a new book
- Can add or remove a specific quantity of a particular book to/from a specific bookstore
- Adding new users and roles can only be done by the AdminDatabase:
- The application utilizes PostgreSQL to efficiently store and manage bookstores, books, and inventory levels.
### Built With
- [NodeJs](https://nodejs.org)
- [NestJs](https://nestjs.com)
- [Postgresql](https://www.postgresql.org)
- [Docker](https://www.docker.com)
- [Swagger](https://swagger.io)## How To Use
To clone and run this application, you'll need [Git](https://git-scm.com) and [Node.js](https://nodejs.org/en/download/) (which comes with [npm](http://npmjs.com)) installed on your computer. From your command line:
```bash
# Clone this repository
$ git clone https://github.com/AtillaTahak/bookstore-backend$ cd bookstore-backend
$ cp .env.example .env
$ npm install
$ npm run start:dev
```You can create seed user with [api](http://localhost:3000/user/seed)
## Swagger
Access the API documentation using Swagger UI:
http://localhost:3000/api
## How To Use with Docker
To clone and run this application, you'll need [Git](https://git-scm.com) and [Node.js](https://nodejs.org/en/download/) (which comes with [npm](http://npmjs.com)) installed on your computer. Also you need use for [Docker](https://www.docker.com/#build) From your command line:
```bash
# Clone this repository
$ git clone https://github.com/AtillaTahak/bookstore-backend$ cd bookstore-backend
$ cp .env.example .env
$ npm install
$ docker compose up --build
```
Access the API documentation using Swagger UI:http://localhost:3000/api
Access pgAdmin for managing PostgreSQL databases:
http://localhost:5050
## Acknowledgements
- [NestJs](https://nestjs.com)
## Contact
- GitHub: [@AtillaTahak](https://github.com/AtillaTahak)
- Twitter: [@AtillaTahaa](https://twitter.com/AtillaTahaa)
- LinkedIn: [LinkedIn](https://www.linkedin.com/in/atillatahakordugum)
- Blog: [Blog](https://atillataha.blogspot.com)
- Youtube: [YouTube](https://www.youtube.com/channel/UCmoD0x4Z9vdG2PCsI5p8FYg)
- Portfolio: [Portfolio](atillataha.netlify.app)