BrandHero – Project Story

🌟 Inspiration

Agency clients loved Donald Miller’s StoryBrand framework but dreaded 40-page workbooks.
I wanted a SaaS button that captures brand DNA once and spits out a cinematic narrative plus channel-ready copy in minutes.


📚 What I Learned

  • Prompt-chaining beats mega-prompts for long-form consistency and lower token costs.
  • True multi-tenant isolation requires a schema per org and row-level guards.
  • Emoji + custom fonts can crash Markdown-to-PDF—fallback font stacks save the day.

🛠️ How I Built It

Layer Tech & Flow
Data Capture React stepper records brand details & hero’s current state.
Story Engine OpenAI o4-mini crafts the StoryBrand arc; a second call autogenerates personas.
Content Studio Users pick persona + funnel stage → GPT expands into web, email, or social copy.
Export Story framework rendered via React-PDF, cached by Netlify functions for speed.
Auth & Storage Supabase Postgres, RLS for agency/client segregation.

⚠️ Challenges

Issue Fix
Token limits vs rich tone prompts Split chain + concise brand “voice tokens.”
Persona explosion from minimal input Added confidence threshold + similarity check.
PDF fidelity across browsers Embedded fonts & rasterized tricky emoji.

🚀 What’s Next

Client portals with custom domains Collaboration layer – inline comments, approval workflows, and AI rewrite suggestions.

BrandHero is on track to become a full-stack storytelling studio—turning browsers into believers at the speed of AI.

Built With

  • netlify
  • openai
  • react
  • supabase
  • tailwind
  • vite
Share this project:

Updates