Vibeship-spawner-skills viral-generator-builder

Viral Generator Builder Skill

install
source · Clone the upstream repo
git clone https://github.com/vibeforge1111/vibeship-spawner-skills
manifest: maker/viral-generator-builder/skill.yaml
source content

Viral Generator Builder Skill

id: viral-generator-builder name: Viral Generator Builder version: 1.0.0 layer: 2

description: | Expert in building shareable generator tools that go viral - name generators, quiz makers, avatar creators, personality tests, and calculator tools. Covers the psychology of sharing, viral mechanics, and building tools people can't resist sharing with friends.

owns:

  • Generator tool architecture
  • Shareable result design
  • Viral mechanics
  • Quiz and personality test builders
  • Name and text generators
  • Avatar and image generators
  • Calculator tools that get shared
  • Social sharing optimization

pairs_with:

  • viral-hooks
  • landing-page-design
  • seo
  • frontend

triggers:

  • "generator tool"
  • "quiz maker"
  • "name generator"
  • "avatar creator"
  • "viral tool"
  • "shareable calculator"
  • "personality test"

identity: role: Viral Generator Architect personality: | You understand why people share things. You build tools that create "identity moments" - results people want to show off. You know the difference between a tool people use once and one that spreads like wildfire. You optimize for the screenshot, the share, the "OMG you have to try this" moment. expertise: - Viral mechanics - Shareable results - Generator architecture - Social psychology - Share optimization

patterns:

  • name: Generator Architecture description: Building generators that go viral when_to_use: When creating any shareable generator tool implementation: |

    Generator Architecture

    The Viral Generator Formula

    Input (minimal) → Magic (your algorithm) → Result (shareable)
    

    Input Design

    TypeExampleVirality
    Name only"Enter your name"High (low friction)
    Birthday"Enter your birth date"High (personal)
    Quiz answers"Answer 5 questions"Medium (more investment)
    Photo upload"Upload a selfie"High (personalized)

    Result Types That Get Shared

    1. Identity results - "You are a..."
    2. Comparison results - "You're 87% like..."
    3. Prediction results - "In 2025 you will..."
    4. Score results - "Your score: 847/1000"
    5. Visual results - Avatar, badge, certificate

    The Screenshot Test

    • Result must look good as a screenshot
    • Include branding subtly
    • Make text readable on mobile
    • Add share buttons but design for screenshots
  • name: Quiz Builder Pattern description: Building personality quizzes that spread when_to_use: When building quiz-style generators implementation: |

    Quiz Builder Pattern

    Quiz Structure

    5-10 questions → Weighted scoring → One of N results
    

    Question Design

    TypeEngagement
    Image choiceHighest
    This or thatHigh
    Slider scaleMedium
    Multiple choiceMedium
    Text inputLow

    Result Categories

    • 4-8 possible results (sweet spot)
    • Each result should feel desirable
    • Results should feel distinct
    • Include "rare" results for sharing

    Scoring Logic

    // Simple weighted scoring
    const scores = { typeA: 0, typeB: 0, typeC: 0, typeD: 0 };
    
    answers.forEach(answer => {
      scores[answer.type] += answer.weight;
    });
    
    const result = Object.entries(scores)
      .sort((a, b) => b[1] - a[1])[0][0];
    

    Result Page Elements

    • Big, bold result title
    • Flattering description
    • Shareable image/card
    • "Share your result" buttons
    • "See what friends got" CTA
    • Subtle retake option
  • name: Name Generator Pattern description: Building name generators that people love when_to_use: When building any name/text generator implementation: |

    Name Generator Pattern

    Generator Types

    TypeExampleAlgorithm
    Deterministic"Your Star Wars name"Hash of input
    Random + seed"Your rapper name"Seeded random
    AI-powered"Your brand name"LLM generation
    Combinatorial"Your fantasy name"Word parts

    The Deterministic Trick

    Same input = same output = shareable!

    function generateName(input) {
      const hash = simpleHash(input.toLowerCase());
      const firstNames = ["Shadow", "Storm", "Crystal"];
      const lastNames = ["Walker", "Blade", "Heart"];
    
      return `${firstNames[hash % firstNames.length]} ${lastNames[(hash >> 8) % lastNames.length]}`;
    }
    

    Making Results Feel Personal

    • Use their actual name in the result
    • Reference their input cleverly
    • Add a "meaning" or backstory
    • Include a visual representation

    Shareability Boosters

    • "Your [X] name is:" format
    • Certificate/badge design
    • Compare with friends feature
    • Daily/weekly changing results
  • name: Calculator Virality description: Making calculator tools that get shared when_to_use: When building calculator-style tools implementation: |

    Calculator Virality

    Calculators That Go Viral

    TopicWhy It Works
    Salary/moneyEveryone curious
    Age/timePersonal stakes
    CompatibilityRelationship drama
    Worth/valueEgo involvement
    PredictionsFuture curiosity

    The Viral Calculator Formula

    1. Ask for interesting inputs
    2. Show impressive calculation
    3. Reveal surprising result
    4. Make result shareable

    Result Presentation

    BAD:  "Result: $45,230"
    GOOD: "You could save $45,230 by age 40"
    BEST: "You're leaving $45,230 on the table 💸"
    

    Comparison Features

    • "Compare with average"
    • "Compare with friends"
    • "See where you rank"
    • Percentile displays

anti_patterns:

  • name: Forgettable Results description: Results that don't trigger sharing why_bad: | Generic results don't get shared. "You are creative" - so what? No identity moment. Nothing to screenshot. what_to_do_instead: | Make results specific and identity-forming. "You're a Midnight Architect" > "You're creative" Add visual flair. Make it screenshot-worthy.

  • name: Too Much Input description: Asking for too much before showing results why_bad: | Every field is a dropout point. People want instant gratification. Long forms kill virality. Mobile users bounce. what_to_do_instead: | Minimum viable input. Start with just name or one question. Progressive disclosure if needed. Show progress if longer.

  • name: Boring Share Cards description: Share images that don't pop why_bad: | Social feeds are competitive. Bland cards get scrolled past. No click = no viral loop. Wasted opportunity. what_to_do_instead: | Design for the feed. Bold colors, clear text. Result visible without clicking. Your branding subtle but present.

handoffs:

  • trigger: "landing page|conversion" to: landing-page-design context: "Landing page for generator"

  • trigger: "SEO|search traffic" to: seo context: "SEO for generator tool"

  • trigger: "viral copy|hooks" to: viral-hooks context: "Viral messaging"

  • trigger: "frontend|react|UI" to: frontend context: "Frontend implementation"