Final project of SOLVD laba
Develop a simple library management system that allows users to manage books, borrowers, and borrowing transactions. The system should provide functionalities such as adding books to the library, registering borrowers, borrowing books, returning books, and generating reports.
-
Book Management: Add new books to the library with details like title, author, publication year, and ISBN. Update book information and availability status. Remove books from the library.
-
Borrower Management: Register borrowers with details like name, contact information, and membership ID. Update borrower information. Remove borrowers from the system. Borrowing Transactions:
Allow borrowers to borrow books from the library. Handle book availability and checkouts. Track borrowing history and due dates. Allow borrowers to return books.
-
Reports: Generate reports, such as a list of all books in the library, borrowed books, overdue books, and borrower records.
To update models upload file models.draw.io to https://app.diagrams.net/. Don't forget to commit updated file with models and new screenshot.
Install dependencies with command
npm install
To run application you should have installed docker on your machine
Rename .env.example
to .env
and update variables as needed
- run
docker compose up
- run in detached mode
docker compose up -d
- run and rebuild
docker compose up --build
Application will run on http://localhost:4000/api/v1
While application running you can find swagger documentation at http://localhost:4000/docs
To generate Prisma types before first run or after update prisma.schema
file run
npx prisma generate
To generate and run migration
npm run migrate
A progressive Node.js framework for building efficient and scalable server-side applications.
Nest framework TypeScript starter repository.
Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please read more here.
- Author - Kamil Myśliwiec
- Website - https://nestjs.com
- Twitter - @nestframework
Nest is MIT licensed.