@badanamu/bury-point
v0.1.12
Published
The bury point lib for kidsloop web app
Downloads
27
Readme
New Project
A lightweight statistic library for tracking page and client info, custom events, and webrtc stats. Designed to work with axios and webrtc-adapter.
Features
- [x] auto collect page and client info about useragent, current visiting url, etc.
- [x] auto collect webrtc stats from RTCPeerConnection.getStats(), RTCRtpReceiver.getStats(), and RTCRtpSender.getStats()
- [x] provide an api to collect custom business data
Install
axios
and webrtc-adapter
are peerDependencies of thie project in order to aviod duplicated bundled by webpack, so you should also install axios
and webrtc-adapter
as your your project's dependencies.
npm install axios webrtc-adapter @badanamu/bury-point -S
Since now our backend has not release to production env, you can only install the alpha version until our backend release to prod env
npm install axios webrtc-adapter @badanamu/bury-point@alpha -S
Usage
- Initailization: you shoud provide the
appId
which is the identity of your website or mobile app , and should be defined by the production manager.
import BuryPoint from '@badanamu/bury-point'
const burypoint = new BuryPoint({ appId: 'xxx' })
- send custom business data
burypoint.log({ /* any business data */ })
API
The core BuryPoint
API is exposed once the library is initialized with configuration.
Configuration
- [config.appId]
string
- TheappId
of your website or mobile app for statistics - [config.webrtcLogInterval] (option)
number
- The interval miliseconds of logging webrtc stats,default
is 10s
new BuryPoint({ appId: 'xxx', webrtcLogInterval: 10 * 1000 })
burypoint.log
collect custom business data
Arguments
- data
object
- Custom business data object.
burypoint.log({ /* any business data */ })
Contributing
npm start
Runs the app in the development mode. Open http://localhost:8080 to view it in the browser.
The page will reload if you make edits. You will also see any lint errors in the console.
npm run build
Builds a static copy of your site to the build/
folder.
Your app is ready to be deployed!
For the best production performance: Add a build bundler plugin like "@snowpack/plugin-webpack" or "@snowpack/plugin-parcel" to your snowpack.config.json
config file.
Q: What about Eject?
No eject needed! Snowpack guarantees zero lock-in, and CSA strives for the same.