name: web-artifacts-builder description: 一套工具,用于使用现代前端Web技术(React、Tailwind CSS、shadcn/ui)创建精致、多组件的Claude.ai HTML工物。适用于需要状态管理、路由或shadcn/ui组件的复杂工物,而不是简单的单文件HTML/JSX工物。 license: 完整条款见LICENSE.txt
Web工物构建器
要构建强大的前端Claude.ai工物,请遵循以下步骤:
- 使用
scripts/init-artifact.sh初始化前端仓库 - 通过编辑生成的代码来开发您的工物
- 使用
scripts/bundle-artifact.sh将所有代码打包成单个HTML文件 - 将工物展示给用户
- (可选)测试工物
技术栈: React 18 + TypeScript + Vite + Parcel(打包)+ Tailwind CSS + shadcn/ui
设计与风格指南
非常重要:为了避免所谓的“AI slop”,避免使用过多的居中布局、紫色渐变、统一的圆角和Inter字体。
快速开始
步骤1:初始化项目
运行初始化脚本来创建一个新的React项目:
bash scripts/init-artifact.sh <project-name>
cd <project-name>
这将创建一个完全配置的项目,包含:
- React + TypeScript(通过Vite)
- Tailwind CSS 3.4.1,带有shadcn/ui主题系统
- 配置了路径别名(
@/) - 预安装了40多个shadcn/ui组件
- 包含所有Radix UI依赖项
- 配置了Parcel用于打包(通过.parcelrc)
- Node 18+兼容性(自动检测并固定Vite版本)
步骤2:开发您的工物
要构建工物,编辑生成的文件。参见下面的常见开发任务以获取指导。
步骤3:打包成单个HTML文件
要将React应用打包成单个HTML工物:
bash scripts/bundle-artifact.sh
这将创建 bundle.html - 一个自包含的工物,所有JavaScript、CSS和依赖项都被内联。这个文件可以直接在Claude对话中作为工物共享。
要求:您的项目必须在根目录中有一个 index.html。
脚本的作用:
- 安装打包依赖项(parcel、@parcel/config-default、parcel-resolver-tspaths、html-inline)
- 创建
.parcelrc配置,支持路径别名 - 使用Parcel构建(无源映射)
- 使用html-inline将所有资源内联到单个HTML中
步骤4:与用户共享工物
最后,在对话中与用户共享打包的HTML文件,以便他们可以将其视为工物。
步骤5:测试/可视化工物(可选)
注意:这是一个完全可选的步骤。仅在必要或请求时执行。
要测试/可视化工物,使用可用工具(包括其他技能或内置工具如Playwright或Puppeteer)。通常,避免预先测试工物,因为它会增加请求和完成工物可见之间的延迟。在呈现工物后,如果需要或出现问题,再进行测试。
参考
- shadcn/ui组件: https://ui.shadcn.com/docs/components