# rajendermohanverma/dbit-alumni-hub architecture

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

- Interactive diagram: https://gitdiagram.com/rajendermohanverma/dbit-alumni-hub
- Repository: https://github.com/rajendermohanverma/dbit-alumni-hub

## Overview

College Pro is a Flask alumni network connecting students, alumni, faculty, and administrators. Users enter through the web application to register or manage profiles, then discover people and career opportunities, send connection requests, and communicate through public or private chat. Recommendations combine profile-based scoring with collaborative filtering. Admins oversee users, jobs, messaging, and analytics. The main application is partly concentrated in app.py; the sampled route and service modules show several distinct subsystems. The README documents additional capabilities not fully visible in the excerpts, so uncertain internal wiring is omitted.

Main entry points: [`app.py`](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/app.py) (Flask application), [`college_pro.db`](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/college_pro.db) (Application database), [`routes/connection_routes.py`](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/routes/connection_routes.py) (Connection requests), [`routes/recommendation_routes.py`](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/routes/recommendation_routes.py) (Recommendation API)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_web["Web application"]
  node_app["Flask application<br/>[app.py]"]
end

subgraph group_people["People and discovery"]
  node_profiles["Profiles and dashboards<br/>[profile_service.py]"]
  node_profile_routes["Profile workflows<br/>[app.py]"]
  node_connections["Connection requests"]
  node_recommendation_api["Recommendation API"]
  node_rule_engine["Profile matching<br/>[recommendation.py]"]
  node_hybrid_engine["Hybrid recommendations"]
end

subgraph group_careers["Career board"]
  node_jobs["Jobs and recruitment<br/>[app.py]"]
end

subgraph group_messaging["Messaging"]
  node_messaging_api["Messaging endpoints"]
  node_socket_handlers["Live chat events"]
  node_message_data["Messaging operations<br/>[messaging_db.py]"]
end

subgraph group_admin["Administration"]
  node_admin["Admin workflows<br/>[app.py]"]
  node_admin_service["Admin statistics<br/>[admin_service.py]"]
end

node_users(("Students, alumni, faculty"))
node_email["Gmail SMTP"]
node_app_db[("Application database<br/>[college_pro.db]")]
node_message_db[("Messaging database<br/>[messaging_db.py]")]

node_users -->|"use"| node_app
node_app -->|"dispatches"| node_profile_routes
node_profile_routes -->|"updates profiles"| node_profiles
node_profiles -->|"reads and writes"| node_app_db
node_app -->|"dispatches"| node_connections
node_connections -->|"reads and writes"| node_app_db
node_connections -.->|"sends notices"| node_email
node_app -->|"dispatches"| node_recommendation_api
node_recommendation_api -->|"requests suggestions"| node_hybrid_engine
node_recommendation_api -->|"falls back to"| node_rule_engine
node_hybrid_engine -->|"fills remaining"| node_rule_engine
node_hybrid_engine -->|"reads interactions"| node_app_db
node_rule_engine -->|"reads profiles"| node_app_db
node_app -->|"serves career workflows"| node_jobs
node_jobs -->|"reads and writes"| node_app_db
node_app -->|"dispatches"| node_messaging_api
node_messaging_api -->|"calls"| node_message_data
node_app -->|"registers handlers"| node_socket_handlers
node_socket_handlers -->|"reads and writes"| node_message_data
node_message_data -->|"persists messages"| node_message_db
node_app -->|"serves admin workflows"| node_admin
node_admin -->|"requests statistics"| node_admin_service
node_admin_service -->|"queries"| node_app_db
node_admin -.->|"sends notices"| node_email

click node_app "https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/app.py"
click node_profiles "https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/services/profile_service.py"
click node_profile_routes "https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/app.py"
click node_connections "https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/routes/connection_routes.py"
click node_recommendation_api "https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/routes/recommendation_routes.py"
click node_rule_engine "https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/models/recommendation.py"
click node_hybrid_engine "https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/services/recommendation_engine.py"
click node_jobs "https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/app.py"
click node_messaging_api "https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/routes/messaging_routes.py"
click node_socket_handlers "https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/routes/websocket_routes.py"
click node_message_data "https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/database/messaging_db.py"
click node_admin "https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/app.py"
click node_admin_service "https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/services/admin_service.py"
click node_app_db "https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/college_pro.db"
click node_message_db "https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/database/messaging_db.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 toneBlue
class node_profiles,node_profile_routes,node_connections,node_recommendation_api,node_rule_engine,node_hybrid_engine,node_app_db,node_message_db toneAmber
class node_jobs toneMint
class node_messaging_api,node_socket_handlers,node_message_data toneRose
class node_admin,node_admin_service,node_users,node_email toneIndigo
```

## Components

### Web application

- [Flask application](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/app.py): `app.py`

### People and discovery

- [Profiles and dashboards](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/services/profile_service.py): `services/profile_service.py`
- [Profile workflows](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/app.py): `app.py`
- [Connection requests](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/routes/connection_routes.py): `routes/connection_routes.py`
- [Recommendation API](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/routes/recommendation_routes.py): `routes/recommendation_routes.py`
- [Profile matching](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/models/recommendation.py): `models/recommendation.py`
- [Hybrid recommendations](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/services/recommendation_engine.py): `services/recommendation_engine.py`

### Career board

- [Jobs and recruitment](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/app.py): `app.py`

### Messaging

- [Messaging endpoints](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/routes/messaging_routes.py): `routes/messaging_routes.py`
- [Live chat events](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/routes/websocket_routes.py): `routes/websocket_routes.py`
- [Messaging operations](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/database/messaging_db.py): `database/messaging_db.py`

### Administration

- [Admin workflows](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/app.py): `app.py`
- [Admin statistics](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/services/admin_service.py): `services/admin_service.py`

### Other components

- **Students, alumni, faculty**
- **Gmail SMTP**
- [Application database](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/college_pro.db): `college_pro.db`
- [Messaging database](https://github.com/rajendermohanverma/dbit-alumni-hub/blob/main/database/messaging_db.py): `database/messaging_db.py`

## Connections

- Students, alumni, faculty → Flask application: use
- Flask application → Profile workflows: dispatches
- Profile workflows → Profiles and dashboards: updates profiles
- Profiles and dashboards → Application database: reads and writes
- Flask application → Connection requests: dispatches
- Connection requests → Application database: reads and writes
- Connection requests → Gmail SMTP: sends notices
- Flask application → Recommendation API: dispatches
- Recommendation API → Hybrid recommendations: requests suggestions
- Recommendation API → Profile matching: falls back to
- Hybrid recommendations → Profile matching: fills remaining
- Hybrid recommendations → Application database: reads interactions
- Profile matching → Application database: reads profiles
- Flask application → Jobs and recruitment: serves career workflows
- Jobs and recruitment → Application database: reads and writes
- Flask application → Messaging endpoints: dispatches
- Messaging endpoints → Messaging operations: calls
- Flask application → Live chat events: registers handlers
- Live chat events → Messaging operations: reads and writes
- Messaging operations → Messaging database: persists messages
- Flask application → Admin workflows: serves admin workflows
- Admin workflows → Admin statistics: requests statistics
- Admin statistics → Application database: queries
- Admin workflows → Gmail SMTP: sends notices
