openreplay/tracker/tracker
Aspyryan 51496ae5e2
Running buffer slicing when browser is idle (#3050)
* Fixed tracker uploadOfflineRecording

* Make FlushBuffer perform slicing when browser is idle

* Use map function to cast away proxy objects in flushBuffer
2025-03-03 17:01:35 +01:00
..
.yarn ui: fix q controls 2024-11-19 10:36:50 +01:00
scripts tracker: rm unused files 2024-10-18 13:24:53 +02:00
src Running buffer slicing when browser is idle (#3050) 2025-03-03 17:01:35 +01:00
.eslintignore change(tracker): unit tests for tracker 2023-02-06 12:42:18 +01:00
.eslintrc.cjs chore(tracker): update rollup, setup nvmrc conf 2023-10-23 13:18:34 +02:00
.gitignore tracker: rm unused files 2024-10-18 13:24:53 +02:00
.npmignore tracker: rm unused files 2024-10-18 13:24:53 +02:00
.nvmrc chore(tracker): update rollup, setup nvmrc conf 2023-10-23 13:18:34 +02:00
.prettierignore Message protocol update (message size) (#663) 2022-08-22 12:32:48 +02:00
.prettierrc.json Message protocol update (message size) (#663) 2022-08-22 12:32:48 +02:00
.yarnrc.yml ui: fix q controls 2024-11-19 10:36:50 +01:00
CHANGELOG.md tracker: porting 14.x.x patches 2024-11-12 15:14:57 +01:00
jest.config.js fix(tracker): fix test conf 2023-05-31 12:04:11 +02:00
js_errors.txt feat: tracker init 2021-05-03 13:31:55 +02:00
LICENSE MIT license for OpenReplay protocol 2022-08-30 19:04:32 +02:00
package.json tracker: update deps, fix tests, fix default lib for ts 2024-11-18 16:37:02 +01:00
README.md feat(tracker): safety wrap for angular, new performance/lag display system 2023-10-25 12:29:42 +02:00
rollup.config.js tracker: testing tracker constructor options mapper 2024-10-21 17:41:39 +02:00
tsconfig-base.json tracker: update deps, fix tests, fix default lib for ts 2024-11-18 16:37:02 +01:00

OpenReplay Tracker

The main package of the OpenReplay tracker.

Development & Contribution

Please use bun to install and build this library. Any submitted pull request must pass all tests and should have positive test coverage diff %.

Documentation

For launch options and available public methods, refer to the documentation

Installation

npm i @openreplay/tracker

Usage

Initialize the package from your codebase entry point and start the tracker. You must set the projectKey option in the constructor. Its value can can be found in your OpenReplay dashboard under Preferences -> Projects.

import Tracker from '@openreplay/tracker'

const tracker = new Tracker({
  projectKey: YOUR_PROJECT_KEY,
})
tracker
  .start({
    userID: 'Mr.Smith',
    metadata: {
      version: '3.5.0',
      balance: '10M',
      role: 'admin',
    },
  })
  .then((startedSession) => {
    if (startedSession.success) {
      console.log(startedSession)
    }
  })

Then you can use OpenReplay JavaScript API anywhere in your code.

tracker.setUserID('my_user_id')
tracker.setMetadata('env', 'prod')