# dinesh31r/library architecture

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

- Interactive diagram: https://gitdiagram.com/dinesh31r/library
- Repository: https://github.com/dinesh31r/library

## Overview

BEL Library Management System is documented as a Classic ASP/VBScript application using ADODB and MySQL. Its main user workflow is authentication followed by library operations: browsing and maintaining the catalog, handling loans and returns, and submitting book requests. The tree also exposes administration, dashboard, and feedback pages. The sampled source is limited to browser-side scripts and a third-party validation library; consequently, links between ASP pages and database operations are inferred only at the broad level documented by the README, and specific page-to-page or query wiring is not shown.

Main entry points: [`LibraryManagementSystem/includes/db_config.asp`](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/includes/db_config.asp) (Database connection), [`LibraryManagementSystem/login.asp`](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/login.asp) (Sign in), [`LibraryManagementSystem/dashboard.asp`](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/dashboard.asp) (Dashboard), [`LibraryManagementSystem/books.asp`](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/books.asp) (Book catalog)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_access["Access and overview"]
  node_login["Sign in<br/>[login.asp]"]
  node_dashboard["Dashboard<br/>[dashboard.asp]"]
  node_logout["Sign out<br/>[logout.asp]"]
end

subgraph group_catalog["Catalog management"]
  node_books["Book catalog<br/>[books.asp]"]
  node_book_add["Add books<br/>[books_add.asp]"]
  node_book_edit["Edit books<br/>[books_edit.asp]"]
  node_book_delete["Delete books<br/>[books_delete.asp]"]
  node_categories["Categories<br/>[categories.asp]"]
  node_authors["Authors<br/>[authors.asp]"]
  node_image["Book images<br/>[image.asp]"]
end

subgraph group_circulation["Circulation"]
  node_borrowings["Loans and returns<br/>[borrowings.asp]"]
  node_request_book["Request a book<br/>[request_book.asp]"]
  node_requests["Manage requests<br/>[requests.asp]"]
  node_feedback["Feedback<br/>[feedback.asp]"]
end

subgraph group_administration["Administration"]
  node_permissions["Permissions"]
  node_config["Database connection<br/>[db_config.asp]"]
  node_schema["Database schema<br/>[schema_mysql.sql]"]
end

node_patron(("Library user"))
node_mysql[("MySQL database")]

node_patron -->|"signs in"| node_login
node_patron -->|"views"| node_dashboard
node_patron -->|"signs out"| node_logout
node_patron -->|"browses"| node_books
node_patron -->|"uses"| node_borrowings
node_patron -->|"requests"| node_request_book
node_patron -->|"submits"| node_feedback
node_login -->|"uses connection"| node_config
node_dashboard -->|"uses connection"| node_config
node_books -->|"uses connection"| node_config
node_book_add -->|"uses connection"| node_config
node_book_edit -->|"uses connection"| node_config
node_book_delete -->|"uses connection"| node_config
node_categories -->|"uses connection"| node_config
node_authors -->|"uses connection"| node_config
node_borrowings -->|"uses connection"| node_config
node_request_book -->|"uses connection"| node_config
node_requests -->|"uses connection"| node_config
node_feedback -->|"uses connection"| node_config
node_permissions -->|"uses connection"| node_config
node_config -->|"connects to"| node_mysql
node_schema -.->|"defines schema"| node_mysql

click node_login "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/login.asp"
click node_dashboard "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/dashboard.asp"
click node_logout "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/logout.asp"
click node_books "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/books.asp"
click node_book_add "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/books_add.asp"
click node_book_edit "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/books_edit.asp"
click node_book_delete "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/books_delete.asp"
click node_categories "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/categories.asp"
click node_authors "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/authors.asp"
click node_image "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/image.asp"
click node_borrowings "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/borrowings.asp"
click node_request_book "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/request_book.asp"
click node_requests "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/requests.asp"
click node_feedback "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/feedback.asp"
click node_permissions "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/manage_permissions.asp"
click node_config "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/includes/db_config.asp"
click node_schema "https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/schema_mysql.sql"

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_login,node_dashboard,node_logout,node_patron toneBlue
class node_books,node_book_add,node_book_edit,node_book_delete,node_categories,node_authors,node_image,node_mysql toneAmber
class node_borrowings,node_request_book,node_requests,node_feedback toneMint
class node_permissions,node_config,node_schema toneRose
```

## Components

### Access and overview

- [Sign in](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/login.asp): `LibraryManagementSystem/login.asp`
- [Dashboard](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/dashboard.asp): `LibraryManagementSystem/dashboard.asp`
- [Sign out](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/logout.asp): `LibraryManagementSystem/logout.asp`

### Catalog management

- [Book catalog](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/books.asp): `LibraryManagementSystem/books.asp`
- [Add books](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/books_add.asp): `LibraryManagementSystem/books_add.asp`
- [Edit books](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/books_edit.asp): `LibraryManagementSystem/books_edit.asp`
- [Delete books](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/books_delete.asp): `LibraryManagementSystem/books_delete.asp`
- [Categories](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/categories.asp): `LibraryManagementSystem/categories.asp`
- [Authors](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/authors.asp): `LibraryManagementSystem/authors.asp`
- [Book images](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/image.asp): `LibraryManagementSystem/image.asp`

### Circulation

- [Loans and returns](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/borrowings.asp): `LibraryManagementSystem/borrowings.asp`
- [Request a book](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/request_book.asp): `LibraryManagementSystem/request_book.asp`
- [Manage requests](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/requests.asp): `LibraryManagementSystem/requests.asp`
- [Feedback](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/feedback.asp): `LibraryManagementSystem/feedback.asp`

### Administration

- [Permissions](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/manage_permissions.asp): `LibraryManagementSystem/manage_permissions.asp`
- [Database connection](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/includes/db_config.asp): `LibraryManagementSystem/includes/db_config.asp`
- [Database schema](https://github.com/dinesh31r/library/blob/main/LibraryManagementSystem/schema_mysql.sql): `LibraryManagementSystem/schema_mysql.sql`

### Other components

- **Library user**
- **MySQL database**

## Connections

- Library user → Sign in: signs in
- Library user → Dashboard: views
- Library user → Sign out: signs out
- Library user → Book catalog: browses
- Library user → Loans and returns: uses
- Library user → Request a book: requests
- Library user → Feedback: submits
- Sign in → Database connection: uses connection
- Dashboard → Database connection: uses connection
- Book catalog → Database connection: uses connection
- Add books → Database connection: uses connection
- Edit books → Database connection: uses connection
- Delete books → Database connection: uses connection
- Categories → Database connection: uses connection
- Authors → Database connection: uses connection
- Loans and returns → Database connection: uses connection
- Request a book → Database connection: uses connection
- Manage requests → Database connection: uses connection
- Feedback → Database connection: uses connection
- Permissions → Database connection: uses connection
- Database connection → MySQL database: connects to
- Database schema → MySQL database: defines schema
