Library App is a modular application designed to manage library operations such as book loans, patron management, and inventory tracking. It is built using .NET and follows a clean architecture approach to ensure scalability and maintainability.
AccelerateDevGHCopilot.sln- Solution file for the project.src/Library.ApplicationCore/Entities/- Contains core domain entities.Enums/- Defines enumerations used across the application.Interfaces/- Declares interfaces for core abstractions.Services/- Implements business logic and domain services.Library.ApplicationCore.csproj- Project file for the Application Core.
Library.Console/appSettings.json- Configuration file for the console application.CommonActions.cs- Contains reusable actions for the console app.ConsoleApp.cs- Main application logic for the console interface.ConsoleState.cs- Manages the state of the console application.Program.cs- Entry point for the console application.Json/- Contains JSON-related utilities or data.Library.Console.csproj- Project file for the Console application.
Library.Infrastructure/Data/- Contains data access implementations.Library.Infrastructure.csproj- Project file for the Infrastructure layer.
tests/UnitTests/LoanFactory.cs- Factory for creating test data related to loans.PatronFactory.cs- Factory for creating test data related to patrons.ApplicationCore/- Contains unit tests for the Application Core.UnitTests.csproj- Project file for unit tests.
- Entities
Book- Represents a book in the library.Patron- Represents a library patron.Loan- Represents a loan transaction.
- Interfaces
IBookRepository- Interface for book-related data operations.IPatronRepository- Interface for patron-related data operations.ILoanService- Interface for managing loan operations.
- Services
LoanService- Implements loan-related business logic.NotificationService- Handles notifications for overdue loans.
-
Clone the repository:
git clone <repository-url>
-
Open the solution file
AccelerateDevGHCopilot.slnin Visual Studio. -
Build the solution to restore dependencies and compile the code.
-
Run the console application:
dotnet run --project src/Library.Console/Library.Console.csproj
-
Execute unit tests:
dotnet test tests/UnitTests/UnitTests.csproj
This project is licensed under the MIT License. See the LICENSE file for details.