# vaishnavikanu/lost-and-found-management-system architecture

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

- Interactive diagram: https://gitdiagram.com/vaishnavikanu/lost-and-found-management-system
- Repository: https://github.com/vaishnavikanu/lost-and-found-management-system

## Overview

This is a lost-and-found reporting and matching application: users authenticate, browse or search lost/found reports, open a report, and submit a claim; users can also manage reports, favorites, profiles, and dashboard views. The graph includes backend route families named in the tree, but their internal calls were not sampled, so only wiring evidenced by the excerpts is shown. The messages router exists in the tree but is not mounted in backend/main.py.

Main entry points: [`backend/main.py`](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/main.py) (FastAPI application), [`frontend/src/App.jsx`](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/App.jsx) (Routes and access), [`frontend/src/pages/ItemDetails.jsx`](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/pages/ItemDetails.jsx) (Item details), [`frontend/src/api/api.js`](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/api/api.js) (HTTP client)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_client["Web client"]
  node_app["Routes and access<br/>[App.jsx]"]
  node_browse["Browse and filter<br/>[BrowseItems.jsx]"]
  node_details["Item details<br/>[ItemDetails.jsx]"]
  node_report["Report management<br/>[ReportItem.jsx]"]
  node_api["HTTP client<br/>[api.js]"]
end

subgraph group_identity["Identity and profile"]
  node_authui["Sign in and signup<br/>[authApi.js]"]
  node_authroutes["Authentication routes<br/>[auth.py]"]
  node_profileui["Profile page<br/>[Profile.jsx]"]
  node_profile["Profile routes<br/>[profile.py]"]
end

subgraph group_reports["Item reports"]
  node_categories["Category routes<br/>[categories.py]"]
  node_items["Item routes<br/>[items.py]"]
  node_claims["Claim routes<br/>[claims.py]"]
end

subgraph group_engagement["User engagement"]
  node_favorites["Favorites routes<br/>[favorites.py]"]
  node_dashboard["Dashboard routes<br/>[dashboard.py]"]
  node_notifications["Notification routes<br/>[notifications.py]"]
  node_messages["Message routes<br/>[messages.py]"]
end

subgraph group_service["Backend service"]
  node_main["FastAPI application<br/>[main.py]"]
  node_session["Database sessions"]
  node_database[("Relational database<br/>[database.py]")]
  node_models["Domain models<br/>[models.py]"]
end

node_user(("User"))

node_user -->|"navigates"| node_app
node_app -->|"routes to"| node_browse
node_app -->|"routes to"| node_details
node_app -->|"routes to"| node_report
node_details -->|"requests item and claims"| node_api
node_authui -->|"sends auth requests"| node_api
node_main -->|"mounts"| node_authroutes
node_main -->|"mounts"| node_profile
node_main -->|"mounts"| node_categories
node_main -->|"mounts"| node_items
node_main -->|"mounts"| node_favorites
node_main -->|"mounts"| node_claims
node_main -->|"mounts"| node_notifications
node_main -->|"mounts"| node_dashboard
node_main -->|"creates schema"| node_database
node_session -->|"binds sessions"| node_database

click node_app "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/App.jsx"
click node_browse "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/pages/BrowseItems.jsx"
click node_details "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/pages/ItemDetails.jsx"
click node_report "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/pages/ReportItem.jsx"
click node_api "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/api/api.js"
click node_authui "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/api/authApi.js"
click node_authroutes "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/auth.py"
click node_profileui "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/pages/Profile.jsx"
click node_profile "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/profile.py"
click node_categories "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/categories.py"
click node_items "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/items.py"
click node_claims "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/claims.py"
click node_favorites "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/favorites.py"
click node_dashboard "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/dashboard.py"
click node_notifications "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/notifications.py"
click node_messages "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/messages.py"
click node_main "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/main.py"
click node_session "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/database_session.py"
click node_database "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/database.py"
click node_models "https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/models.py"

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_app,node_browse,node_details,node_report,node_api,node_user toneBlue
class node_authui,node_authroutes,node_profileui,node_profile toneAmber
class node_categories,node_items,node_claims toneMint
class node_favorites,node_dashboard,node_notifications,node_messages toneRose
class node_main,node_session,node_database,node_models toneIndigo
```

## Components

### Web client

- [Routes and access](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/App.jsx): `frontend/src/App.jsx`
- [Browse and filter](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/pages/BrowseItems.jsx): `frontend/src/pages/BrowseItems.jsx`
- [Item details](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/pages/ItemDetails.jsx): `frontend/src/pages/ItemDetails.jsx`
- [Report management](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/pages/ReportItem.jsx): `frontend/src/pages/ReportItem.jsx`
- [HTTP client](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/api/api.js): `frontend/src/api/api.js`

### Identity and profile

- [Sign in and signup](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/api/authApi.js): `frontend/src/api/authApi.js`
- [Authentication routes](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/auth.py): `backend/routers/auth.py`
- [Profile page](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/frontend/src/pages/Profile.jsx): `frontend/src/pages/Profile.jsx`
- [Profile routes](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/profile.py): `backend/routers/profile.py`

### Item reports

- [Category routes](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/categories.py): `backend/routers/categories.py`
- [Item routes](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/items.py): `backend/routers/items.py`
- [Claim routes](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/claims.py): `backend/routers/claims.py`

### User engagement

- [Favorites routes](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/favorites.py): `backend/routers/favorites.py`
- [Dashboard routes](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/dashboard.py): `backend/routers/dashboard.py`
- [Notification routes](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/notifications.py): `backend/routers/notifications.py`
- [Message routes](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/routers/messages.py): `backend/routers/messages.py`

### Backend service

- [FastAPI application](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/main.py): `backend/main.py`
- [Database sessions](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/database_session.py): `backend/database_session.py`
- [Relational database](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/database.py): `backend/database.py`
- [Domain models](https://github.com/vaishnavikanu/lost-and-found-management-system/blob/main/backend/models.py): `backend/models.py`

### Other components

- **User**

## Connections

- User → Routes and access: navigates
- Routes and access → Browse and filter: routes to
- Routes and access → Item details: routes to
- Routes and access → Report management: routes to
- Item details → HTTP client: requests item and claims
- Sign in and signup → HTTP client: sends auth requests
- FastAPI application → Authentication routes: mounts
- FastAPI application → Profile routes: mounts
- FastAPI application → Category routes: mounts
- FastAPI application → Item routes: mounts
- FastAPI application → Favorites routes: mounts
- FastAPI application → Claim routes: mounts
- FastAPI application → Notification routes: mounts
- FastAPI application → Dashboard routes: mounts
- FastAPI application → Relational database: creates schema
- Database sessions → Relational database: binds sessions
