Silently captures errors, network failures, console logs, performance bottlenecks, and memory leaks. Zero config. Zero dependencies. It just watches.
$ npm install ghostbug
Eight collectors haunt your app in the background. When something breaks, you already have everything.
Drop it in, summon it. ghostbug silently wires every collector and conjures a floating widget.
import ghostbug from 'ghostbug'; // Summon the ghost — everything is wired up ghostbug.init({ widget: { position: 'bottom-right' }, collectors: { errors: true, console: true, network: true, clicks: true, performance: true, memory: true, }, }); // Attach user context to every haunting ghostbug.setUser({ id: 'user-42', plan: 'pro' }); // Listen for ghosts in real-time ghostbug.onBug((report) => { console.log('Bug caught:', report.type, report.payload); }); // Exorcise when you need it ghostbug.download(); // JSON file ghostbug.toMarkdown(); // Paste into GitHub issue
A bug occurs. ghostbug catches it — with full context, breadcrumb trail, and zero config. All in real-time.
Welcome back, User #42
Loading user data from API...
ghostbug silently watches, captures, deduplicates, and serves — all without you lifting a finger.
init() and the ghost awakensEvery other tool wants you to sign up, pay, and send your data to their servers. ghostbug keeps everything local.
| ghostbug | Sentry | LogRocket | Bugsnag | TrackJS | |
|---|---|---|---|---|---|
| Setup | ghostbug.init() | Account + DSN + config | Account + SDK + config | Account + API key | Account + token |
| Server required | ✕ No | Yes (SaaS) | Yes (SaaS) | Yes (SaaS) | Yes (SaaS) |
| Bundle size | ~7KB gz | ~70KB+ | ~100KB+ | ~30KB+ | ~10KB |
| Dependencies | 0 | Many | Many | Several | Few |
| Data stays local | ✓ Yes | ✕ Sent to Sentry | ✕ Sent to LogRocket | ✕ Sent to Bugsnag | ✕ Sent to TrackJS |
| Pricing | Free forever | Free tier / Paid | Paid | Paid | Paid |
| Built-in widget | ✓ Yes | ✕ Dashboard only | ✕ Dashboard only | ✕ Dashboard only | ✕ Dashboard only |
| Export to GitHub/Jira | ✓ Markdown + JSON | Integration required | Integration required | Integration required | ✕ |
Works with any framework — React, Next.js, Vue, Svelte, or plain HTML.
Add ghostbug to your project in seconds. Your future self will thank you.