npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

kbdata-sdk

v1.0.7

Published

数据中台上报数据 sdk

Readme

trackerSDK

数据中台埋点SDK

使用方法如下

依赖安装

npm install kbdata-sdk --save

初始化及注册公共属性

import trackerSDK from 'kbdata-sdk'
// 初始化SDK
window.tr = new trackerSDK({
    appId: 'xxxxxxxxxx',
    serverUrl: 'xxxxxxxxxx',
    showLog: true,
    isZip: true,
    maxEventSendVal: 3,
    maxEventSendTime: 30000,
})

// 注册公共属性 (注册公共属性必须在初始化SDK之后,埋点之前。 一般建议在初始化SDK后,立即注册公共属性)
tr.registerPage({
    userId: 'asdlkfjalkdgjalkgalskd', 
    platform: '游戏平台2',
    platformID: '001',
    source: '',
    agencyId: 'fws', 
    sessionId: '',
    package: '',
})

options 介绍

/**
 * @appId 组织id
 * @serverUrl 接口地址
 * @showLog 是否打印log
 * @isZip 是否压缩上传
 * @maxEventSendVal 最大上报数  最多100
 * @maxEventSendTime 最大轮询时间
 */
export interface DefaultOptons {
    appId: string | undefined,
    serverUrl: string | undefined,
    showLog: boolean,
    isZip: boolean,
    maxEventSendVal: number,
    maxEventSendTime: number,
}

/**
 * @userId 用户ID
 * @platform 平台
 * @platformID 平台id
 * @source 渠道、来源
 * @agencyId 服务商id
 * @sessionId 会话ID
 * @package 包名
 */
export interface registerPageOptons {
    userId: string, 
    platform: string,
    platformID: string,
    source: string,
    agencyId: string, 
    sessionId: string,
    package: string,
}

代码埋点追踪事件

// 点击事件埋点
tr.track('click', {
    gameID: '001',                  // 游戏ID
    gameName: 'botton',             // 游戏名称
    elementID: 'btn2',              // 元素ID
    elementName: 'botton',          // 元素名称
    nickname: 'whs',                // 用户昵称
    elementType: '',                // 元素类型  例: base/activity/game
    elementProperties: {type:'大转盘', label: '钻石宝箱', code: '0129'},// 元素属性  例: 关闭音效
    pageAttributes: '测试页面',      // 页面属性  例: 大厅
}) 
// 浏览页面埋点
tr.track('pageView', {
    pageID: 'kkk3',
    pageTitle: '首页-游戏大厅222',
    nickname: 'whs',
    pageAttributes: '游戏大厅333',
    channel: 'oppo',                // 安装包渠道
    pageExitTime: Date.now(),
})