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.

https://app.example.com/dashboard
Acme App
DashboardProjectsSettings
Projects
+ New
Frontend redesign
3 tasks
API migration
5 tasks
Auth service
7 tasks
Press play to start the recording…
0:00.0 / 0:05.0

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.

GitHub, Linear & Jira Integration

Create issues and tickets directly from recordings. Bidirectional sync — mark a reel as done to close the issue, or close it to mark the reel as done.

Permanent Recording

SDK records continuously in a rolling buffer. When a bug happens, the last N seconds are already captured — no need to reproduce.

Slack, Discord & Mattermost

Webhook notifications for new recordings, comments, and done reels. Works with Slack, Discord, Mattermost, or any HTTP endpoint.

Install

Get bugreel running on your infrastructure in seconds.

Docker

docker run -p 7777:7777 \
  -e NUXT_JWT_SECRET=your-secret \
  -v bugreel-data:/data \
  patatra/bugreel

Available at http://localhost:7777

From source

git clone https://github.com/AnthonySendra/bugreel.git
cd bugreel/app
npm install
NUXT_JWT_SECRET=your-secret npm run dev

Available at http://localhost:7777

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.

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.

bugreel — self-hosted bug recording