Overview
TheHomeScreen is the main dashboard of the TecNM Control Escolar app. It displays the current class, upcoming classes, and a weekly calendar view. The screen includes a QR scanner floating action button for quick attendance registration.
Main Composable
HomeScreen()
Scaffold with a floating action button for QR code scanning and displays:
- Header with TecNM branding and notifications
- Week days row with date selection
- Current class card with progress indicator
- List of upcoming classes
- QR scanner FAB (Floating Action Button) in TecGold color
- Scrollable content with vertical scroll state
- Light gray background (Color(0xFFF5F6F8))
Sub-Composables
HomeHeader()
- TecNM logo and campus name
- Notification icon
- Personalized greeting (“Hola, Arlyn”)
- Subtitle explaining the view
WeekDaysRow()
DayCard()
day- Day abbreviation (e.g., “Lun”, “Mar”)date- Day number (e.g., “12”, “13”)selected- Whether this day is currently selected
- Selected cards use TecBlue background with white text
- Unselected cards use white background with gray/dark text
- Selected cards show a TecGold dot indicator
CurrentClassCard()
- Subject icon
- Class time (start and end)
- Course name (e.g., “Cálculo Diferencial”)
- Classroom location with 📍 emoji
- Teacher name with 👨🏫 emoji
- Progress bar showing time elapsed/remaining
- Remaining time indicator
- TecBlue background with white text
- Elevated card with 8dp shadow
- 28dp rounded corners
- TecGold progress bar indicator
NextClassItem()
hour- Start time of the class (e.g., “10:00”)subject- Course nameclassroom- Room locationteacher- Instructor name
- Time displayed on the left (56dp width)
- White card with class details
- 22dp rounded corners with 3dp elevation
Theme Colors
The HomeScreen uses the following theme colors:- TecBlue - Primary brand color for selected states and accents
- TecGold - Secondary color for highlights and progress indicators
- Background - Color(0xFFF5F6F8) light gray
- Card backgrounds - White with varying elevations
Navigation
The screen includes a floating action button with a QR code scanner icon that can be used to quickly register attendance or scan class codes.Source Code
File:app/src/main/java/com/example/appcontrolescolar/ui/screens/HomeScreen.kt