Self-hosted · Open source

Bug reports that actually make sense

Capture DOM, console, network & interactions as a structured, replayable recording — not a video. Self-hosted, no vendor lock-in.

What each recording captures

DOM Replay

Pixel-perfect interactive replay using rrweb. Not a video — you can inspect elements, scroll, and resize.

Console Logs

Every log, warning, error and uncaught exception with precise timestamps synced to the replay timeline.

Network Requests

URL, method, status, headers, duration and response bodies. See exactly what the API returned when the bug happened.

User Interactions

Clicks, inputs, and navigations logged in order. Jump to any interaction on the timeline to see what the user did.

Built for developers

Timestamped Comments

Add comments at any point in the timeline. Threaded replies with email notifications to keep the team in sync.

Playwright Export

Generate a ready-to-run .spec.ts file from any recording. Reproduce bugs in CI automatically.

DOM Inspector

Hover over any element in the replay to inspect attributes and computed styles, like DevTools frozen in time.

Browser Extension

Chrome and Firefox extensions for full-featured recording including multi-page navigations.

Embed SDK

One script tag to add a "Record Bug" button to any site. No installation required for your users.

Your Infrastructure

SQLite + local disk or any S3-compatible storage. No external dependencies, runs anywhere with Docker.

Setup guide

Your server is running. Here's how to start recording bugs.

1

Create an account

Register to create your first workspace and application.

Create account →
2

Create a workspace & application

After signing in, create a workspace (e.g. your team name) then add an application inside it (e.g. "Frontend", "Dashboard").

Each application gets its own reel feed. The endpoint URL for the extension/SDK will be generated in the next step.

3

Generate an API token

Open your application and go to the API Tokens tab. Create a new token — an endpoint URL is generated that contains everything the extension and SDK need to upload recordings.

Application → API Tokens → Create token

Copy the endpoint URL for your application — it's only shown once.

Generated URL format:

https://your-server/api/ingest?token={token}
4

Start recording

Option A Embed SDK (one script tag)

Add this to any page with the endpoint URL from step 3. A floating "Record Bug" button will appear — recordings are uploaded automatically.

<script
  src="https://your-bugreel-server/sdk/recorder.js"
  data-endpoint="YOUR_ENDPOINT_URL"
></script>

Option B Browser Extension

For full-featured recording with multi-page navigation support (Chrome & Firefox). Paste the endpoint URL from step 3 into the extension:

Open the extension popup → paste your endpoint URL

https://your-server/api/ingest?token={token}

The URL contains the server address and token — no other configuration needed.

5

View & share recordings

Recordings appear in your application's reel feed. Click any reel to open the interactive viewer with synchronized DOM replay, console, network, and interaction panels. Share the link with your team — add timestamped comments for context.