Skip to content

Task Manager is a sleek, offline-first task app that lets you add tasks with custom date and time, and reminds you using AlarmManager and notifications—so you never miss a task.

Notifications You must be signed in to change notification settings

shubhanshu24510/Task-Reminder

Repository files navigation

📋 Task Reminder

License API Build Status

Task Reminder is a sleek and efficient Offline First task management app designed to keep you organized and on track. Easily add tasks with custom dates and times, and let the app handle the rest. Using Alarm Manager and Notification Services, Task Reminder ensures you never miss a task—even without an internet connection.


✨ Preview


📱 Screenshots

screen-1 screen-2


What Does It Do?

  • 📋 Organize Your Life: Add, edit, and manage tasks with a smooth and intuitive UI.
  • 🔔 Get Reminded: Set reminders that work offline using Alarm Manager & Notification Services.
  • 📴 Offline First: Store tasks locally with Room DB, no internet needed.
  • 📈 Track Progress: Beautiful circular progress indicators reflect your productivity.

🔑 Key Features

  • 📦 Room Database for persistent offline data
  • 🎞️ Shared animation layout with smooth transitions
  • 🧱 Clean MVVM architecture
  • 🌀 Nested Scroll Support
  • 🔵 Circular Progress Tracker
  • 🔍 Filtering & Sorting by priority/date
  • 🧹 Swipe to Delete
  • 🎨 Multiple App Themes (Light, Dark, etc.)
  • 🔔 Alarm Manager & Notification integration

🛠️ Tech Stack & Libraries

Core

  • Kotlin + Coroutines + Flow
  • Jetpack Compose (Declarative UI)
  • MVVM Architecture
  • Room (Offline-first DB)
  • ViewModel, LiveData, Navigation

Libraries

  • Hilt for Dependency Injection
  • Lottie Compose for animations
  • DataStore for preferences
  • Kotlinx Serialization for JSON parsing
  • KSP for code generation
  • Turbine for Flow testing
  • Baseline Profiles for runtime performance optimization

🧱 Architecture Overview

Task Reminder follows MVVM + Repository pattern:

🧩 UI Layer

UI Layer

  • Built with Compose
  • ViewModels observe state via Flows
  • Navigation and theming handled via Compose APIs

🔄 Data Layer

Data Layer

  • Offline-first using Room
  • Repository pattern ensures single source of truth
  • Clean separation between local and external sources

📐 Architecture Diagram

Overall Architecture


🧩 Modularization Strategy

  • 🧬 Reusability: Common logic abstracted in shared modules
  • 🚀 Parallel Builds: Modules build independently
  • 🔐 Strict Access Control: Scoped visibility and encapsulation
  • 👥 Team Focused: Better code ownership

More on modularization: Google Guide


🤝 Support

If you like this project, please consider ⭐ starring the repo and following me for more cool Android projects!

☕ You can also support my work by buying me a coffee:

Buy Me A Coffee


📄 License

Designed and developed by Shubhanshu Singh (2025)

Licensed under the Apache License, Version 2.0

http://www.apache.org/licenses/LICENSE-2.0

About

Task Manager is a sleek, offline-first task app that lets you add tasks with custom date and time, and reminds you using AlarmManager and notifications—so you never miss a task.

Topics

Resources

Stars

Watchers

Forks

Sponsor this project

Languages