Skip to content

Latest commit

 

History

History
68 lines (47 loc) · 2.13 KB

README.md

File metadata and controls

68 lines (47 loc) · 2.13 KB

🏛️ Library Management

❓ Problem Statement

Design and Develop a Library Management API using .NET Core with the below features

🧍 User Module:

  1. Authentication [Users should log in to the application to view the list of books - No UI needed].
  2. User can select a Book to Read [Favorites].
  3. User can mark a book read [History].
  4. User can write a review of the book [Once written the review cannot be changed].

🧍‍♀️ Admin Module:

  1. Authentication [Admins should log in to the application to view the list of books - No UI needed]
  2. Admin Should be able to List, Create, Update and Delete Books.
  3. Admin Should be able to View all reviews for a Book.

📕 Services

  1. Identity Service
  2. Catalog Service
    • Sent events via RabbitMQ
    • Store information In-Memory, just a matter of time to replace that with any RDDBMS
  3. Search Service
  4. Review Service ♦️
  5. Personalization Service ♦️

♦️ = upcoming

🎉 Setup

🏃‍♂️ Setup Infra

   cd infra
   docker-compose up -d

🏃‍♂️ How to run Identity Service

   dotnet run --project src/Identity-Server/Identity-Server.csproj

🏃‍♂️ How to run Catalog Service

   dotnet run --project src/Catalog-Server/Catalog-Server.csproj

🏃‍♂️ How to run Search Service

   dotnet run --project src/Search-Server/Search-Server.csproj

🧰 Postman

Import postman collections inside docs folder for testing the services. It has the test scripts written, it will be matter of clicking the send button only unless you want to change some values.