# ananyaraghuveer/edureel_flutter_major_project architecture

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

- Interactive diagram: https://gitdiagram.com/ananyaraghuveer/edureel_flutter_major_project
- Repository: https://github.com/ananyaraghuveer/edureel_flutter_major_project

## Overview

This is a cross-platform Flutter app whose tree suggests an education-video product with authentication, dashboards, reels, and an academic mentor/RAG feature. The README is only the Flutter starter template, and the sampled files cover platform launchers rather than Dart runtime code; therefore the graph reflects supported product entry points and feature modules without asserting unverified calls or backend wiring.

Main entry points: [`lib/main.dart`](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/main.dart) (App entry), [`lib/dashboard_screen.dart`](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/dashboard_screen.dart) (Dashboard), [`lib/screens/academic_mentor_screen.dart`](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/screens/academic_mentor_screen.dart) (Academic mentor), [`lib/services/rag_api_service.dart`](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/services/rag_api_service.dart) (RAG API client)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_experience["App experience"]
  node_app["App entry<br/>[main.dart]"]
  node_dashboard["Dashboard"]
  node_reels["Video reels<br/>[reel_screen.dart]"]
  node_mentor["Academic mentor"]
  node_pages["Page routing<br/>[pages.dart]"]
  node_widgets["Shared widgets<br/>[widgets.dart]"]
  node_theme["App theme<br/>[app_theme.dart]"]
end

subgraph group_services["App services"]
  node_state["App state<br/>[app_state.dart]"]
  node_auth["Authentication<br/>[auth_service.dart]"]
  node_api["API service<br/>[api_service.dart]"]
  node_ragservice["RAG API client"]
  node_ragmodel["RAG response model<br/>[rag_response.dart]"]
  node_config["API configuration<br/>[api_config.dart]"]
  node_video["Video blob adapter"]
end

subgraph group_platform["Platform runtime"]
  node_platform["Flutter host<br/>[MainActivity.kt]"]
end

node_user(("Learner"))
node_backend{{"Application backend"}}

node_user -->|"opens"| node_app
node_app -->|"presents"| node_dashboard
node_app -->|"routes"| node_pages
node_dashboard -->|"offers"| node_reels
node_dashboard -->|"offers"| node_mentor
node_mentor -->|"requests"| node_ragservice
node_ragservice -->|"queries"| node_backend
node_api -->|"requests"| node_backend
node_app -->|"runs on"| node_platform

click node_app "https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/main.dart"
click node_dashboard "https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/dashboard_screen.dart"
click node_reels "https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/reel_screen.dart"
click node_mentor "https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/screens/academic_mentor_screen.dart"
click node_pages "https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/pages.dart"
click node_widgets "https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/widgets.dart"
click node_theme "https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/app_theme.dart"
click node_state "https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/app_state.dart"
click node_auth "https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/auth_service.dart"
click node_api "https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/api_service.dart"
click node_ragservice "https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/services/rag_api_service.dart"
click node_ragmodel "https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/models/rag_response.dart"
click node_config "https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/config/api_config.dart"
click node_video "https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/video_blob_stub.dart"
click node_platform "https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/android/app/src/main/kotlin/com/example/edureel_app/MainActivity.kt"

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_dashboard,node_reels,node_mentor,node_pages,node_widgets,node_theme toneBlue
class node_state,node_auth,node_api,node_ragservice,node_ragmodel,node_config,node_video toneAmber
class node_platform toneMint
class node_user,node_backend toneIndigo
```

## Components

### App experience

- [App entry](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/main.dart): `lib/main.dart`
- [Dashboard](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/dashboard_screen.dart): `lib/dashboard_screen.dart`
- [Video reels](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/reel_screen.dart): `lib/reel_screen.dart`
- [Academic mentor](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/screens/academic_mentor_screen.dart): `lib/screens/academic_mentor_screen.dart`
- [Page routing](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/pages.dart): `lib/pages.dart`
- [Shared widgets](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/widgets.dart): `lib/widgets.dart`
- [App theme](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/app_theme.dart): `lib/app_theme.dart`

### App services

- [App state](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/app_state.dart): `lib/app_state.dart`
- [Authentication](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/auth_service.dart): `lib/auth_service.dart`
- [API service](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/api_service.dart): `lib/api_service.dart`
- [RAG API client](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/services/rag_api_service.dart): `lib/services/rag_api_service.dart`
- [RAG response model](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/models/rag_response.dart): `lib/models/rag_response.dart`
- [API configuration](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/config/api_config.dart): `lib/config/api_config.dart`
- [Video blob adapter](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/lib/video_blob_stub.dart): `lib/video_blob_stub.dart`

### Platform runtime

- [Flutter host](https://github.com/ananyaraghuveer/edureel_flutter_major_project/blob/main/android/app/src/main/kotlin/com/example/edureel_app/MainActivity.kt): `android/app/src/main/kotlin/com/example/edureel_app/MainActivity.kt`

### Other components

- **Learner**
- **Application backend**

## Connections

- Learner → App entry: opens
- App entry → Dashboard: presents
- App entry → Page routing: routes
- Dashboard → Video reels: offers
- Dashboard → Academic mentor: offers
- Academic mentor → RAG API client: requests
- RAG API client → Application backend: queries
- API service → Application backend: requests
- App entry → Flutter host: runs on
