Skip to content

Latest commit

 

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌅 Arise

A smart, beautiful, and persistent alarm clock designed to actually wake you up.

Platform: Android Language: Kotlin UI: Jetpack Compose Architecture: Clean

✨ Features

  • Dynamic UI: A stunning, modern interface built entirely with Jetpack Compose Material 3.
  • Smart Scheduling: Seamlessly handles one-time and recurring alarms based on your selected days.
  • Wake Up Tasks: Simple swiping isn't enough. Arise forces your brain to wake up with interactive dismissal tasks:
    • 🔢 Math: Solve arithmetic problems to shut the alarm off.
    • 📳 Shake: Shake your phone vigorously to dismiss.
    • 🧠 Memory: A quick memory game to jumpstart your cognition.
  • Wake Up Check: A built-in failsafe that pings you a few minutes after dismissal to make sure you didn't fall back asleep.

🛠️ Tech Stack

  • UI: Jetpack Compose for a reactive, declarative UI.
  • Dependency Injection: Dagger Hilt for clean and scalable architecture.
  • Database: Room for local persistence of your schedules.
  • Background Work: AlarmManager and BroadcastReceiver combined with Coroutines to accurately trigger and reschedule alarms even when the app is closed.
  • Architecture: Clean Architecture principles (Domain, Data, and Presentation layers) utilizing MVVM.

Setting a New Alarm

Choose your time, set a custom label, pick your repeat days with quick toggles, and select the Task you want to defeat in the morning. Arise calculates exactly how long you have left to sleep!

The Wake Up Check

Toggle this on, and Arise will subtly check in on you 5 minutes after your alarm is dismissed. If you don't respond, the alarm fires back up. No more "accidentally" going back to bed.

🚀 Getting Started

  1. Clone the repository:
    git clone https://github.com/harsh-bhadauria/Arise.git
  2. Open in Android Studio: Open the project using Android Studio.
  3. Build & Run: Sync Gradle and run the :app configuration on your emulator or physical device.

🤝 Contributing

Pull requests are always welcome! Whether it's adding a new dismissal task (like a barcode scanner or a step counter), improving the UI, or fixing bugs—feel free to open an issue or submit a PR.

~ Built with ♥️ by Harsh

About

An unyielding alarm app that ensures you never oversleep by deploying persistent, recurring alerts that only stop once you’ve proven you’re wide awake.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages