From logo-generator
Design an animated SVG logo with live preview and export to GIF/PNG/HTML — config-driven, interactive controls. Triggers: "logo" | "create logo" | "generate logo" | "brand logo" | "design logo" | "animated logo" | "logo export".
npx claudepluginhub roxabi/roxabi-plugins --plugin logo-generatorThis skill is limited to using the following tools:
**Goal:** Create a production animated SVG logo with live interactive preview and export to GIF/PNG/HTML.
Designs and iterates on SVG logos via structured interviews for format, style, colors, and sizes. Generates side-by-side previews and PNG exports at standard sizes.
Use when asked to create a logo, design a brand mark, generate a logo concept, or produce any logo asset. Examples: "create a logo for X", "design a brand mark", "make me a logo", "generate logo concepts", "logo for our product".
Generates logo concepts via 4-phase process: brief extraction, competitive audit, ideation, and refinement. Activates on requests like 'create a logo for X' or 'design a brand mark'.
Share bugs, ideas, or general feedback.
Goal: Create a production animated SVG logo with live interactive preview and export to GIF/PNG/HTML.
Let:
BR := $HOME/.roxabi-vault/config/logo-briefs
CH := $HOME/.roxabi-vault/config/visual-charter.json
BD := <project-root>/brand/
Identify target project: $ARGUMENTS name/path → cwd (CLAUDE.md, README.md, package.json, pyproject.toml).
Check brand assets:
ls "$HOME/.roxabi-vault/config/logo-briefs/" 2>/dev/null && echo "EXISTING_BRIEFS_FOUND" || echo "NO_BRIEFS"
charter="$HOME/.roxabi-vault/config/visual-charter.json"
[ -f "$charter" ] && echo "CHARTER_FOUND" && cat "$charter" || echo "NO_CHARTER"
CLAUDE.md, README.md, docs, configs — extract purpose, architecture, metaphors, personality.Present decisions via protocol: read ${CLAUDE_PLUGIN_ROOT}/../shared/references/decision-presentation.md (Pattern A).
Confirm: Name (wordmark), Tagline, Essence (one sentence: what it is + how it should feel).
Propose 2-3 metaphors, each mapping to a visual shape connected to project architecture/purpose with literal + abstract readings. Ask user to pick or combine.
CH exists → propose using its colors. Otherwise propose 2-3 palettes, each with: Primary (input/energy), Secondary (output/intelligence), Background (near-black), Surface (inner frame), Highlight (nodes/text accents).
Ask: frame shape (hexagon/circle/rounded square/none); font direction (geometric sans vs. sharp sans vs. custom); connectors (yes/no).
Ask: speed (normal/fast/slow); idle effects (hub pulse, data particles, node breathing, border glow, background particles); particle density (sparse/normal/dense).
Compose logo-brief.json using ${CLAUDE_PLUGIN_ROOT}/examples/logo-brief.example.json schema. Translate metaphor → concrete SVG elements (paths, lines, nodes, coordinates). Set animation timing + idle parameters.
mkdir -p "$HOME/.roxabi-vault/config/logo-briefs"
# Save as <project-name>-logo-brief.json
${CLAUDE_PLUGIN_ROOT}/scripts/logo-engine.html.var LOGO_BRIEF = <brief>; before init();.</style>:@keyframes wordmarkIn {
from { opacity: 0; transform: translateY(10px); }
to { opacity: 1; transform: translateY(0); }
}
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
BD/<name>-logo.html; xdg-open it.Color/size tweaks → update brief + re-render. Shape changes → redesign mark elements. Metaphor changes → Phase 2.2. User exported brief from browser → load it as new source of truth.
cp "${CLAUDE_PLUGIN_ROOT}/scripts/export-logo.mjs" "BD/capture-gif.mjs"
cp "${CLAUDE_PLUGIN_ROOT}/scripts/logo-engine.html" "BD/_logo-engine.html"
Patch capture-gif.mjs: replace 'logo-engine.html' → '_logo-engine.html'; add import { resolve } from 'path'; wrap tempHtml with resolve(). Patch _logo-engine.html: add @keyframes wordmarkIn + @keyframes fadeIn.
cd "<project-root>" && npm list puppeteer 2>/dev/null || npm install --no-save puppeteer
node brand/capture-gif.mjs \
"$HOME/.roxabi-vault/config/logo-briefs/<name>-logo-brief.json" \
--output brand/ --gif --png --duration 8 --fps 15
Outputs: <name>-logo.html, <name>-logo.gif, <name>-logo.png.
Generate BD/BRAND-IDENTITY.md with sections: Starting Point | Core Metaphor | Mark Anatomy | Colour System (table) | Typography | Animation | Design Principles.
$ARGUMENTS