pts

用简洁 API 快速构建创意视觉与数据可视化

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 设计创意 🍴 复刻 183 🐛 待处理 21 👀 关注 62
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 5363
维护状态 较活跃
是否开源 开源
定价模式 🏷️完全免费 开源库,Apache-2.0 许可证,完全免费,可自行部署使用。

项目预览

pts 项目界面预览图
图片来源:项目官网

项目数据

分类设计创意
开发团队williamngan
官网地址https://ptsjs.org
定价模式🏷️完全免费
价格说明开源库,Apache-2.0 许可证,完全免费,可自行部署使用。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议Apache-2.0
主要语言TypeScript
技术栈/模型art,canvas,creative-coding,design,generative,generative-art,graphic-design,graphics,linear-algebra,pts,sound,svg,typescript,vector,visualization
GitHub 星标★ 5363
上线时间2017-03-24 00:00:00
代码更新2026-10-28
仓库体积25.0 MB
本站数据更新2026-11-09
维护状态较活跃
收录时间2026-08-09
浏览次数7

项目介绍

pts 是一个面向可视化与创意编程的 TypeScript 库,旨在简化点、线、形状、颜色等几何元素的创建与操作。它解决了创意编码中重复编写底层绘图逻辑的痛点,提供了一套简洁的 API 来构建复杂的视觉作品。核心能力包括:轻量级几何体(点、线、圆、矩形等)的数学运算、空间划分与插值、颜色管理与渐变、以及可插拔的渲染后端(支持 Canvas、SVG、WebGL 等)。开发者可以快速实现动画、交互式图形、数据可视化等效果,无需深入底层图形学细节。其模块化设计允许按需引入,且与主流框架(如 React、Vue)兼容,适合艺术家、设计师和前端开发者进行创意探索。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 5363

使用教程

难度:入门 约 10 分钟 部署方式:库/依赖 5 步

环境要求

  • Node.js 与 npm 环境(使用 npm install pts 方式时)
  • 一个可加载脚本的 HTML 页面或前端工程(使用 CDN/script 方式时)
  • 支持 Canvas、SVG 或 WebGL 的现代浏览器
  • 若在 React 中使用,可配合 react-pts-canvas 组件

安装与启动步骤

  1. 1安装 pts 依赖

    在项目根目录执行 npm 安装命令。安装完成后即可在代码中按需引入 Pts 的各个模块。

    npm install pts
  2. 2按需引入模块

    在 JS/TS 文件中从 pts 导入需要的类,例如 CanvasSpace、Pt、Group、Line,避免引入全部代码。

    import {CanvasSpace, Pt, Group, Line} from 'pts';
  3. 3或使用 CDN 引入

    不想走打包流程时,可直接在 HTML 中用 script 标签加载 dist 下的 pts.js/pts.min.js,或使用 jsdelivr、cdnjs、unpkg 的 CDN 地址。

    <script type="text/javascript" src="https://cdn.jsdelivr.net/gh/williamngan/pts/dist/pts.min.js"></script>
  4. 4克隆入门示例

    官方 pts-starter-kit 示例基于 npm 和 webpack,可克隆到本地学习完整的项目结构。

    git clone https://github.com/williamngan/pts-starter-kit.git
  5. 5查阅指南与示例

    阅读官网指南的 Get Started 章节,并浏览 demos 及其源码,快速掌握常用 API 的用法。

如何确认成功

代码中导入 pts 无报错,且页面能通过 CanvasSpace 正常绘制出图形,即表示接入成功。

常见问题

Q:必须用 npm 安装才能使用吗?

A:不是。README 提供两种方式:npm install pts 后按需 import,或直接下载 dist 中的 pts.js/pts.min.js(或使用 CDN)再用 script 标签引入页面。

Q:Pts 体积大吗?

A:比较轻量。README 说明当前 minified 后约 100kb,gzip 压缩后约 30kb。

Q:如何在 React 项目中使用?

A:可参考官方示例仓库 pts-react-example,或使用 npm 包 react-pts-canvas,通过扩展该组件来使用 Pts。

Q:遇到问题去哪里求助?

A:可以到 GitHub 仓库 williamngan/pts 提交 issue,也可以先查阅官网 guides 和 demos 的示例源码。

注意事项

  • Pts 支持按需引入模块,建议只导入用到的类以控制打包体积。
  • 官方提供了 pts-starter-kit(npm + webpack)和 pts-react-example 等示例仓库,适合快速上手。
  • 官网 ptsjs.org 提供 Get Started 指南与大量 demos,可结合源码学习。

核心亮点

  • 几何数学运算封装完善,点、线、形状操作直观高效
  • 渲染后端可插拔,同一套逻辑可输出到 Canvas、SVG 等
  • TypeScript 编写,类型提示友好,适合前端开发者上手

不足之处

  • 文档偏学术,示例较少,新手学习曲线较陡
  • 社区生态较小,第三方扩展和教程资源有限

适用场景

  • 创意编程与生成艺术(如 Processing 风格的 Web 作品)
  • 数据可视化原型开发,快速绘制图表和交互图形
  • 前端动画与交互效果,如粒子系统、动态背景

替代项目

p5.js、D3.js、Three.js

上一篇:generative

下一篇:theatre

同类项目推荐

official-design-md 开源

让 AI 读官方设计规范,一键生成统一品牌 UI。

Official DESIGN.md files published by companies themselves. First-party design syste···

★ 530 2026-10-08
GenArt 开源

用 Python 快速生成艺术草图,灵感即所得

Various Sketches written in Python Language for Processing

★ 100 2026-08-09
ComfyUI_VNCCS_Utils 开源

给 ComfyUI 补上一批顺手的小工具节点

A collection of utility nodes from the VNCCS project that are useful not only for th···

★ 1216 2026-10-30
solid-glass 开源

给 AI 应用一套有质感、能直接用的界面设计系统

A design system for AI applications. Material, physical, tactile, technical.

★ 2059 2026-10-18
motion-anything 开源

用大白话描述动效,AI 直接帮你生成动画

✨ The agentic motion layer — an open-source, chat-native motion engine. Describe t···

★ 1054 2026-08-09
lobe-ui 开源

用现成组件,快速搭建 AI 对话界面

Lobe UI - an open-source UI component library for building AIGC web apps

★ 2261 2026-08-09
ai-design-components 开源

从规范到细节一步到位,AI 写界面不用返工

Comprehensive UI/UX and Backend component design skills for AI-assisted development ···

★ 528 2026-08-09
design-image-studio 开源

把模糊想法变成高质量设计图,一键生成可落地视觉方案

把模糊视觉需求直接变成可落地生成的高质量设计图

★ 106 2026-08-09
OCM-Dimensions 开源

用 JavaScript 在比特币上刻下你的 3D/2D 艺术

Tools for inscribing ordinals using OCM Dimensions and the three.js and p5.js librar···

★ 85 2026-08-09