Android app for tasks, reminders, ideas, and notes — with a local reminder engine, device calendar sync, voice memos, and optional PIN / biometric lock.
Built with Flutter by Preshan Pradeepa Kariyawasam.
| Home | Tasks | Create |
|---|---|---|
![]() |
![]() |
![]() |
| New Task | New Reminder | Settings |
|---|---|---|
![]() |
![]() |
![]() |
Latest release: v1.4.0
- Tasks with categories, priority, pin, archive, and search
- Reminders that keep working offline (local notifications + AlarmManager)
- Ideas and notes, including voice memos
- Device calendar integration (optional; skipped for private items)
- App lock with PIN or biometrics; private text encrypted at rest
- Full backup export / import (optional password) and Google Drive backups
- Dark / light theme with a day–night sky background
- Android home-screen shortcuts: long-press the app icon → New Task / Reminder / Idea
| Area | Choice |
|---|---|
| UI | Flutter, Material 3, Riverpod, go_router |
| Local DB | Isar |
| Notifications | flutter_local_notifications, AlarmManager, WorkManager |
| Calendar | device_calendar |
| Auth / cloud | Firebase Auth + Firestore (sync still in progress) |
| Security | local_auth, flutter_secure_storage, AES for private fields |
| Voice | record, audioplayers |
| Icons | hugeicons |
lib/
├── main.dart / app.dart
├── core/ # theme, router, services, DB, constants
├── features/ # home, tasks, reminders, ideas, notes, calendar, privacy, …
└── shared/ # reusable widgets (icons, voice, gates, surfaces)
Each feature follows data/ → domain/ → presentation/.
Reminders are stored locally first, then scheduled on the device. They are not Firebase-only.
- Save to Isar
- Schedule a local notification
- Schedule an AlarmManager alarm
- Optionally create a device calendar event
- Keep
notificationId/calendarEventIdon the reminder
They should still fire after the app is closed or the phone reboots (boot receiver + WorkManager).
| Role | Light | Dark |
|---|---|---|
| Brand | #000080 |
#6EC6FF |
| Accent | #F59E0B |
#FBBF24 |
| Gold (completed) | #D4AF37 |
— |
Needs Flutter ≥ 3.2 and Android Studio. Firebase is required only if you want auth/sync.
flutter pub get
dart run build_runner build --delete-conflicting-outputs
# Optional: Firebase
dart pub global activate flutterfire_cli
flutterfire configure
# Place google-services.json in android/app/
flutter runflutter test
flutter analyzeStill planned: Google Calendar API sync, home-screen widgets, richer voice / assistant features. Firestore sync and polish are ongoing.
Drive backup uses Google Sign-In with the Drive file scope (app-created files only). If sign-in fails on a release-signed build, add that keystore’s SHA-1 in the Google Cloud / Firebase OAuth client used by the Android app. Debug-signed sideload APKs usually work with the existing debug SHA-1.





