> For the complete documentation index, see [llms.txt](https://hossams-organization-1.gitbook.io/edulink/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hossams-organization-1.gitbook.io/edulink/chapter-4-technical-design-and-architecture.md).

# Chapter 4: Technical Design and Architecture

## Architecture Overview

* **Frontend:** Flutter

* **Backend:** Firebase (Firestore, Supabase, Storage, Cloud Messaging)

* **Local Storage:** Shared Preferences

***

## Key Components

* **Authentication:** Firebase Auth (Supported with Google and Facebook)

* **Database:** Firestore (for users, courses, Q\&A, messages)

* **Storage:** Supabase Sotrage for uploading materials (PDFs, videos, links)

***

## System Flow&#x20;

1. User logs in (student/professor).
2. Depending on role:

* Student: Applies to courses → Views course group → Interacts with materials/Q\&A/chat.
* Professor: Creates courses → Manages materials and interactions.
