Everything between the bug and the fix
Everything BugBoard does, built for one developer or a few: bug tracking and analytics that end in a managed task, not another unread alert.
Report bugs with one call
Replace the console.log you'd forget about with bugboard.critical(), bugboard.major(), or bugboard.minor(). The severity you choose is the severity on the board.
- SDKs for JavaScript/TypeScript and PHP
- Stack traces, tags, and custom context included
- Severity levels map straight to board labels
A board you already know how to use
Columns, cards, drag-and-drop. Mix reported bugs with regular tasks. It's a full project management board, not just a bug inbox.
- A board that mirrors your workflow
- Priorities and severities at a glance
- Regular tasks and captured bugs side by side
Seal sensitive payloads in flight
Crash reports often carry emails, tokens, and request bodies. Opt in per project and the SDK seals those payloads with public-key cryptography before they leave the client, so only your BugBoard server can read them.
- Opt in per project and encrypt only the payloads you choose
- X25519 sealed box (libsodium); the public key is safe to embed in client code
- No shared secret in the browser, since a fresh ephemeral key seals every report
- Opaque in the network tab, at proxies, and in logs
- Decrypted only on the server to build your cards
- Mix encrypted and plaintext clients in the same project
Your payload
{
"message": "PaymentError: declined",
"user": {
"email": "user@acme.com"
},
"context": {
"card_last4": "4242"
}
}On the wire
{
"encrypted": {
"v": 1,
"alg": "x25519-sealedbox",
"key_id": "bbek_7Qe…",
"ciphertext": "u8F2b1pK…9zR0opaque…Xw=="
}
}Deduplication and auto-escalation
BugBoard groups a report onto an existing card when its title or description matches exactly. Repeats increment a counter instead of creating a new card; crossing your threshold escalates it and notifies the team.
Five hundred repeats, one card. The counter does the shouting.
Severity climbs automatically as occurrences cross your thresholds.
One escalation notification instead of an inbox full of duplicates.
Rules that triage while you sleep
Set the thresholds once per project. From then on the board keeps itself honest - bugs that prove they matter climb, bugs that go quiet settle back down, and bugs that come back after a fix never stay closed.
- Rules on severity and priority, per project
- Filter by current level, so rules only touch what you mean
- Stale bugs auto-archive or auto-delete on your schedule
- Every automatic move is logged and notified
Auto-escalation
severity · minor → critical at ×50
A bug that keeps firing climbs on its own. Cross the threshold you set and the card moves up, marks itself as automatically escalated, and pings the team.
De-escalation
severity · critical → moderate after 14d
The mirror image. A critical nobody has seen in two weeks settles back down, so your board reflects what is breaking now, not what broke last month.
Reopen rules
done → to do on the next occurrence
A bug you fixed that comes back never sits quietly in Done. It jumps to an active column, one severity higher, and the team hears about it.
Spike detection
alert when today breaks the trend
A sudden burst of occurrences is its own signal, separate from any threshold. Turn it on when you want to know the moment something goes wrong.
Bring in a teammate when you need one
Most of the time it is just you. When it isn't, invite by email, control what each person can see and change, and decide exactly which events deserve a notification.
- Email invitations with role-based access
- Eleven lifecycle events, each toggled on its own
- Email, Slack, and Discord - pick per project
- Ownership transfer when teams change
PaymentError escalated to Critical
crossed 25 occurrences · just now
Amara assigned you “TypeError: user is undefined”
Checkout project · 12m ago
New comment: “repro steps attached, see video”
from Dev · 1h ago
Three dials, so nobody mutes the whole product
Most tools give you one switch and a choice between noise and silence. Control lives at three levels here, and the one closest to you wins.
Choose the events
Eleven lifecycle events, each with its own switch, routed to email, Slack, or Discord. Loud ones like every task update ship off by default.
Everyone tunes their own
Teammates opt out of what they do not need, per project, without touching anyone else’s setup or the project defaults.
Mute one noisy bug
One known-flaky error should not cost you the whole project’s alerts. Mute the card and leave everything else running.
Muting a card silences the routine chatter but still lets the high-signal events through - a reopen, an escalation, or a spike will always reach you. Silence a bug, not an emergency.
Small features that add up
Comments
Discuss a crash where the work happens, right on its card.
Attachments
Drop logs, screenshots, and repro files onto any task.
Assignment tracking
Every card has an owner, so nothing falls between chairs.
Roles & access
Owners, members, and viewers, scoped per project, not per org.
API keys
Scoped per project, rotate them in one click.
Activity logs
A full audit trail of who did what, and when.
Project insights
Trends on bug volume, resolution time, and throughput.
Pinned projects
Keep the project on fire one click away.
Archiving
Shipped and stable? Archive the project, keep the history.
See it with your own bugs
The Hobby plan is free forever: 2 projects, full feature set.