Commit graph

9 commits

Author SHA1 Message Date
ad602f48c3
ci: add one-time keystore generator 2026-02-23 14:14:35 +01:00
fe3800866f
feat: update app icon to fire bell 2026-02-23 14:05:43 +01:00
8a30aac16e
fix: make gradlew executable 2026-02-22 02:41:02 +01:00
311821b58e
ci: add GitHub Actions build workflow 2026-02-22 02:39:03 +01:00
Helios
6b4ee77cba feat: add /last-alarm endpoint
Saves the last fired alarm (hour, minute, label, timestamp) to
SharedPreferences when an alarm fires. New GET /last-alarm endpoint
returns the last alarm info or 404 if none has fired yet.
2026-02-18 16:01:51 +01:00
Moritz
6032e9fd07 Production cleanup: enable R8, add ProGuard rules, validate API input
- Enable R8 minification and resource shrinking for release builds
- Add ProGuard keep rules for Ktor, kotlinx.serialization, Room
- Validate hour/minute range in POST /set endpoint
- Guard wake lock release on server start failure
- Remove unused template colors from colors.xml
- Rewrite README with curl examples, security note, troubleshooting

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 17:10:41 +01:00
Moritz
5ad7c6cee8 fix 2026-02-15 17:00:55 +01:00
Moritz
8b7b2c26c0 Fix alarm not ringing by using AlarmRingService with full-screen intent
AlarmReceiver was calling startActivity() directly, which Android 10+
blocks from background. Now delegates to AlarmRingService which uses a
foreground notification with full-screen intent. Removed duplicate
sound/vibration from AlarmActivity (service owns playback). Removed
all vibration code and VIBRATE permission.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 16:54:37 +01:00
Moritz
327c5c28fe Initial commit: Helios Alarm Clock
Android alarm clock with embedded Ktor HTTP server for remote control.
Features in-app and HTTP API alarm management, full-screen alarm activity
with sound/vibration, DND bypass, boot persistence, and dark Material 3 UI.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 17:47:10 +01:00