Skip to content

Simple Stopwatch with Jetpack Compose, Foreground Services, and Bound Services

Notifications You must be signed in to change notification settings

sayandbera/StopWatch

Repository files navigation

Jetpack Compose Stopwatch

Welcome to the Jetpack Compose Stopwatch repository! 🚀 This application is a simple yet powerful stopwatch built using Jetpack Compose, Dagger-Hilt, and Android services.

screenshot on tablet

Quick demo video

recommended.mp4

Features

  • Intuitive UI: The stopwatch UI consists of three text units representing Hours, Minutes, and Seconds for easy tracking.
  • Dynamic Buttons: The first button adapts based on the service state, providing a seamless user experience.
  • Cancellation Option: The second button allows you to cancel the foreground service, resetting the stopwatch.
  • Service Persistence: Even if the application is closed, the stopwatch state can be tracked through the notification panel.
  • Notification Controls: Control the stopwatch conveniently using the notification panel.

Technologies Used

  • Jetpack Compose: Experience modern Android UI development with the declarative UI toolkit.
  • Dagger-Hilt: Utilize dependency injection for clean and modular code.
  • Bound Service: Efficiently manage communication between components for a smooth user experience.
  • Foreground Service: Ensure precise timekeeping even when the app is in the background.

Getting Started

  1. Clone the repository.

    git clone https://github.com/sayandbera/StopWatch.git
  2. Open the project in Android Studio.

  3. Build and run the application on your device or emulator.

  4. Explore the features and functionality of the Jetpack Compose Stopwatch!