By Bizzet
AI layer for building beautiful, unique small-business Astro 6.3 websites — design-direction skill, 12 aesthetic archetypes, kinetic typography, creative interactions, decorative SVG system, section transitions, depth & blend patterns, bold layout variants, scroll storytelling, SEO, Vercel.
Use when adding a complete blog — Content Collection, listing page with pagination, individual post page, and RSS feed.
Use when adding a custom web font to the project.
Use when adding animations or motion effects to sections or components. Defaults to pure CSS keyframes and scroll-driven animations. Uses GSAP only when explicitly requested or when timeline complexity requires it.
Use when ready to hand the site off to the client.
Use when setting up or extending Astro Content Collections for structured content like blog posts, services, or team members.
Admin access level
Server config contains admin-level keywords
Modifies files
Hook triggers on file write and edit operations
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Requires secrets
Needs API keys or credentials to function
Requires secrets
Needs API keys or credentials to function
A Claude Code community plugin that gives Claude everything it needs to build complete, beautiful small-business Astro 6.3 websites autonomously.
node --version # must be v22.12.0 or higher (Astro 6 requirement)
npm install -g @astrojs/language-server
Without the language server, LSP silently fails and Claude falls back to text search.
/plugin marketplace add Bizzet/astro-layer
/plugin install astro-layer
# ── Entry points (type once) ──────────────────────────────
/astro-layer:new-site # full site from brief
/astro-layer:init # instrument existing project
# ── Auto-invoked as Claude works ─────────────────────────
# new-component, new-page, new-section, design-tokens,
# seo-optimize, content-collection, add-blog,
# animate, dark-mode, add-font, svg-decorative
# ── Deliberate actions (type explicitly) ─────────────────
/astro-layer:deploy-vercel
/astro-layer:quality-check
/astro-layer:performance-check
/astro-layer:client-handoff
# ── Verify install ────────────────────────────────────────
node tooling/validate-all.js # 15/15
# ── Keep current ─────────────────────────────────────────
npx @astrojs/upgrade # upgrades Astro + all official integrations
User-invoked entry points (new-site, init) require you to type the command explicitly and have disable-model-invocation: true.
Model-auto-invoked skills (new-component, new-page, new-section, design-tokens, seo-optimize, content-collection, add-blog, animate, dark-mode, add-font, svg-decorative) are selected by Claude automatically when they match the task.
User-invoked deliberate actions (deploy-vercel, performance-check, quality-check, client-handoff) require explicit invocation and have disable-model-invocation: true.
Start Claude from within a subdirectory when working in one area:
# Components only
cd src/components && claude
# Pages only
cd src/pages && claude
Claude walks up the tree automatically — root CLAUDE.md is never lost.
<ClientRouter /> replaces removed <ViewTransitions />src/content.config.ts + glob())z from 'astro/zod', not from 'astro:content'entry.id replaces entry.slug; render(entry) replaces entry.render()<Image /> by defaultfontProviders in astro.config.mjs)init)| File | Contents |
|---|---|
CLAUDE.md | Business name, tech stack, integrations, design system overview, commands, v6 conventions, subdirectory init guidance |
src/components/CLAUDE.md | Props pattern, scoped CSS rules, ARIA requirements, Image/SVG usage, scoped command |
src/pages/CLAUDE.md | Layout pattern, SEO frontmatter, routing conventions, entry.id/render() v6 patterns, scoped command |
src/styles/CLAUDE.md | Full token catalog (auto-populated), @layer rules, scoped command |
SITE_MAP.md | All pages, routes, sections — updated by Stop hook each session |
.claudeignore | dist/, .astro/, node_modules/, public/fonts/ |
.claude/settings.json | allow/deny for Astro commands including npx @astrojs/upgrade, ASTRO_ENV=development |
Run npx @astrojs/upgrade to keep Astro and integrations current.
Review .claude/ skills and CLAUDE.md files every 3–6 months. After major Claude model releases, delete rules that compensate for limitations the new model no longer has.
The Stop hook proposes incremental updates after each session — review .claude/claude-md-review.md periodically.
npm install -g @vercel/mcp-adapter~/.claude/mcp.json:{
"mcpServers": {
"vercel": {
"command": "vercel-mcp",
"env": {
"VERCEL_API_TOKEN": "your_token_here"
}
}
}
}
/astro-layer:deploy-vercel — the skill will guide you if setup is incomplete.node tooling/validate-all.js # expects 15/15
npx claudepluginhub bizzet/astro-layer --plugin astro-layerUltra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Memory compression system for Claude Code - persist context across sessions
Multi-model consensus engine integrating OpenAI Codex CLI, Gemini CLI, and Claude CLI for collaborative code review and problem-solving.
Curate auto-memory, promote learnings to CLAUDE.md and rules, extract proven patterns into reusable skills.
Comprehensive UI/UX design plugin for mobile (iOS, Android, React Native) and web applications with design systems, accessibility, and modern patterns
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.