# bishalbhandari-art/bms-backend architecture

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

- Interactive diagram: https://gitdiagram.com/bishalbhandari-art/bms-backend
- Repository: https://github.com/bishalbhandari-art/bms-backend

## Overview

This repository documents a PostgreSQL book-management database, not an application runtime. Its workflow is to create the database, define the normalized author/category/book schema, insert data, and run query and modification examples. The README also documents backup and restore with pg_dump/psql and remote version-control backup through GitHub. Relationships are based on README descriptions; SQL source was not available to inspect.

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_database["Database lifecycle"]
  node_postgres[("PostgreSQL")]
  node_create_db["Create database"]
  node_create_tables["Define tables"]
  node_authors[("Authors")]
  node_categories[("Categories")]
  node_books[("Books")]
  node_insert_data["Insert sample data"]
  node_queries["Query and modify"]
  node_pg_dump["pg_dump"]
  node_psql["psql"]
  node_backup["SQL backup"]
end

node_user(("Database user"))
node_github["GitHub"]

node_user -->|"runs first"| node_create_db
node_create_db -->|"creates database"| node_postgres
node_user -->|"runs next"| node_create_tables
node_create_tables -->|"creates tables"| node_postgres
node_create_tables -->|"defines"| node_authors
node_create_tables -->|"defines"| node_categories
node_create_tables -->|"defines"| node_books
node_user -->|"runs next"| node_insert_data
node_insert_data -->|"inserts data"| node_postgres
node_user -->|"runs queries"| node_queries
node_queries -->|"queries and modifies"| node_postgres
node_user -->|"runs backup"| node_pg_dump
node_pg_dump -->|"reads database"| node_postgres
node_pg_dump -->|"writes backup"| node_backup
node_user -->|"runs restore"| node_psql
node_psql -->|"reads backup"| node_backup
node_psql -->|"restores database"| node_postgres
node_user -.->|"pushes scripts"| node_github

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_postgres,node_create_db,node_create_tables,node_authors,node_categories,node_books,node_insert_data,node_queries,node_pg_dump,node_psql,node_backup toneBlue
class node_user toneAmber
class node_github toneIndigo
```

## Components

### Database lifecycle

- **PostgreSQL**
- **Create database**
- **Define tables**
- **Authors**
- **Categories**
- **Books**
- **Insert sample data**
- **Query and modify**
- **pg_dump**
- **psql**
- **SQL backup**

### Other components

- **Database user**
- **GitHub**

## Connections

- Database user → Create database: runs first
- Create database → PostgreSQL: creates database
- Database user → Define tables: runs next
- Define tables → PostgreSQL: creates tables
- Define tables → Authors: defines
- Define tables → Categories: defines
- Define tables → Books: defines
- Database user → Insert sample data: runs next
- Insert sample data → PostgreSQL: inserts data
- Database user → Query and modify: runs queries
- Query and modify → PostgreSQL: queries and modifies
- Database user → pg_dump: runs backup
- pg_dump → PostgreSQL: reads database
- pg_dump → SQL backup: writes backup
- Database user → psql: runs restore
- psql → SQL backup: reads backup
- psql → PostgreSQL: restores database
- Database user → GitHub: pushes scripts
