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

ta-core

v1.0.0

Published

一个基于 Turborepo + pnpm 的现代化 Monorepo,包含 React UI 组件库、SDK 和相关应用

Readme

TA Core

一个基于 Turborepo + pnpm 的现代化 Monorepo,包含 React UI 组件库、SDK 和相关应用。

Build Status License: MIT TypeScript pnpm

🚀 特性

  • 🏗️ Monorepo 架构 - 使用 Turborepo 管理多个包,智能缓存和并行构建
  • ⚡ 现代化工具链 - TypeScript、Vite、Tailwind CSS、ESM 优先
  • 🧪 完整的测试 - Vitest + Testing Library,支持覆盖率和 UI 测试
  • 📚 组件文档 - Storybook 集成,提供交互式组件文档
  • 🔍 代码质量 - ESLint + Prettier + Husky,确保代码质量
  • 🛡️ 类型安全 - 完整的 TypeScript 支持,严格的类型检查
  • 🚀 实时通信 - SSE (Server-Sent Events) SDK,支持实时数据流
  • 📦 多格式输出 - 支持 ESM、CJS 和 TypeScript 声明文件

📦 包结构

ta-core/
├── packages/
│   ├── ui/          # React UI 组件库 (@t-agent/ui)
│   │   ├── components/  # 可复用的 React 组件
│   │   ├── utils/       # 工具函数
│   │   └── stories/     # Storybook 文档
│   └── sdk/         # TA Core SDK (@t-agent/sdk)
│       ├── sse/         # Server-Sent Events 管理
│       ├── types/       # TypeScript 类型定义
│       └── config/      # 配置管理
└── apps/            # 应用(待添加)

包说明

  • @t-agent/ui - React UI 组件库,基于 Tailwind CSS,提供完整的设计系统
  • @t-agent/sdk - 核心 SDK,提供 SSE 连接管理、实时通信等功能

🛠️ 开发

环境要求

  • Node.js >= 18.0.0
  • pnpm >= 8.0.0

快速开始

# 克隆项目
git clone https://github.com/AutomaApp/ta-core.git
cd ta-core

# 安装依赖
pnpm install

# 启动开发模式
pnpm dev

安装依赖

pnpm install

开发命令

# 🚀 开发模式 - 启动所有包的开发模式
pnpm dev

# 🏗️ 构建所有包
pnpm build

# 🧪 运行测试
pnpm test

# 🔍 代码检查
pnpm lint

# 💅 代码格式化
pnpm format

# 🛡️ 类型检查
pnpm type-check

# 🧹 清理构建文件
pnpm clean

# 📚 启动 Storybook
pnpm storybook

# 📦 构建 Storybook 静态文件
pnpm build-storybook

# 🏷️ 版本管理
# 版本管理功能正在重新设计,敬请期待

包特定命令

UI 包 (@t-agent/ui)

cd packages/ui

# 🚀 开发模式
pnpm dev

# 🏗️ 构建
pnpm build

# 🧪 测试
pnpm test

# 📚 Storybook
pnpm storybook

# 🖥️ 测试 UI 界面
pnpm test:ui

SDK 包 (@t-agent/sdk)

cd packages/sdk

# 🚀 开发模式
pnpm dev

# 🏗️ 构建
pnpm build

# 🧪 测试
pnpm test

# 🛡️ 类型检查
pnpm type-check

📚 文档

🧪 测试

项目使用 Vitest 进行测试,支持:

  • 单元测试 - 组件和函数的单元测试
  • 🔄 组件测试 - React 组件的集成测试
  • 📊 覆盖率报告 - 完整的代码覆盖率统计
  • 🖥️ UI 测试界面 - 可视化的测试运行界面
  • 快速执行 - 基于 Vite 的超快测试执行
# 🧪 运行所有测试
pnpm test

# 👀 监听模式
pnpm test:watch

# 🖥️ UI 测试界面
pnpm test:ui

# 📊 覆盖率报告
pnpm test:coverage

📖 Storybook

使用 Storybook 提供组件文档和交互式示例:

# 🚀 启动 Storybook 开发服务器
pnpm storybook

# 📦 构建静态版本
pnpm build-storybook

访问 http://localhost:6006 查看组件文档。

