Keep Alive vs PAIesque
Side-by-side comparison of two open source alternatives
Keep Alive
Keep Alive will send a custom message via SMS to one or more people if you haven't used your device in a given period of time. Intended to be used as a failsafe for those living alone in case of an accident or other emergency. Once the settings are configured, no further interaction is required. - 100% Device-based, no cloud services or accounts required - Free with no ads or trackers - Open Source (https://github.com/keepalivedev/KeepAlive) - Minimal Battery Usage - Multiple SMS Recipients - Custom Alert Message - Optional: Include Location Information in SMS - Optional: Place a phone call with speakerphone enabled - Optional: Send an HTTP request to a custom URL Requirements Keep Alive requires that your device has an active cellular plan. WiFi calling and messaging will be used if the device supports it. How it Works Keep Alive uses either your device's lock screen or another app(s) to detect activity. If your device hasn't been lock or unlocked for a set period of time, or if you haven't accessed the selected app(s), you will be prompted with an 'Are you there?' notification. If this notification is not acknowledged an Alert will be triggered. Based on the configured Emergency Contact Settings, one or more SMS messages and/or a phone call will be placed to notify others that you may be in need of assistance. WARNING: If your device restarts, Keep Alive will not be able to check for recent activity until the screen is unlocked. On Android 7.0+, Keep Alive can still send an alert before the screen is unlocked but must assume you have been inactive based on its last saved state. On older Android versions, Keep Alive cannot run at all until the screen is unlocked and alerts will not be sent. Main Settings - Monitoring Method - Choose between using the lock screen or another app(s) to detect activity. If using another app(s), you will be prompted to select the app(s) to monitor. - Hours of Inactivity Before Prompt - how many hours since your phone was last locked or unlocked before you are prompted with an 'Are you there?' notification. Defaults to 12 hours - Minutes to Wait - if the prompt is not acknowledged within this time, an Alert will be sent based on the configured emergency contact settings. Defaults to 60 minutes - Rest Period Time Range - a range of time during which inactivity will not be counted. For example, with 'Hours of Inactivity' set at 6 hours and a Rest Period of 22:00 – 6:00, if the device is last used at 18:00, the 'Are you there?' check would not be sent until 8:00. Note that an alert can still be sent during a rest period if the 'Are you there?' check was sent BEFORE the start of a rest period. - Auto-Restart Monitoring After Alert - If enabled, monitoring will be automatically restarted after an Alert is sent. - Alert Webhook - Configure an HTTP request to be sent when an Alert is triggered Emergency Contact Settings - Phone Call Number (Optional) - when an Alert is triggered a phone call will be placed to this number with speakerphone enabled One or more SMS recipients can be configured with: - Phone Number - the phone number to send the Alert SMS to - Alert Message - the message that will be sent when an Alert is triggered - Include Location - if enabled, your location will be included in a second SMS Privacy/Data Collection No data is collected other than the configured settings and nothing is shared with the developers or any 3rd parties. The only data transmitted is to the configured emergency contacts. Disclaimer - Not responsible for SMS or phone call charges incurred by the use of the Keep Alive app - The operation of the Keep Alive app is dependent on the device, software, and network connectivity. The developers are not responsible for any failure due to device malfunctions, software incompatibilities, or network issues.
PAIesque
PAIesque helps athletes and fitness enthusiasts monitor their training through a simple three-step logic: 1. Measure training impulse (TRIMP) — The faster and longer your heart beats, the higher your daily score. 2. Analyze patterns over time — Track how your TRIMP accumulates and distributes 3. Monitor your body's response — Compare how your body reacts to training load PAIesque is different from commercial fitness apps (e.g. Garmin, Whoop, Polar). Every metric comes from published, peer-reviewed research with transparent methods that can be calculated from heart rate data alone. The app only includes metrics we can verify and reproduce from first principles — no proprietary black boxes, no undisclosed algorithms. And, all your data stays on your device. 1. TRIMP: • Banister TRIMP — The original exponential model with sex-specific coefficients (a=0.64/0.86, b=1.92/1.67) [Banister, 1991; Morton et al., 1990] • iTRIMP — Individualized TRIMP with customizable b coefficient (1.5-4.0) [Stagno et al., 2007; Akubat et al., 2012] • LT-TRIMP — Lactate Threshold-based model with β coefficient (0.04-0.11) and smooth transition at LT [Cheng et al., 1992; Mader et al., 1976; Gaesser and Poole, 1986] • PAI-esque — PAI-inspired metric using EWMA (not the official commercial algorithm) [Nes et al., 2017; Kieffer et al., 2021] 2. Patterns over time: • Intensity zones — Time and TRIMP spent in low/moderate/high zones (polarized training model) [Seiler and Tønnessen, 2009; Stöggl and Sperlich, 2014] • EWMA — Exponentially Weighted Moving Average for rolling loads (more sensitive than simple averages) • ACWR — Acute:Chronic Workload Ratio for injury risk monitoring (0.8-1.3 = sweet spot) [Murray et al., 2017; Griffin et al., 2021; Gabbett, 2016] • Polarized Training Score — 0-100 measure of how closely your distribution matches your targets 3. Body's response: • Resting Heart Rate (RHR) — Calculated from your defined sleep window (adaptive percentile: 5th-15th) • Heart Rate Variability (HRV) — Daily RMSSD averages during sleep [Task Force, 1996; Plews et al., 2013; Buchheit, 2014] • EWMA trends — Exponentially weighted moving averages for both RHR and HRV (acute and chronic windows) • Combined interpretation — RHR ↓ + HRV ↑ = positive adaptation; RHR ↑ + HRV ↓ = possible fatigue Data Management: • CSV export/import • Complete backup/restore (db) • All data stays on your device — no accounts, no cloud uploads, no tracking Creative Use Cases: • Coach analyzing athletes — Import athlete exports, analyze charts, provide feedback • Research analysis — Export CSV files for custom analysis in R, Python, or spreadsheets • Switch between athletes — Use "Delete All Data" + CSV import to analyze multiple individuals Requirements: • Google Health Connect installed on your device • Heart rate (and HRV) data in Health Connect from your wearable device (Gadgetbridge, Garmin, Polar, Samsung, etc.) • Android 8.0 (API 26) or higher Note on PAI: Our PAI-esque implementation is NOT the official commercial PAI® algorithm (which is proprietary). It uses EWMA and scaled TRIMP values to provide a similar intensity-weighted weekly score. The 100 PAI target remains the evidence-based health outcome from the HUNT Study research.
| Feature | Keep Alive | PAIesque |
|---|---|---|
| License | Apache-2.0 | MIT |
| Install sources | F-DroidGitHub | F-Droid |
| Categories | ProductivitySMSFitnessMessaging | ProductivityFitnessMessaging |
| Features | Ad-FreeOpen SourceNo Tracking | Ad-FreeOpen SourceNo Tracking |
| Platforms | Android | Android |
| Website | ||
| Source code |