getsentry / rrweb

record and replay the web
https://www.rrweb.io/
Other
9 stars 4 forks source link
tag-production

Sentry

Sentry rrweb Fork

This repo is a fork of rrweb. The purpose is to apply patches and bugfixes to rrweb and release Sentry-internal packages with our patches included. All credits and attribution for rrweb go to the original creators of the library and all its contributors.

From this monorepo, Sentry maintains and publishes the following NPM packages:

Major changes from upstream branch

Apart from some small fixes/changes in this fork, these are the main relevant changes compared to the upstream rrweb repository:

rrweb

Check out the original rrweb Repo

rrweb.io

rrweb

The rrweb documentary (in Chinese, with English subtitles)

Join the chat at slack Twitter Follow total gzip size recorder gzip size

中文文档

I have joined Github Sponsors and highly appreciate your sponsorship.

rrweb refers to 'record and replay the web', which is a tool for recording and replaying users' interactions on the web.

Guide

📚 Read the rrweb guide here. 📚

🍳 Recipes 🍳

📺 Presentation: Hacking the browser to digital twin your users 📺

Project Structure

rrweb is mainly composed of 3 parts:

Roadmap

Internal Design

Contribute Guide

Since we want the record and replay sides to share a strongly typed data structure, rrweb is developed with typescript which provides stronger type support.

Typescript handbook

  1. Fork this repository.
  2. Run yarn install in the root to install required dependencies for all sub-packages (note: npm install is not recommended).
  3. Run yarn dev in the root to get auto-building for all the sub-packages whenever you modify anything.
  4. Navigate to one of the sub-packages (in the packages folder) where you'd like to make a change.
  5. Patch the code and run yarn test to run the tests, make sure they pass before you commit anything. Add test cases in order to avoid future regression.
  6. If tests are failing, but the change in output is desirable, run yarn test:update and carefully commit the changes in test output.
  7. Push the code and create a pull request.

Protip: You can run yarn test in the root folder to run all the tests.

In addition to adding integration tests and unit tests, rrweb also provides a REPL testing tool.

Using the REPL tool

Sponsors

Become a sponsor and get your logo on our README on Github with a link to your site.

Gold Sponsors 🥇

sponsor sponsor sponsor sponsor sponsor sponsor sponsor

Silver Sponsors 🥈

sponsor sponsor sponsor sponsor sponsor sponsor sponsor

Bronze Sponsors 🥉

sponsor sponsor sponsor sponsor sponsor sponsor sponsor sponsor sponsor

Backers

Core Team Members


Yuyz0112


Yun Feng


eoghanmurray


Juice10
open for rrweb consulting

Who's using rrweb?

The first ever UX automation tool
Smart screen recording for SaaS Remote Access & Co-Browsing The open source, fullstack Monitoring Platform. Comprehensive data analytics platform that empowers businesses to gain valuable insights and make data-driven decisions.
Intercept, Modify, Record & Replay HTTP Requests. In-app bug reporting & customer feedback platform. Self-hosted website analytics with heatmaps and session recordings. Interactive product demos for small marketing teams