Storybook 特性

  • 🎨 交互式组件演示 - 实时预览组件效果
  • 📝 完整的组件文档 - 包含 Props、使用示例等
  • 🎯 Controls 面板 - 动态调整组件属性
  • 📱 响应式预览 - 多设备尺寸预览
  • 可访问性检查 - 内置 a11y 插件

🏷️ 版本管理与发布

项目使用简洁的发布流程,支持 Alpha 和 Release 版本发布。

快速发布

# 🚀 Alpha 版本(早期测试)
pnpm release:alpha

# ✅ Release 版本(正式发布)
pnpm release:stable

# 📖 查看帮助
pnpm release:help

发布流程

发布脚本会自动执行以下步骤:

  1. 检查工作目录状态
  2. 拉取最新代码
  3. 安装依赖
  4. 运行测试
  5. 构建项目
  6. 发布到 npm
  7. 创建 Git 标签
  8. 提交版本更新

详细的发布流程请查看 发布指南

🔧 代码质量

ESLint

项目配置了严格的 ESLint 规则,包括:

  • 🔷 TypeScript 支持 - 完整的 TS 语法检查
  • ⚛️ React 最佳实践 - React Hooks、JSX 规范
  • 可访问性检查 - jsx-a11y 插件确保无障碍访问
  • 💅 Prettier 集成 - 统一的代码格式化
  • 🚫 严格模式 - 避免常见的 JavaScript 陷阱

Prettier

统一的代码格式化配置,支持:

  • 📝 TypeScript/JavaScript
  • 🎨 JSON、Markdown、YAML
  • ⚙️ 配置文件格式化

Husky + lint-staged

Git hooks 确保代码质量:

  • 🔍 提交前检查 - 自动运行 lint 和格式化
  • 🚀 快速反馈 - 只检查变更的文件
  • 🛡️ 质量保证 - 防止低质量代码进入仓库

🏗️ 构建

Turborepo 管道

项目使用 Turborepo 管理构建管道:

  • 🧠 智能缓存 - 避免重复构建,提升效率
  • 并行构建 - 多包同时构建,节省时间
  • 🔗 依赖管理 - 智能的包依赖关系处理
  • 📊 构建分析 - 详细的构建统计信息

输出格式

各包支持多种输出格式:

UI 包输出

  • 📦 ESM (ES Modules) - 现代模块格式
  • 📦 CJS (CommonJS) - 兼容传统环境
  • 🏷️ TypeScript 声明文件 - 完整的类型支持
  • 🎨 CSS 文件 - 样式文件单独输出

SDK 包输出

  • ESM - ES Modules 格式
  • 🏷️ TypeScript 声明文件 - 完整的类型定义

�📈 性能优化

  • 构建优化 - Vite 提供极速的构建体验
  • 🧠 缓存策略 - Turborepo 智能缓存减少重复工作
  • ✂️ 代码分割 - 按需加载,减少包体积
  • 🌳 Tree Shaking - 自动移除未使用的代码
  • 📦 依赖优化 - 精确的依赖管理,避免冗余

🤝 贡献

我们欢迎各种形式的贡献!请查看 贡献指南 了解详情。

开发流程

  1. 🍴 Fork 项目 - 创建你的项目副本
  2. 🌟 创建功能分支 - git checkout -b feature/amazing-feature
  3. 💾 提交更改 - git commit -m 'Add some amazing feature'
  4. 🧪 运行测试 - pnpm test 确保所有测试通过
  5. 📤 推送分支 - git push origin feature/amazing-feature
  6. 🔄 提交 Pull Request - 创建详细的 PR 描述

贡献类型

  • 🐛 Bug 修复 - 修复现有问题
  • 新功能 - 添加新的功能特性
  • 文档改进 - 完善文档内容
  • 🎨 UI/UX 改进 - 改善用户体验
  • 性能优化 - 提升性能表现
  • 🧪 测试覆盖 - 增加测试用例

�📄 许可证

本项目基于 MIT License 开源。

🆘 支持与反馈

🌟 致谢

感谢所有为 TA Core 做出贡献的开发者!


TA Core - 构建更好的 React 应用 🚀

Made with ❤️ by AutomaApp