# dvsumanth/employee_task_tracker architecture

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

- Interactive diagram: https://gitdiagram.com/dvsumanth/employee_task_tracker
- Repository: https://github.com/dvsumanth/employee_task_tracker

## Overview

Employee Task Tracker is a browser-based CRUD application for employee-assigned tasks, including status tracking and summary counts. Users work through the frontend; its JavaScript sends REST requests to FastAPI, whose routes delegate task operations through a service and repository to SQLAlchemy/SQLite. The graph also shows API validation, application route registration, and database setup. Frontend markup and styling are included as product components, but their implementation was not sampled; their detailed wiring is therefore not asserted.

Main entry points: [`backend/app/routers/task_router.py`](https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/routers/task_router.py) (Task routes), [`backend/app/main.py`](https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/main.py) (FastAPI app), [`backend/app/repositories/task_repository.py`](https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/repositories/task_repository.py) (Task repository), [`backend/app/database.py`](https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/database.py) (Database setup)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_frontend["Task interface"]
  node_page["Task page<br/>[task.html]"]
  node_ui["Task UI logic<br/>[script.js]"]
  node_styles["Page styling<br/>[style.css]"]
end

subgraph group_api["REST API"]
  node_app["FastAPI app<br/>[main.py]"]
  node_routes["Task routes<br/>[task_router.py]"]
  node_schemas["Request and response schemas<br/>[task.py]"]
end

subgraph group_domain["Task operations"]
  node_service["Task service<br/>[task_service.py]"]
  node_repository["Task repository<br/>[task_repository.py]"]
end

subgraph group_persistence["Persistence"]
  node_model["Task model<br/>[task.py]"]
  node_db["Database setup<br/>[database.py]"]
  node_sqlite[("SQLite task store<br/>[tasks.db]")]
end

node_user(("Employee"))

node_user -->|"uses"| node_page
node_ui -->|"sends REST requests"| node_routes
node_app -->|"registers"| node_routes
node_app -->|"creates tables"| node_db
node_app -->|"loads"| node_model
node_routes -->|"validates and responds"| node_schemas
node_routes -->|"delegates"| node_service
node_routes -->|"gets sessions"| node_db
node_service -->|"delegates"| node_repository
node_repository -->|"queries and changes"| node_model
node_db -->|"configures SQLite"| node_sqlite
node_repository -->|"persists tasks"| node_sqlite

click node_page "https://github.com/dvsumanth/employee_task_tracker/blob/main/frontend/task.html"
click node_ui "https://github.com/dvsumanth/employee_task_tracker/blob/main/frontend/script.js"
click node_styles "https://github.com/dvsumanth/employee_task_tracker/blob/main/frontend/style.css"
click node_app "https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/main.py"
click node_routes "https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/routers/task_router.py"
click node_schemas "https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/schemas/task.py"
click node_service "https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/services/task_service.py"
click node_repository "https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/repositories/task_repository.py"
click node_model "https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/models/task.py"
click node_db "https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/database.py"
click node_sqlite "https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/tasks.db"

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_page,node_ui,node_styles toneBlue
class node_app,node_routes,node_schemas toneAmber
class node_service,node_repository toneMint
class node_model,node_db,node_sqlite toneRose
class node_user toneIndigo
```

## Components

### Task interface

- [Task page](https://github.com/dvsumanth/employee_task_tracker/blob/main/frontend/task.html): `frontend/task.html`
- [Task UI logic](https://github.com/dvsumanth/employee_task_tracker/blob/main/frontend/script.js): `frontend/script.js`
- [Page styling](https://github.com/dvsumanth/employee_task_tracker/blob/main/frontend/style.css): `frontend/style.css`

### REST API

- [FastAPI app](https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/main.py): `backend/app/main.py`
- [Task routes](https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/routers/task_router.py): `backend/app/routers/task_router.py`
- [Request and response schemas](https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/schemas/task.py): `backend/app/schemas/task.py`

### Task operations

- [Task service](https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/services/task_service.py): `backend/app/services/task_service.py`
- [Task repository](https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/repositories/task_repository.py): `backend/app/repositories/task_repository.py`

### Persistence

- [Task model](https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/models/task.py): `backend/app/models/task.py`
- [Database setup](https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/app/database.py): `backend/app/database.py`
- [SQLite task store](https://github.com/dvsumanth/employee_task_tracker/blob/main/backend/tasks.db): `backend/tasks.db`

### Other components

- **Employee**

## Connections

- Employee → Task page: uses (evidence: `README.md`)
- Task UI logic → Task routes: sends REST requests (evidence: `frontend/script.js`)
- FastAPI app → Task routes: registers (evidence: `backend/app/main.py`)
- FastAPI app → Database setup: creates tables (evidence: `backend/app/main.py`)
- FastAPI app → Task model: loads (evidence: `backend/app/main.py`)
- Task routes → Request and response schemas: validates and responds (evidence: `backend/app/routers/task_router.py`)
- Task routes → Task service: delegates (evidence: `backend/app/routers/task_router.py`)
- Task routes → Database setup: gets sessions (evidence: `backend/app/routers/task_router.py`)
- Task service → Task repository: delegates (evidence: `backend/app/services/task_service.py`)
- Task repository → Task model: queries and changes (evidence: `backend/app/repositories/task_repository.py`)
- Database setup → SQLite task store: configures SQLite (evidence: `backend/app/database.py`)
- Task repository → SQLite task store: persists tasks (evidence: `README.md`)
