0.3.0
0.3.0 closes the gap between what's happening and what you know. Monitoring tools are full of quiet blind spots. Blank while a monitor warms up. Silent while your certificate runs out. Rounding 99.9942% to something prettier. Locked behind one login. This release closes them: expiry warnings weeks before the browser warning, real uptime from minute one, four decimals of truth, a CLI that answers in one keystroke, and your whole team on one source of truth.
What's new in 0.3.0
- Bring your team. Multiple users with admin and viewer roles. Mint a single-use invite link from the new Team settings page, valid for 7 days, and the recipient lands signed in with the role you chose. Admins run the system, viewers see everything without the keys. Ships across dashboard, API, and
pulsectl userscommands, with full OpenAPI coverage. - Catch expiry before your users do. Pulse now watches the two clocks every site is racing against, domain registration and TLS certificate. An amber chip appears on the monitor the moment either enters its warning window, and a new Domain & Certificate card shows the expiry dates, issuer, registrar, and how each fact was verified, the certificate by TLS probe and the domain by RDAP. Facts are shared assets deduplicated by root domain, so fifty monitors on one domain cost one lookup, and they refresh every 10 minutes.
- Content checks. Monitors can assert the response body contains expected text, with a distinct content mismatch failure state. A page that answers 200 with the wrong content is now a caught failure, not a silent one.
- A CLI you can live in. Type
pulsectland get a full interactive menu covering every feature, monitors through diagnostics, walkable with arrow keys. The Dependencies menu lists what you have installed first, and browsing the catalog flows straight into adding. Scripts keep the flag-driven interface and clean TSV, humans get a menu. - Tables that hold their shape. Every CLI table stays aligned and never wraps, whatever the terminal width. Uptime shows four decimals between 99% and 99.9999% with trailing zeros trimmed, and monitors still collecting their first day show real observed uptime instead of a blank.
- A timeline that only shows what happened. Dependency history no longer paints unknown state over periods with real evidence, so the dark squares that could appear after installing a provider are gone.
- Hardened in public. Custom status page CSS is served as a real stylesheet behind a nonce-based Content Security Policy and can no longer inject markup. Token revocation is race free, Next.js moves to 16.2.11, and a crash-on-304 in dependency polling is fixed. Existing installs upgrade in place, migrations run on deploy.