
App Platform health, Droplet performance, and month-to-date spend at a glance on your iPhone, without opening a dashboard.
When you run side projects or a small SaaS on App Platform, the question is simple: is it working right now? PulseKit puts CPU utilization and memory percentage on your home screen, updating on demand. Container restarts are summed across the last 24 hours, so a crash-loop shows as a count you can act on rather than a spike that scrolled past. Bandwidth shows the previous completed day's total, stable rather than the in-progress figure.
Droplet monitoring covers CPU, memory, root disk usage, 1-minute load average, and public outbound bandwidth. Each metric has a trend chart, so you can tell whether a high CPU reading is a transient spike or a sustained climb.
The Cost module puts month-to-date usage directly on your home screen. The figure comes from DigitalOcean's balance API, the same authoritative number shown in the billing console. A daily spend chart aggregates your billing history by UTC day, so you can spot a runaway resource before the end-of-month invoice lands.
App Performance, Droplet Performance, and Cost connect through a single Personal Access Token. Each module runs as a separate widget, so you can pin App CPU next to Droplet load and your MTD spend on the same home screen page. Metrics are fetched on demand with 30-day chart retention, so trend history stays populated even when you check in infrequently.
Generate a Personal Access Token at cloud.digitalocean.com/account/api/tokens. Use Custom Scopes with these read-only permissions: account:read, app:read, droplet:read, monitoring:read, and billing:read. Set an expiration; one year is a good default. Copy the token and paste it here. Read-only scopes mean PulseKit can never modify or delete your DigitalOcean resources.
Security
Your DigitalOcean API key is sealed on this device with AES-256-GCM before it ever leaves your iPhone. Only your device holds the unwrap secret, stored in the iOS Keychain. The PulseKit backend wraps that already-encrypted payload again with its STORAGE_SECRET and writes the double-envelope blob to Postgres, so the server never sees your plaintext key at rest. Each fetch request includes a one-time unwrap secret that decrypts the inner envelope only long enough to call DigitalOcean. The key is scoped to this device, can be revoked from PulseKit at any time, and is never written to logs.
Pick the metrics you care about and pin them as widgets.
Track CPU, memory, restarts, and bandwidth for your App Platform apps
Track CPU, memory, disk, load, and bandwidth for your Droplets
Track your DigitalOcean account spend, balance, and daily cost trend
Numbers shown are illustrative — your widgets show your live data.
Running a small SaaS on App Platform means you're always wondering whether the app that went quiet in your inbox is down or just slow. A CPU and restart widget tells you at a glance whether something needs attention before customers complain, without pulling up a browser to check the console.
Self-hosted tools on Droplets accumulate resource pressure quietly. A disk-full crash or sustained memory climb often goes unnoticed until something breaks. Pinning Droplet CPU, memory, and disk percentage to your home screen means you catch the warning signs during a coffee break rather than during an incident.
Cloud bills grow in the background while you're focused on shipping. Putting month-to-date usage on your home screen turns billing from a monthly surprise into a number you check daily. The daily spend chart makes it obvious when a new deployment or forgotten resource started costing more.
PulseKit monitors App Platform applications, Droplets, and account-level billing. For each App Platform app you can track CPU utilization, memory usage, container restarts over 24 hours, and daily outbound bandwidth. For Droplets you get CPU, memory, root disk usage, 1-minute load average, and public outbound bandwidth. The Cost module shows month-to-date usage, balance, and a daily spend trend.
PulseKit fetches DigitalOcean metrics on demand when iOS refreshes your widgets. CPU and memory reflect the latest sample from the DigitalOcean monitoring API. Container restart counts cover the last 24 hours. App bandwidth shows yesterday's completed total. Historical data is retained for 30 days, so trend charts stay populated even if you have not opened PulseKit recently.
Yes. The App Performance module tracks container restart counts for App Platform apps over the last 24 hours. PulseKit sums the restart counter deltas across that window, so if your app restarted three times overnight the widget shows 3, not a raw counter value. A trend chart shows when restarts occurred within the day.
Yes. The Cost module shows month-to-date usage, month-to-date balance, and account balance from DigitalOcean's billing API. These figures match what you see in the DigitalOcean billing dashboard. A daily spend chart built from billing history lets you track whether costs are climbing or holding steady through the month.
Your token is encrypted with AES-256-GCM on device before it leaves your iPhone. The unwrap secret stays in the iOS Keychain, so only your device can decrypt the token. The PulseKit backend stores a double-encrypted envelope and never sees your plaintext key. You can revoke the token from DigitalOcean's token dashboard at any time.
App Performance uses the App Platform monitoring API and tracks metrics for managed containerized applications, including restart counts and daily bandwidth. Droplet Performance connects to the Droplet monitoring API for virtual machine metrics like root disk usage and 1-minute load average. If you run both App Platform apps and Droplets, you can add a widget for each independently.
Yes. Each widget is configured independently. You can add a Droplet Performance widget for your web server, a separate one for a database Droplet, and an App Performance widget for an App Platform app, all on the same home screen. Each widget pulls data for the specific resource you selected when setting it up.

Install PulseKit, paste your credentials, pick a widget.