hi, please i like you to do the frontend implementation of this interface based on this interface description : Based on the HTML design provided in the file `attendease_lecturer_interfaces (2).html`, hereβs a **detailed breakdown** of the UI/UX structure, pages, transitions, icons, and color scheme:
---
### π **Number of Pages (Screens)**
There are **5 main interface pages** (each with `.screen` class):
1. **Dashboard** (`id="dashboard"`) β default active screen
2. **Courses** (`id="courses"`)
3. **Attendance Reports** (`id="attendance"`)
4. **Real-Time Attendance** (`id="realtime"`)
5. **Profile Settings** (`id="profile"`)
Each is a full-page view shown via toggling the `.active` class.
---
### π **Page Transitions**
Transitions between pages are handled by the `showScreen(screenId)` JavaScript function. This hides all `.screen` divs and activates the selected one.
**Transitions (via Bottom Nav):**
* **Dashboard** β `Courses`, `Attendance Reports`, `Profile Settings`
* **Courses** β `Upload Students`, `Manage Students`
* **Attendance Reports** β `Filter by course/date`, view student attendance
* **Dashboard**/`Courses` β **Real-Time Attendance** when viewing live check-ins
* **Profile Settings** β Update profile, toggle dark mode, change password, logout
---
### π¨ **Color Scheme**
#### π Light Mode:
* **Primary Gradient**: `#667eea` β `#764ba2` (purple-blue)
* **Card Background**: `#ffffff`
* **Accent Colors**:
* Buttons: `#667eea`, `#22c55e` (green), `#ef4444` (red)
* Text: `#333`, `#666`
* Icons: Inherit from text color or emoji
#### π Dark Mode:
* **Background Gradient**: `#1a1a2e` β `#16213e`
* **Cards/Containers**: `#2d3748`, `#4a5568`
* **Text Colors**: `#f7fafc`, `#e2e8f0`
* **Accent (Purple)**: `#8b5cf6`
Toggled via the `π` / `βοΈ` icon on each screenβs header and a switch in the Profile screen.
---
### π§ **Bottom Navigation (Fixed)**
* **Position**: `position: fixed; bottom: 0; left: 50%; transform: translateX(-50%)`
* **Max Width**: `414px`
* **Items**: 4 nav buttons with icon + label
1. **π Dashboard**
2. **π Courses**
3. **π Reports**
4. **π€ Profile**
* **Active State**: Highlighted with purple-blue background (`#f8f9ff`) and text
---
### π§© **Icons Used**
All icons are **emojis** embedded as text in HTML (no SVG or font libraries). Here's the list:
* `π ` for Dashboard
* `π` for Courses
* `π` for Reports
* `π€` for Profile
* `β°` as a Menu icon (hamburger)
* `π`/`βοΈ` for Dark/Light Mode toggles
π You can use the same emoji icons in Flutter with:
```dart
Text("π ", style: TextStyle(fontSize: 24))
```
---
### π **Button Types & Colors**
Each screen includes interactive buttons with these types:
| Type | Class Name | Color |
| --------- | ---------------- | ------------------------------------- |
| Primary | `.btn-primary` | Purple gradient (`#667eea β #764ba2`) |
| Success | `.btn-success` | Green (`#22c55e`) |
| Danger | `.btn-danger` | Red (`#ef4444`) |
| Secondary | `.btn-secondary` | Light gray/blue (`#f8f9ff`) |
They also support:
* `.active`, `.inactive` states
* Hover/active animations
---
### ποΈ **Modals (Popups)**
Two main modals with centered white content box and backdrop:
1. **Start Session** β dropdown for location + confirm
2. **Upload Students** β file input for CSV
Triggered by `startSession()` and `uploadStudents()` functions.
---
### π **Other Components**
* **Stat Cards** (Dashboard & Real-time):
* Metrics like βActive Courses,β βTotal Students,β βChecked Inβ
* **Attendance Table**:
* Student info, Present count, %, export as CSV
* **Toggle Switches**:
* Notifications, Auto Export (Profile settings)
---
### π **Layout & Structure**
* Mobile-first design (`max-width: 414px`)
* Responsive grid for stats and filters
* Cards with subtle shadows and hover animation
* Forms with modern inputs (`border-radius: 12px`, focus shadow)
* Dark mode styles prefixed with `.dark-mode`
---
### β
Summary of Elements
| Element | Count/Note |
| ---------------------- | ----------------------------------------- |
| Pages (Screens) | 5 |
| Bottom Nav Items | 4 icons (Dashboard β Profile) |
| Unique Icons Used | 6 emoji-based |
| Cards per Page | \~3β4 (varies per screen) |
| Modals | 2 (Session, Upload) |
| Toggles | 3 (Dark Mode, Notifications, Auto Export) |
| Primary Color Gradient | `#667eea β #764ba2` |
| Layout Width | Max `414px` (iPhone size) |
---