Alarm app that stops only when you send a Lightning payment. Supports Nostr Wallet Connect, Lightning Address, and LNURL-pay with configurable penalty presets. Includes recurring alarms, custom sounds, and vibration.
ZapClock is a funny alarm app powered by the Bitcoin Lightning Network. The alarm can only be stopped by sending a Lightning payment - a unique way to start your day by supporting the Bitcoin/Nostr community!
🚨 Key Features:
- Alarm stops ONLY when you send Lightning sats
- Or use as a regular alarm (without payment requirement)
- Recurring alarms with flexible day-of-week scheduling (once, daily, weekdays, weekend, custom)
- Custom alarm sounds and ringtones
- Vibration support
- Wake up and contribute to the ecosystem every morning
⚡ Lightning Integration:
- Nostr Wallet Connect (NWC) - use your existing wallet (Alby, Mutiny, etc.)
- Lightning Address support with LNURL-pay protocol
- Penalty Preset System - Choose from 6 smart presets:
- ⚡ 15 seconds / 21 sats
- 🔥 30 seconds / 42 sats
- 💪 1 minute / 100 sats
- 😴 5 minutes / 500 sats
- 😱 10 minutes / 1,000 sats
- 💀 15 minutes / 2,100 sats
- ⚙️ Custom (set your own timeout and amount)
- Configurable donation recipients via YAML
- Default recipients: ZapClock Developer, Zeus Wallet Developer, Sparrow Wallet Developer
- Per-alarm recipient override supported
- Payment messages automatically included ("donation from ZapClock")
- Secure: NWC connection stored locally only
- Alarm continues ringing if payment fails (ensures you wake up!)
🌍 Internationalization:
- Multi-language support (English and Japanese)
- Easy to add more languages via ARB files
🎨 Design:
- Material Design 3 with dynamic colors
- Dark theme support (automatic)
- Bitcoin/Lightning-themed orange palette
- Simple, intuitive interface
- Onboarding screen for first-time users
- Permission management system
🔧 Technical:
- Rust backend for cryptographic operations (nostr-sdk, nwc)
- Flutter for smooth cross-platform UI
- Riverpod 2.6.1 for state management
- Android 6.0+ (API 23+) support
- flutter_rust_bridge for seamless Rust-Flutter integration
- Enhanced logging and error handling
- ProGuard optimization for production builds
✨ Fully Functional & Ready to Use: ZapClock is production-ready with all core features implemented and tested! Wake up every morning knowing you're supporting the Bitcoin/Nostr ecosystem.
🔮 Future Enhancements:
- Amber (Nostr Signer) integration for secure Nostr login
- Donate to your Nostr follows - random selection with Lightning Address
- Identity-aware zaps (NIP-57 support)
- Payment history and analytics
- iOS support
Perfect for Bitcoin enthusiasts who want to start their day by supporting the decentralized ecosystem!
⚠️ Requirements:
- Nostr Wallet Connect (NWC) compatible wallet (Alby, Mutiny, etc.) for Lightning payment features
- Android 6.0 or higher
Summary generated by Zapstore from source.
Original description, as the developer published it.
Stacked in
Latest release
Whoever published this has not claimed the app as theirs. Are you the developer? Claim your app
It asks for no sensitive access.
Permissions
- Notifications POST_NOTIFICATIONS Send you notifications
- Files READ_EXTERNAL_STORAGE Read files on this phone
- Photos and media READ_MEDIA_AUDIO Read your photos, videos and music
Release notes
[1.0.1] - 2025-11-01
🔓 Lock Screen & Background Countdown Update
This patch release adds critical improvements for lock screen alarm display and background countdown functionality.
Added
🔓 Lock Screen Alarm Display (Android 10+)
- Full Screen Intent permission support
- Automatic alarm screen display even when device is locked
- No need to tap notification - alarm screen appears automatically
- Native permission check via MethodChannel
- Settings UI for permission status and configuration
- Recognized as default clock app by Android system
⏱️ Background Countdown Service
- Automatic countdown starts when alarm triggers (no user interaction needed)
- Countdown persists in background using SharedPreferences
- Automatic Zap execution when timeout is reached
- UI syncs with background countdown in real-time
- Manual stop option cancels background countdown
🕐 AlarmClock Intent Support
- Handles SET_ALARM, SHOW_ALARMS, DISMISS_ALARM, SNOOZE_ALARM intents
- Makes ZapClock recognizable as a clock app by Android system
- Better integration with Android's alarm management
Changed
- Enhanced permission management system with Full Screen Intent support
- Improved alarm ring screen to sync with background countdown
- Updated onboarding flow to request Full Screen Intent permission
Fixed
- 🐛 Countdown Display Bug on Lock Screen
- Fixed countdown timer showing "00:00" initially when alarm triggers on lock screen
- Added fallback mechanism when background countdown data is not yet available
- Improved AlarmCountdownService to cache timeout values in memory
- Enhanced UI to display correct timeout value immediately on screen load
- Optimized SharedPreferences access with memory caching
Technical
- Added AlarmCountdownService for background countdown management
- Implemented MethodChannel communication between Flutter and Kotlin
- Enhanced MainActivity.kt with Full Screen Intent permission handling
- Updated AndroidManifest.xml with AlarmClock intent filters
- Improved countdown synchronization with memory caching for better performance
- Added detailed debug logging for countdown service
Comments
Loading comments…
More bitcoin apps
See more-
S
Sachwert-Tresor by Alien Investor Local, encrypted vault for your Bitcoin, gold and silver — fully offline.
-
B
Boomer Dad FX by BDFX Non-custodial exchange
-
N
Nymchat - Geohash Mesh Chat by Luxas Encrypted chat with Bluetooth mesh. No phone number, no account, works offline.
-
P
Phone21 by Twentyone.cz Tvoje telefonní číslo s tebou kamkoli — přes vlastní miniserver doma.
-
L
LaWallet by El Gorila 🇦🇷 Lightning wallet for your community: address, cards, Nostr Wallet Connect.
-
K
Kanari by Kanari Pay for Wero purchases with bitcoin, or earn sats by paying other people's.
Get ZapClock the private way
Updates checked on your device, and every release verified before it installs.