Awake is a customizable alarm application built with Flutter. Set repeating alarms, choose fun ways to dismiss them and fine‑tune every aspect of how they ring.
If you enjoy using this project please ⭐ star the repo.
- 🌗 Switch between light, dark and system themes.
- 🕑 Toggle 12‑hour or 24‑hour time format.
- 📳 Enable or disable vibration when alarms sound.
- 🔊 Adjustable alarm volume with optional gradual fade in.
- 🎵 Pick custom alarm sounds from your device.
- 🏷️ Add a title to each alarm and manage multiple alarms.
- 🔁 Select the days of the week the alarm should repeat.
- 💤 Snooze alarms for a custom duration.
- ❌ Dismiss alarms in different ways:
- ⏰ Default ringing screen
- 🧮 Math challenge
- 📳 Shake to stop
- 👆 Tap challenge
- 🤳 QR code scan (download the code from settings or Download Link)
- Widgets and quick actions
- Additional dismissal challenges
- Stopwatch & timer modes
| Platform | Installation Links |
|---|---|
| Android |
|
| Name | Usage |
|---|---|
| alarm | Schedule and ring alarms |
| device_preview_plus | Visualize the app on different devices |
| disable_battery_optimization | To Make sure AutoStart is enabled |
| file_picker | Pick custom audio files |
| flutter_bloc | State management |
| flutter_inset_box_shadow_update | Neumorphic shadows |
| go_router | Routing within the app |
| lottie | Animations |
| mobile_scanner | Scan QR codes |
| path | Path utilities |
| path_provider | Locate app directories |
| permission_handler | Request runtime permissions |
| sensors_plus | Detect device shaking |
| shared_preferences | Persist user settings |
| sqflite | Local database for alarms |
| flutter_lints | Recommended lint set |
| flutter_test | Unit and widget testing |







