web-artifacts-builder
Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.
摘要
- 用途
- 使用已配置的 React 与 TypeScript 工具链,创建并封装适用于 Claude 对话的前端作品。
- 使用时机
- 当 Claude 对话需要由多个前端组件组成的交互作品,并要以可独立使用的 HTML 分享时使用。
- 输出结果
- 产生将作品的 JavaScript、CSS 与相依项目内嵌其中的独立 bundle.html,供在对话中分享。
上游变更(4 条,最新收录 2025-12-01)
ef74077 Move example skills into dedicated folder and create minimal top-level folder structure (#129) 将内容未变的 `SKILL.md` 从 `web-artifacts-builder/` 移至 `skills/web-artifacts-builder/`。 0f77e50 Update example skills and rename 'artifacts-builder' (#112) 在中继数据与标题中将技能名称改为 `web-artifacts-builder`。 83291af Reorganize the example skills (#1) 将内容未变的 `SKILL.md` 从 `examples/artifacts-builder/` 移至 `artifacts-builder/`。 37292f3 init repo 添加 `artifacts-builder` 指南,涵盖 React/TypeScript artifact 的设置、开发、打包成单一 HTML 文件与选择性测试。 npx skills add "lettucebo/Skills#v2.2.0@web-artifacts-builder" --full-depth ⚠ v2.2.0 发布后即可使用
Web Artifacts Builder
To build powerful frontend claude.ai artifacts, follow these steps:
- Initialize the frontend repo using
scripts/init-artifact.sh - Develop your artifact by editing the generated code
- Bundle all code into a single HTML file using
scripts/bundle-artifact.sh - Display artifact to user
- (Optional) Test the artifact
Stack: React 18 + TypeScript + Vite + Parcel (bundling) + Tailwind CSS + shadcn/ui
Design & Style Guidelines
VERY IMPORTANT: To avoid what is often referred to as "AI slop", avoid using excessive centered layouts, purple gradients, uniform rounded corners, and Inter font.
Quick Start
Step 1: Initialize Project
Run the initialization script to create a new React project:
bash scripts/init-artifact.sh <project-name>
cd <project-name>
This creates a fully configured project with:
- ✅ React + TypeScript (via Vite)
- ✅ Tailwind CSS 3.4.1 with shadcn/ui theming system
- ✅ Path aliases (
@/) configured - ✅ 40+ shadcn/ui components pre-installed
- ✅ All Radix UI dependencies included
- ✅ Parcel configured for bundling (via .parcelrc)
- ✅ Node 18+ compatibility (auto-detects and pins Vite version)
Step 2: Develop Your Artifact
To build the artifact, edit the generated files. See Common Development Tasks below for guidance.
Step 3: Bundle to Single HTML File
To bundle the React app into a single HTML artifact:
bash scripts/bundle-artifact.sh
This creates bundle.html - a self-contained artifact with all JavaScript, CSS, and dependencies inlined. This file can be directly shared in Claude conversations as an artifact.
Requirements: Your project must have an index.html in the root directory.
What the script does:
- Installs bundling dependencies (parcel, @parcel/config-default, parcel-resolver-tspaths, html-inline)
- Creates
.parcelrcconfig with path alias support - Builds with Parcel (no source maps)
- Inlines all assets into single HTML using html-inline
Step 4: Share Artifact with User
Finally, share the bundled HTML file in conversation with the user so they can view it as an artifact.
Step 5: Testing/Visualizing the Artifact (Optional)
Note: This is a completely optional step. Only perform if necessary or requested.
To test/visualize the artifact, use available tools (including other Skills or built-in tools like Playwright or Puppeteer). In general, avoid testing the artifact upfront as it adds latency between the request and when the finished artifact can be seen. Test later, after presenting the artifact, if requested or if issues arise.
Reference
- shadcn/ui components: https://ui.shadcn.com/docs/components