Table of Contents
- Installation
- System Requirements
- macOS
- Android
- iOS (Experimental, Build-from-Source)
- Building from Source
- Getting Started: First Launch
- [[Features|Features & Overview]]
- [[Strap Support and Pairing]]
- Offline
- Next Steps
- If noop.fans is blocked where you are
Installation
NOOP is available for macOS (pre-built), Android (pre-built APK), and iOS (build-from-source community port). Everything runs fully offline on your device — nothing leaves your machine.
System Requirements
| Platform | OS Version | Notes |
|---|---|---|
| macOS | 13.0 (Ventura) or newer | Intel or Apple Silicon. Requires Bluetooth. |
| Android | 8.0 (API 26) or newer | Requires Bluetooth LE. Physical device recommended (emulators have no BLE radio). |
| iOS | 16.0 or newer | Build-from-source only — see iOS below. Requires Bluetooth. |
macOS
Download
Grab the pre-built NOOP.app from Releases.
First Launch — Gatekeeper & Notarization
NOOP is not notarized by Apple. Notarization requires a paid Apple Developer ID tied to a real identity, which doesn't fit an anonymous, free project. The app is sandboxed and code-signed, the full source is here to inspect, but because it isn't notarized, macOS Gatekeeper will block it on first open. You may see a message saying the app is "damaged" or from an "unverified developer" — that's just the download quarantine flag, not real damage.
To open NOOP, pick one of these once:
Option 1: Terminal (most reliable)
- Drag
NOOP.appto your Applications folder. - Run this in Terminal (it removes the quarantine flag):
xattr -dr com.apple.quarantine /Applications/NOOP.app - Open NOOP normally (e.g., from Spotlight or Applications).
Option 2: System Settings (no Terminal needed)
- Try to open NOOP — it'll be blocked by Gatekeeper.
- Open System Settings → Privacy & Security and scroll to the bottom.
- You'll see NOOP with an "Open Anyway" button next to it. Click it.
- (On macOS 14 and earlier, you can also right-click the app and select Open.)
Once you've done this once, the app opens normally from then on.
Install Location
You can run the app from anywhere, but it's conventional to keep it in /Applications/ for easy access.
No Installation Required
Unlike typical installers, NOOP is a self-contained bundle — just download and run. There's no separate "installation" step, installer, or uninstaller. To remove it, drag NOOP.app to the Trash.
Android
Download Pre-built APK
NOOP ships two APKs from Releases:
| File | Purpose | Notes |
|---|---|---|
NOOP-full.apk |
The main app. Install this. | minSdk 26 (Android 8+); works with or without a strap for exploring your data. |
NOOP-demo.apk (optional) |
Demo APK with preloaded sample data. | Installs alongside the full app. Great for exploring the UI without a strap or importing data. Same app ID prefix, so they coexist. |
Installation
-
Enable "Install unknown apps" on your device:
- Settings → Apps & notifications → Advanced → Special app permissions → Install unknown apps (or similar, depending on your Android version).
- Grant your web browser or file manager permission to install apps.
-
Download and open the APK (or sideload it via
adb):# On your computer with ADB: adb install NOOP-full.apk -
Open the installed app from your app drawer (search for NOOP).
Permissions
NOOP asks for Bluetooth permissions on first run (API 31+, i.e. Android 12+). On older versions, Bluetooth is install-time. The app declares no INTERNET permission by design — nothing ever leaves your device.
| Permission | Why |
|---|---|
BLUETOOTH_SCAN |
Scan for your strap over Bluetooth. |
BLUETOOTH_CONNECT |
Connect to and communicate with your strap. |
FOREGROUND_SERVICE |
Keep collecting data while the app is backgrounded. |
iOS (Experimental, Build-from-Source)
iOS does not have a download. There is no iOS app in Releases. iOS has no anonymous app distribution path — both the App Store and TestFlight require a real Apple Developer identity — so shipping an official iOS build would compromise NOOP's anonymity.
Instead, there is an experimental, community-maintained iOS port (PR #42) that you can build yourself in Xcode. It is not officially maintained, and the build instructions live in that PR and in docs/IOS.md.
Why build from source?
- Anonymity: No account tied to the app.
- Full control: You build it yourself, inspect the source, and install it on your device.
- All packages already support iOS: The core logic (
WhoopProtocol,WhoopStore,StrandAnalytics,StrandImport,StrandDesign) all declare.iOS(.v16)and compile unchanged.
Quick summary
-
Clone the repo:
git clone https://github.com/NoopApp/noop.git cd noop -
Check out the iOS PR (PR #42) or follow the detailed steps in
docs/IOS.md. -
Open the Xcode project and build the iOS target for your device.
For full instructions, hardware notes, and how to set up HealthKit two-way sync (read from + write to Apple Health), see docs/IOS.md.
Building from Source
Prefer to build NOOP yourself instead of using the pre-built app? See docs/BUILD.md for:
- macOS: Generating the Xcode project with XcodeGen, building, and the ad-hoc signing process.
- Android: Prerequisites, Gradle setup, and APK assembly.
- iOS: The experimental community port.
Getting Started: First Launch
Once installed, here's what to expect:
Pairing a WHOOP Strap
NOOP reads data directly from your strap over Bluetooth Low Energy — no WHOOP account needed. To pair:
-
Live Heart Rate (works immediately) — this rides the standard Bluetooth heart-rate profile and streams even without a full bond.
-
Full bond (for deeper features like recovery, strain, sleep, history offload) — the strap holds an encrypted bond with only one device at a time. If it's bonded to the official WHOOP app on your phone, NOOP can't bond until you free it:
- Close or fully quit the official WHOOP app on your phone (or turn Bluetooth off on that phone).
- Put your strap in pairing mode.
- In NOOP, go to Live → Select your strap type → Scan & Connect.
Without a Strap
You can explore NOOP's full UI without a strap:
- macOS & Android: Import a WHOOP CSV export or Apple Health export via Data Sources. Your full history loads in about a minute.
- Android demo APK: The demo app (
NOOP-demo.apk) comes preloaded with sample data — no import needed, just explore.
What Fills In When
- Live heart rate — shows the moment the strap connects.
- Strain & sleep — appear after you've worn the strap and it syncs (the last ~14 days offload automatically).
- Recovery — needs a few nights to learn your personal baseline, then refines each night.
- In a hurry? Import your WHOOP export or Apple Health data and your history fills in immediately.
Features
The app is fully featured on macOS and Android. See Features for the complete breakdown: Today, Live, Sleep, Trends, Workouts, Insights, Compare, Health, the AI Coach (optional, off-device if you bring your own API key), and more.
Strap Support and Pairing
For detailed information on WHOOP 4.0 vs. 5.0/MG support, pairing troubleshooting, and the bond-handling quirks (especially on 5.0), see Strap Support and Pairing.
Offline
Everything runs on your device, offline. The only feature that ever uses the network is the optional AI Coach, and only if you bring your own OpenAI or Anthropic API key — and it sends only a brief text summary of your recent metrics, never raw data or identifiers.
See Privacy and Security for the full privacy story.
Next Steps
- Read the basics: See How NOOP Works to understand what NOOP computes and how.
- Troubleshoot connection issues: Check Strap Support and Pairing.
- Get in touch: Questions or bugs? Email thenoopapp@gmail.com.
- Support the project: Donations are optional but deeply appreciated. See Donations or the in-app Support screen for crypto addresses.
If noop.fans is blocked where you are
As a fallback, the forge is also reachable as a Tor onion service (open in Tor Browser):
http://bhxixx54g7u2yhbwl6v37aiarjbydnbj4ke5vmc72bulxlbj3qlexsad.onion
You can browse, clone and download over it exactly like the normal site — handy if the domain is ever filtered on your network.
Home
Get started
Tutorials
- Tracking a Workout
- Recovery, Strain & Readiness
- Automations
- Breathe & Intervals
- Importing History
- AI Coach
- Widget & Notifications
- Reading Your Sleep
- Explore & Compare
Reference
Project
NOOP is an independent, unofficial, non-commercial interoperability project — not affiliated with, endorsed by, or sponsored by WHOOP, Inc. "WHOOP" is a trademark of WHOOP, Inc., used nominatively. Works only with a device you own; not a medical device; every metric is an approximation, not medical advice. · Privacy and Security · Donations · Releases