# pramodkumar524/libray-sys-mgt architecture

> Architecture diagram of the GitHub repository pramodkumar524/libray-sys-mgt, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/pramodkumar524/libray-sys-mgt
- Repository: https://github.com/pramodkumar524/libray-sys-mgt

## Overview

This is a small Java library example: the main method creates two composed Book objects and prints their details. Book delegates detail access to Title, Author, Availability, and Price. Library.java contains a separate add/list/issue/return implementation, but it uses a different package and Book API than the sampled library package; its integration with the sample workflow is therefore uncertain. The README documents only the composition-and-display example.

Main entry points: [`LibraryManagementSystem.java`](https://github.com/pramodkumar524/libray-sys-mgt/blob/main/LibraryManagementSystem.java) (Main program), [`Book.java`](https://github.com/pramodkumar524/libray-sys-mgt/blob/main/Book.java) (Book), [`Title.java`](https://github.com/pramodkumar524/libray-sys-mgt/blob/main/Title.java) (Title), [`Author.java`](https://github.com/pramodkumar524/libray-sys-mgt/blob/main/Author.java) (Author)

## Diagram (Mermaid)

```mermaid
flowchart TD

node_user(("User"))
node_main["Main program"]
node_book["Book<br/>[Book.java]"]
node_title["Title<br/>[Title.java]"]
node_author["Author<br/>[Author.java]"]
node_availability["Availability<br/>[Availability.java]"]
node_price["Price<br/>[Price.java]"]
node_library["Library operations<br/>[Library.java]"]

node_user -->|"runs"| node_main
node_main -->|"constructs"| node_title
node_main -->|"constructs"| node_author
node_main -->|"constructs"| node_availability
node_main -->|"constructs"| node_price
node_main -->|"constructs, displays"| node_book
node_book -->|"reads"| node_title
node_book -->|"reads"| node_author
node_book -->|"reads"| node_availability
node_book -->|"reads"| node_price
node_library -.->|"uses"| node_book

click node_main "https://github.com/pramodkumar524/libray-sys-mgt/blob/main/LibraryManagementSystem.java"
click node_book "https://github.com/pramodkumar524/libray-sys-mgt/blob/main/Book.java"
click node_title "https://github.com/pramodkumar524/libray-sys-mgt/blob/main/Title.java"
click node_author "https://github.com/pramodkumar524/libray-sys-mgt/blob/main/Author.java"
click node_availability "https://github.com/pramodkumar524/libray-sys-mgt/blob/main/Availability.java"
click node_price "https://github.com/pramodkumar524/libray-sys-mgt/blob/main/Price.java"
click node_library "https://github.com/pramodkumar524/libray-sys-mgt/blob/main/Library.java"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_user toneBlue
class node_main,node_book,node_title,node_author,node_availability,node_price,node_library toneTeal
```

## Components

### Other components

- **User**
- [Main program](https://github.com/pramodkumar524/libray-sys-mgt/blob/main/LibraryManagementSystem.java): `LibraryManagementSystem.java`
- [Book](https://github.com/pramodkumar524/libray-sys-mgt/blob/main/Book.java): `Book.java`
- [Title](https://github.com/pramodkumar524/libray-sys-mgt/blob/main/Title.java): `Title.java`
- [Author](https://github.com/pramodkumar524/libray-sys-mgt/blob/main/Author.java): `Author.java`
- [Availability](https://github.com/pramodkumar524/libray-sys-mgt/blob/main/Availability.java): `Availability.java`
- [Price](https://github.com/pramodkumar524/libray-sys-mgt/blob/main/Price.java): `Price.java`
- [Library operations](https://github.com/pramodkumar524/libray-sys-mgt/blob/main/Library.java): `Library.java`

## Connections

- User → Main program: runs
- Main program → Title: constructs
- Main program → Author: constructs
- Main program → Availability: constructs
- Main program → Price: constructs
- Main program → Book: constructs, displays
- Book → Title: reads
- Book → Author: reads
- Book → Availability: reads
- Book → Price: reads
- Library operations → Book: uses
