building-artifacts

Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Artifacts are automatically saved to ~/Desktop/Artifacts directory. Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.

About building-artifacts

building-artifacts is a Claude AI skill developed by WarrenZhu050413. Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Artifacts are automatically saved to ~/Desktop/Artifacts directory. Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts. This powerful Claude Code plugin helps developers automate workflows and enhance productivity with intelligent AI assistance.

0Stars
0Forks
2025-11-04

Why use building-artifacts? With 0 stars on GitHub, this skill has been trusted by developers worldwide. Install this Claude skill instantly to enhance your development workflow with AI-powered automation.

nameBuilding Artifacts
descriptionSuite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Artifacts are automatically saved to ~/Desktop/Artifacts directory. Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.
licenseComplete terms in LICENSE.txt

Artifacts Builder

Stack: React 18 + TypeScript + Vite + Tailwind CSS + shadcn/ui

Workflow

  1. Initialize: bash scripts/init-artifact.sh <project-name>
  2. Develop in generated project
  3. Bundle: pnpm run build (Vite bundling, see Step 3 for configuration)
  4. Share bundled HTML with user
  5. Test only if needed (optional)

Artifact Types

Type 1: Complex Interactive Applications

Multi-component applications with state management and routing. Use React stack above.

Type 2: Interactive Primary Source Artifacts

Explorable visualizations of documentation, papers, books. Use HTML with collapsibles and structured navigation (no React).

Reference: primary-sources-reference.md

Use for: Technical docs, research papers, books/textbooks, historical documents

Design Guidelines

Avoid "AI slop": no excessive centered layouts, purple gradients, uniform rounded corners, or Inter font.

Step 1: Initialize

bash scripts/init-artifact.sh <project-name>

Location: ~/Desktop/Artifacts/ (fallback: current directory)

Creates:

  • React + TypeScript (Vite)
  • Tailwind CSS 3.4.1 + shadcn/ui theming
  • Path aliases (@/)
  • 40+ shadcn/ui components + Radix UI dependencies
  • Parcel configured (.parcelrc)
  • Node 18+ compatibility

Step 2: Develop

cd ~/Desktop/Artifacts/<project-name>

Edit generated files. See Common Development Tasks for guidance.

Step 3: Bundle

bash scripts/bundle-artifact.sh

Requirement: index.html in project root

Output: bundle.html - self-contained artifact with inlined JavaScript, CSS, dependencies

Process:

  • Installs: parcel, @parcel/config-default, parcel-resolver-tspaths, html-inline
  • Creates .parcelrc with path alias support
  • Builds with Parcel (no source maps)
  • Inlines all assets

Fallback: Vite + vite-plugin-singlefile

If Parcel fails (e.g., @swc/core signature errors on macOS), use Vite:

  1. Install vite-plugin-singlefile:

    pnpm add -D vite-plugin-singlefile
  2. Update vite.config.ts with complete configuration:

    import { viteSingleFile } from "vite-plugin-singlefile"; export default defineConfig({ plugins: [react(), viteSingleFile()], resolve: { alias: { "@": path.resolve(__dirname, "./src"), }, }, build: { rollupOptions: { output: { inlineDynamicImports: true, manualChunks: undefined, }, }, cssCodeSplit: false, }, });
  3. Build:

    pnpm run build
  4. Output: dist/index.html - fully self-contained, opens directly in browser (file:// protocol)

Critical: The build configuration is required. Without inlineDynamicImports: true, manualChunks: undefined, and cssCodeSplit: false, the bundle will not work properly (JavaScript won't execute, modules won't load).

When to use:

  • Parcel bundling fails with signature errors
  • Custom inline scripts produce non-executable output
  • Need reliable single-file distribution

Step 4: Share

Share bundle.html (or dist/index.html if using Vite fallback) in conversation for user to view as artifact.

Step 5: Testing (Optional)

Test only if requested or issues arise. Use available tools (Playwright, Puppeteer). Avoid upfront testing—adds latency.

Reference

WarrenZhu050413

WarrenZhu050413

Warren-Claude-Code-Plugin-Marketplace

View on GitHub

Download Skill Files

View Installation Guide

Download the complete skill directory including SKILL.md and all related files