Skip to content

jwtiyar/To-Do-List

Repository files navigation

To-Do: Task List & Reminder

A professional-grade, privacy-focused task management application for Android.

License: GPL v3 API

Features

Task Management

  • Create, Edit, Delete - Simple and efficient CRUD operations
  • Priority Levels - Organize tasks with Low, Medium, and High priorities
  • Task Descriptions - Add optional notes and details to tasks
  • Search - Quickly find tasks with real-time search functionality

Organization

  • Home Screen Widget - A beautiful, scrollable widget for tracking Pending tasks directly from your home screen (fully supports Day/Night Dynamic Theming)
  • Expandable Tasks - Tap-to-expand any task to reveal long descriptions inline
  • Tabs - View tasks by status: Pending, Completed, Saved, Archive, Recurring
  • Sorting - Sort tasks by date, priority, or name
  • Swipe Actions - Delete or complete tasks instantly with a simple intuitive swipe gesture

Reminders & Recurring Tasks

  • Local Notifications - Set reminders for individual tasks
  • Recurring Tasks - Create tasks that repeat daily, weekly, or monthly
  • Custom Recurrence - Set end dates for recurring tasks

Backup & Restore

  • AES-256 Encryption - Securely encrypt your task backups with a password.
  • Export Backup - Save your tasks to an encrypted backup file.
  • Import Backup - Restore tasks from an encrypted backup file (v2) or legacy plaintext (v1).
  • Import Modes - Add to existing tasks or replace all tasks.

Requirements

  • Android 8.0 (API 26) or higher
  • Notification permission for reminders (Android 13+)

Build

The app uses standard Gradle. You can build it using:

# Debug build
./gradlew assembleFdroidDebug

# Release build
./gradlew assembleFdroidRelease

Build Variants

  • fdroidDebug / fdroidRelease - Primary FOSS variant (no proprietary dependencies)

Tech Stack

  • Language: Kotlin
  • Architecture: MVVM with Repository Pattern
  • Database: Room
  • Dependency Injection: Hilt
  • UI: Material Design 3, ViewBinding
  • Async: Coroutines, Flow
  • Paging: Jetpack Paging 3

Download

Get it on F-Droid

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Author

Jwtyar Nariman

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages