Pulled ALL skills from 15 source repositories: - anthropics/skills: 16 (docs, design, MCP, testing) - obra/superpowers: 14 (TDD, debugging, agents, planning) - coreyhaines31/marketingskills: 25 (marketing, CRO, SEO, growth) - better-auth/skills: 5 (auth patterns) - vercel-labs/agent-skills: 5 (React, design, Vercel) - antfu/skills: 16 (Vue, Vite, Vitest, pnpm, Turborepo) - Plus 13 individual skills from various repos Mosaic Stack is not limited to coding — the Orchestrator and subagents serve coding, business, design, marketing, writing, logistics, analysis, and more. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
54 lines
1.5 KiB
Bash
Executable File
54 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
echo "📦 Bundling React app to single HTML artifact..."
|
|
|
|
# Check if we're in a project directory
|
|
if [ ! -f "package.json" ]; then
|
|
echo "❌ Error: No package.json found. Run this script from your project root."
|
|
exit 1
|
|
fi
|
|
|
|
# Check if index.html exists
|
|
if [ ! -f "index.html" ]; then
|
|
echo "❌ Error: No index.html found in project root."
|
|
echo " This script requires an index.html entry point."
|
|
exit 1
|
|
fi
|
|
|
|
# Install bundling dependencies
|
|
echo "📦 Installing bundling dependencies..."
|
|
pnpm add -D parcel @parcel/config-default parcel-resolver-tspaths html-inline
|
|
|
|
# Create Parcel config with tspaths resolver
|
|
if [ ! -f ".parcelrc" ]; then
|
|
echo "🔧 Creating Parcel configuration with path alias support..."
|
|
cat > .parcelrc << 'EOF'
|
|
{
|
|
"extends": "@parcel/config-default",
|
|
"resolvers": ["parcel-resolver-tspaths", "..."]
|
|
}
|
|
EOF
|
|
fi
|
|
|
|
# Clean previous build
|
|
echo "🧹 Cleaning previous build..."
|
|
rm -rf dist bundle.html
|
|
|
|
# Build with Parcel
|
|
echo "🔨 Building with Parcel..."
|
|
pnpm exec parcel build index.html --dist-dir dist --no-source-maps
|
|
|
|
# Inline everything into single HTML
|
|
echo "🎯 Inlining all assets into single HTML file..."
|
|
pnpm exec html-inline dist/index.html > bundle.html
|
|
|
|
# Get file size
|
|
FILE_SIZE=$(du -h bundle.html | cut -f1)
|
|
|
|
echo ""
|
|
echo "✅ Bundle complete!"
|
|
echo "📄 Output: bundle.html ($FILE_SIZE)"
|
|
echo ""
|
|
echo "You can now use this single HTML file as an artifact in Claude conversations."
|
|
echo "To test locally: open bundle.html in your browser" |