Skip to content

Repository files navigation

WebBlackbox

WebBlackbox

A flight recorder and time-travel debugger for web applications.
Always recording. So when something goes wrong, you know exactly what happened — and why.

CInpm versionLicenseChrome ExtensionHosted PlayerTypeScript


WebBlackbox records what happened inside your web app, packages it into a portable .webblackbox archive, and lets you replay the session later with timeline, screenshots, network, console, storage, DOM, and performance context intact.

If you already have an archive, open it in the hosted Player:

https://webllm.github.io/webblackbox/

Demo:

video.mp4

Why WebBlackbox

  • Record user interactions, navigation, console output, runtime errors, network traffic, storage activity, screenshots, and performance signals in one archive.
  • Choose between lite capture for lower page-thread overhead and full capture for CDP-backed debugging detail.
  • Export encrypted, portable .webblackbox archives for offline replay and team handoff.
  • Replay sessions with a rich Player UI and generate curl, fetch, HAR, Playwright, and bug-report artifacts.
  • Connect archives to AI workflows through the MCP server.

Choose Your Path

GoalUseDocs
Capture sessions in Chrome@webblackbox/extensionapps/extension/README.md
Replay and inspect archivesHosted Playerhttps://webllm.github.io/webblackbox/
Embed lite capture in your appwebblackboxpackages/webblackbox/README.md
Build archive analysis tooling@webblackbox/player-sdkpackages/player-sdk/README.md
Analyze archives with an AI assistant@webblackbox/mcp-serverapps/mcp-server/README.md
Self-host share links@webblackbox/share-serverapps/share-server/README.md

Quick Start

Replay an Existing Archive

  1. Open the hosted Player: https://webllm.github.io/webblackbox/
  2. Click Load Archive.
  3. Select a .webblackbox file or a compatible ZIP export.
  4. Inspect the timeline, screenshots, network waterfall, console, storage, and generated artifacts.

Record with the Chrome Extension

  1. Download the latest extension package from Chrome Web Store or GitHub Releases.
  2. Unzip the downloaded Chrome extension package locally.
  3. Open chrome://extensions/.
  4. Enable Developer mode.
  5. Click Load unpacked and select the extracted extension directory.
  6. Click the WebBlackbox toolbar icon and choose Start Lite or Start Full.
  7. Reproduce the issue, then export a .webblackbox archive.
  8. Open the archive in the hosted Player.

Embed Lite Capture in Your App

npm install webblackbox
import{WebBlackboxLiteSdk}from"webblackbox";constsdk=newWebBlackboxLiteSdk();awaitsdk.start();

Full SDK details are in packages/webblackbox/README.md.

What It Captures

WebBlackbox currently records 57 event types across 13 categories, including:

  • User input and navigation
  • Console logs and runtime errors
  • Network requests, responses, failures, redirects, WebSocket, and SSE events
  • DOM mutations and snapshots
  • Screenshots and viewport changes
  • Cookies, localStorage, sessionStorage, IndexedDB, Cache, and service worker lifecycle
  • Web Vitals, long tasks, traces, CPU profiles, and heap snapshots

For the full event schema, defaults, and message types, see packages/protocol/README.md.

Archive Format

Sessions are exported as .webblackbox ZIP archives containing:

  • manifest.json with export metadata and encryption info
  • chunked NDJSON event streams
  • time/request/text indexes
  • content-addressed blobs for screenshots, DOM snapshots, and captured bodies
  • integrity hashes for verification

Archives can be encrypted with AES-GCM and PBKDF2-derived keys while keeping the manifest readable.

Documentation

Contributing

If you want to work on the monorepo itself, start with CONTRIBUTING.md.

License

MIT © Web LLM

About

A Web Blackbox

Resources

Contributing

Security policy

Stars

14 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages