About this project

stdy4u is an offline-first student productivity companion built with Flutter. All data stays locally on device using Hive; no sign-up or account is needed. Course Management — add courses with name, code, professor, room, schedule, and color coding. Track per-course grades, credit hours, target GPA, and view visual progress rings on the home dashboard. Long-press to edit or delete. Tasks & Notes — create tasks with due dates and urgency levels (Normal/Urgent). Each course has a dedicated notes tab and a filterable task view. Completed tasks animate with a toggle effect. Course Materials — attach links, notes, or uploaded files (PDFs, images, docs). Files are copied into the app's documents directory for offline access and can be opened with a tap. Attendance Tracker — mark sessions as Present, Late, Absent, or Excused. A monthly calendar view lets you tap any day to see all scheduled courses. Automatic percentage calculation with configurable threshold warnings. Quick-action chips appear on the daily schedule. Pomodoro Timer — configurable focus sessions (1–60 min), short breaks (1–30 min), and long breaks (1–60 min) with automatic rotation. Includes a session counter, haptic feedback, optional background music playback, and a weekly focus analytics chart. Screen Time Insights — reads device usage statistics via a native UsageStatsManager bridge. Per-app daily entries are stored locally in Hive and displayed in an expandable panel on the Stats screen. Statistics & Analytics — CGPA calculation with letter-grade conversion (A–F), grade distribution charts per course, per-subject progress rings, and a weekly Pomodoro focus-time chart. Charts are hand-painted with CustomPaint, requiring no chart library. Comic-Print Design System — a neo-brutalist manga aesthetic featuring flat surfaces, sharp 2.5 px ink-black borders, hard offset shadows, and zero border radius. Offers light, dark, and system default modes with a signature Ink Red accent (#E63946) on aged paper and dark backgrounds. Custom navigation bar uses flat geometry, thick top borders, and all-caps labels. Haptic feedback and press sounds are toggleable. Notifications & Alarms — weekly recurring class reminders (15 minutes before each class), task reminders, session alerts, and exact alarms via SCHEDULE_EXACT_ALARM with a native receiver. Battery-optimization exemption is requested at runtime for reliable firing. In-App Updates — checks GitHub releases on launch and displays markdown release notes. Downloads support pause, resume, and cancel; progress survives interruptions. Architecture — Clean Architecture with three layers (presentation, domain, data) wired together by Riverpod. Navigation uses GoRouter with a ShellRoute hosting three tab routes inside an IndexedStack. State management relies on a shared refresh counter provider pattern. Tech Stack: Flutter 3.27+, Dart >=3.6.0, Riverpod, GoRouter, Hive, table_calendar, flutter_local_notifications, just_audio, build_runner with hive_generator and riverpod_generator. CI/CD via GitHub Actions. Platform support: Android and iOS. AGPL-3.0 licensed. Roadmap includes home-screen widgets, quick actions, and a flashcards feature.