Your ultimate productivity companion β customizable, powerful, and beautifully designed β°π
graph TD
A[TaskNotate Features] --> B[π― Task Management]
A --> C[β° Local Notifications]
A --> D[π¨ Theme Customization]
A --> E[π Drawing & Notes]
A --> F[π Multi-language Support]
A --> G[π
Calendar & Timeline View]
C --> H[Full-screen Alarm]
C --> I[Lock Screen Support]
C --> J[Reboot-resilient Scheduling]
- π Clean & modular architecture (Clean + MVC)
- β° Intelligent task scheduling with alarm fallback
- π¨ Minimal UI designed for focus & clarity
- π Multilingual UI (π¬π§ πΈπ¦ πͺπΈ π©πͺ π¨π³)
graph TD
A[β° Alarm Trigger] --> B[Kotlin Alarm Handler]
B --> C[MethodChannel Bridge]
C --> D[Flutter Alarm Service]
D --> E[Alarm State Notifier]
E --> F[Alarm UI Screen]
Full-screen persistent alarm with dismiss options and lock screen visibility.
| π§ Component | π Technology |
|---|---|
| Framework | Flutter 3.x |
| Architecture | Clean + MVC |
| State Management | GetX |
| Local Storage | SQLite |
| Alarm Scheduling | flutter_local_notifications + alarm |
| Platform Integration | Kotlin |
| Drawing Engine | CustomPaint API |
override fun onCreate(savedInstanceState: Bundle?) {
if (intent?.action == "com.megoabkm.tasknotate.ALARM_TRIGGER") {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O_MR1) {
setShowWhenLocked(true)
setTurnScreenOn(true)
} else {
window.addFlags(
WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON or
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON or
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
)
}
}
super.onCreate(savedInstanceState)
}void _handleAlarmTrigger(AlarmSettings settings) async {
await AlarmDisplayStateService.to.setAlarmScreenActive(true);
Get.offAllNamed(AppRoute.alarmScreen, arguments: {
'id': settings.id,
'title': 'Task Reminder',
});
}
Future<void> stopAlarm(int alarmId) async {
await Alarm.stop(alarmId);
await AlarmDisplayStateService.to.setAlarmScreenActive(false);
}git clone https://github.com/MegoABKM/TaskNotate.git
cd TaskNotate
flutter pub get
flutter runMade with π using Flutter β Help us make it even better!










