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

@chatkit-lab/chatkit-react

v0.2.0

Published

React chat component powered by ChatKit Core

Readme

@chatkit-lab/chatkit-react

@chatkit-lab/chatkit-react 是基于 @chatkit-lab/chatkit-core 的 React 聊天组件,导出 <ChatKit />

import { ChatKit } from "@chatkit-lab/chatkit-react";
import "@chatkit-lab/chatkit-react/styles.css";

<ChatKit
  identity={currentUser.id}
  config={{
    baseUrl: "https://chat-api.example.com",
    getAccessToken: async () => hostAccessToken,
    onUnauthorized: () => navigate("/login"),
  }}
/>;

宿主职责

宿主应用负责登录、注册、路由、用户校验和令牌刷新。React 18 和 React 19 都受支持,reactreact-dom 是 peer dependencies。Ant Design、图标、Markdown 和代码高亮依赖已打包进组件库,宿主不需要额外安装。

组件的 ESM 和 CJS 入口都可以在 Node 环境安全导入,并支持服务端渲染初始界面。

配置更新

identitybaseUrlconfig.paths 变化时,React 层会重建 controller 并清空已缓存的会话。getAccessTokenheadersonUnauthorizedonError 等回调配置变化时,只更新当前 controller,不会清空聊天状态。

样式

样式入口为:

import "@chatkit-lab/chatkit-react/styles.css";

组件根节点固定带 .chatkit-root 类名,宿主可以通过 classNamestyle 继续扩展布局。Ant Design 类名前缀固定为 chatkit-ant,避免和宿主自身的 Ant Design 样式互相影响。