# sifatahammed/web-app-for-text-summarization-and-ner architecture

> Architecture diagram of the GitHub repository sifatahammed/web-app-for-text-summarization-and-ner, 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/sifatahammed/web-app-for-text-summarization-and-ner
- Repository: https://github.com/sifatahammed/web-app-for-text-summarization-and-ner

## Overview

This is a browser-based text-processing app: users enter text or provide a file, select summarization or NER, and view the result. Text and CSV files are read in the browser; PDFs are sent to the backend for extraction. The backend exposes the documented processing endpoints and uses the BART summarization and XLNet NER models. Backend and model wiring is described in the README but was not present in the sampled source, so those connections reflect the documented capabilities.

Main entry points: [`Backend/Main.ipynb`](https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Backend/Main.ipynb) (API endpoints), [`Frontend/script.js`](https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Frontend/script.js) (Browser interaction), [`Frontend/index.html`](https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Frontend/index.html) (Task selection), [`Text Summarization Model/text_summarization.ipynb`](https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Text%20Summarization%20Model/text_summarization.ipynb) (BART summarization)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_ui["Web interface"]
  node_input["Text and file input<br/>[script.js]"]
  node_task["Task selection<br/>[index.html]"]
  node_client["Browser interaction<br/>[script.js]"]
  node_results["Results display<br/>[script.js]"]
end

subgraph group_api["Backend API"]
  node_backend["API endpoints<br/>[Main.ipynb]"]
  node_pdf["PDF text extraction<br/>[Main.ipynb]"]
end

subgraph group_models["Language models"]
  node_summary["BART summarization"]
  node_ner["XLNet entity recognition<br/>[NER.ipynb]"]
end

node_user(("User"))

node_user -->|"provides text"| node_input
node_user -->|"selects task"| node_task
node_input -->|"supplies text"| node_client
node_client -->|"uploads PDF"| node_pdf
node_pdf -->|"returns extracted text"| node_client
node_client -->|"posts text"| node_backend
node_backend -->|"runs summarization"| node_summary
node_backend -->|"runs NER"| node_ner
node_backend -->|"returns result"| node_results
node_results -->|"displays result"| node_user

click node_input "https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Frontend/script.js"
click node_task "https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Frontend/index.html"
click node_client "https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Frontend/script.js"
click node_results "https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Frontend/script.js"
click node_backend "https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Backend/Main.ipynb"
click node_pdf "https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Backend/Main.ipynb"
click node_summary "https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Text%20Summarization%20Model/text_summarization.ipynb"
click node_ner "https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/NER%20Model/NER.ipynb"

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_input,node_task,node_client,node_results,node_user toneBlue
class node_backend,node_pdf toneAmber
class node_summary,node_ner toneMint
```

## Components

### Web interface

- [Text and file input](https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Frontend/script.js): `Frontend/script.js`
- [Task selection](https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Frontend/index.html): `Frontend/index.html`
- [Browser interaction](https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Frontend/script.js): `Frontend/script.js`
- [Results display](https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Frontend/script.js): `Frontend/script.js`

### Backend API

- [API endpoints](https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Backend/Main.ipynb): `Backend/Main.ipynb`
- [PDF text extraction](https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Backend/Main.ipynb): `Backend/Main.ipynb`

### Language models

- [BART summarization](https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/Text%20Summarization%20Model/text_summarization.ipynb): `Text Summarization Model/text_summarization.ipynb`
- [XLNet entity recognition](https://github.com/sifatahammed/web-app-for-text-summarization-and-ner/blob/main/NER%20Model/NER.ipynb): `NER Model/NER.ipynb`

### Other components

- **User**

## Connections

- User → Text and file input: provides text
- User → Task selection: selects task
- Text and file input → Browser interaction: supplies text
- Browser interaction → PDF text extraction: uploads PDF
- PDF text extraction → Browser interaction: returns extracted text
- Browser interaction → API endpoints: posts text
- API endpoints → BART summarization: runs summarization
- API endpoints → XLNet entity recognition: runs NER
- API endpoints → Results display: returns result
- Results display → User: displays result
