Daily Habit Tracker Kotiln Andorid

Daily Habit Tracker - Project Documentation

Overview

The Daily Habit Tracker is a simple Android application designed to help users create, monitor, and maintain their daily habits. The application emphasizes ease of use, clear visual organization, and offline functionality.

Purpose

This project serves as a personal productivity tool that enables users to:

  • Develop consistent routines
     
  • Track their progress over time
     
  • Stay motivated through visual feedback
     

Main Features

  • Habit Management: Users can add new habits, edit existing ones, and delete habits they no longer wish to track.
     
  • Daily Check-ins: Habits can be marked as completed on a daily basis.
     
  • Calendar Tracking: A calendar view shows which days a habit was completed, helping users stay consistent.
     
  • Customization: Each habit can have its own color for easy differentiation.
     
  • Reminders: Optional notifications can be set for each habit.
     
  • Theme Support: Dark and light mode are supported and follow the system setting.
     
  • Local Storage: All data is stored locally on the device using Room database.
     

Technical Details

Tech Stack

  • Language: Kotlin
     
  • Architecture: MVVM (Model-View-ViewModel)
     
  • Database: Room (SQLite)
     
  • UI: Material Design components and Navigation Component
     
  • Concurrency: Kotlin Coroutines
     
  • Binding: ViewBinding for safe and efficient UI binding
     

Project Structure

  • data/
     
    • database/: Room database setup
       
    • entities/: Data models representing habits and related data
       
    • dao/: Data Access Objects for querying the database
       
    • repository/: Manages data operations and abstracts data sources
       
  • ui/
     
    • activities/: Entry point activities (e.g., MainActivity)
       
    • fragments/: Modular UI components for different app screens
       
    • adapters/: RecyclerView adapters for displaying lists
       
    • viewmodels/: ViewModel classes that handle UI-related data
       
  • utils/
     
    • extensions/: Kotlin extension functions and utility classes
       

Setup Guide

Clone the Repository:

git clone https://github.com/your-username/daily-habit-tracker.git

  1.  
  2. Open Project: Launch the project in Android Studio.
     
  3. Sync Gradle: Gradle will automatically download required dependencies.
     
  4. Run the App: Deploy on an emulator or a real device (Android 8.0 or above).
     

Dependencies Used

  • AndroidX Core and AppCompat
     
  • Material Components
     
  • ConstraintLayout
     
  • Navigation Component
     
  • Room Database
     
  • Lifecycle Components (ViewModel, LiveData)
     
  • Kotlin Coroutines
     

Potential Enhancements

  • Statistics: Visual charts and graphs for user insights
     
  • Categories/Tags: Better organization of habits
     
  • Data Backup: Export/import via file or cloud
     
  • Widgets: Quick access from home screen
     
  • Cloud Sync: Synchronize data across devices
     

Project Git:-https://github.com/brahmaputraS/daily-habit-tracker.git





 

Screenshots:

Conclusion

The Daily Habit Tracker project demonstrates best practices in Android development using the MVVM architecture, Room database, and modern UI components. It is a solid foundation for further development into a more feature-rich productivity tool.