Skip to content

Repository files navigation

ToDoList – Mobile Task Planner with Gamification

Java Android Firebase License: MIT

Overview

Mobile Android application for effective task management with motivational gamification elements.
Developed as a qualification (diploma) project for the "Software Engineering" program at the College of Engineering, Management and Land Management, National Aviation University (Kyiv, Ukraine, 2024).

The app helps users organize daily tasks, prioritize them using the Eisenhower Matrix, track progress, and stay motivated through points, achievements, and timely notifications.

Features

Authentication

  • Registration and login via email (Firebase Authentication)

Task Management

  • Create, edit, delete, and mark tasks as completed
  • Categories: Work, Personal, Study, Health, Family, Hobbies
  • Prioritization via Eisenhower Matrix (4 quadrants: Urgent & Important, Not Urgent & Important, Urgent & Not Important, Not Urgent & Not Important)
  • Deadlines with date and time selection

Gamification

  • Earn 25 points for on-time task completion
  • Unlock 12 achievements at point milestones (500 → 100,000 points)
  • Profile avatar updates based on current achievement level

Views

  • Day View – tasks filtered by priority
  • Month View – calendar with tasks displayed for selected date

Statistics

  • Total tasks, completed, pending, and accumulated points

Notifications

  • Reminders 3 days before task deadline

Settings

  • Multi-language support: Ukrainian, English, French, German, Korean, Japanese
  • Light/Dark theme toggle
  • Enable/disable notifications
  • Edit personal profile information

Technologies

Category Technologies
Language Java
Framework Android SDK
Backend Firebase Authentication & Realtime Database
Architecture MVVM
Android Jetpack Navigation Component, View Binding, RecyclerView
Design Material Design

Architecture

The project follows the MVVM (Model-View-ViewModel) pattern with clear separation of concerns:

  • Model – data classes and Firebase interaction layer
  • View – XML layouts and Fragments (UI components)
  • ViewModel – business logic and data handling

UML class diagram and use-case diagrams are included in the project documentation.

Screenshots

Authentication Flow

Registration, login, and profile setup


Task Views

Task display in Day view and Month view


Task Management

Adding and editing a task (category, priority, deadline)


Achievements

Achievements screen at initial and maximum levels


Menu & Settings

Main menu and application settings


How to Run the Project

  1. Clone the repository:

    git clone https://github.com/your-username/todolist-android.git
  2. Open the project in Android Studio

  3. Configure Firebase:

    • Download google-services.json from Firebase Console
    • Place it in the app/ directory
  4. Build and run the application on an Android device or emulator

Acknowledgments

  • The user interface design and some layout solutions were inspired by publicly available Android development tutorials and educational materials on YouTube (e.g., Philipp Lackner, Coding in Flow, and similar task planner projects)
  • All application logic, data handling, and functionality were implemented independently as part of the diploma project
  • Special thanks to my supervisor, Eduard Ruslanovych Smilyi, for guidance and support throughout the project

License

This project is licensed under the MIT License - see the LICENSE file for details.


Author: Mariia Stepanova
Program: Software Engineering
Institution: College of Engineering, Management and Land Management, National Aviation University (Kyiv, Ukraine)
Year: 2024

About

Android task planner app with Eisenhower Matrix prioritization and gamification. Diploma project in Software Engineering (Java, Firebase, MVVM).

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages