Marked up on the page
Reporters open the widget, capture the screen, and draw on the broken UI. The screenshot and annotation stay attached to the bug.
Embeddable bug reporting
Drop a widget on your site. Reporters send the screenshot, the markup, the session replay, and the logs. Your team triages every report in one dashboard.
The widget and the dashboard are one product. Capture happens on the site. Triage happens here.
Reporters open the widget, capture the screen, and draw on the broken UI. The screenshot and annotation stay attached to the bug.
Each report keeps the session replay, recent console lines, network activity, the page URL, and the environment it was captured in.
Filter by status and priority, assign a teammate, and comment in public or internal threads. Mention someone with @.
Add one script tag, or import the SDK. The workspace API key ties reports to your dashboard.
A visitor or teammate annotates the page and submits. Guest and member forms follow the fields you mark visible or required.
The bug lands in the dashboard with its screenshot, replay, and diagnostics already on the ticket.
Point widget.js at this app and pass your workspace API key. The same package is available as @bug-tracker/widget if you would rather call open() from your own UI.
<script
src="https://www.bugtrap.app/widget.js"
data-api-key="YOUR_WORKSPACE_API_KEY"
data-endpoint="https://www.bugtrap.app/api/reports"
></script>