Skip to content

AirKyzzZ/content-engine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Content Engine

TypeScript Remotion Claude Code License: MIT

Automated short-form video content pipeline for micro-SaaS distribution.

Generate TikTok/Reels/Shorts videos programmatically — script generation, text-to-speech, video composition, all automated. Ship a product, plug in a config, generate content at scale. Kill what doesn't work, keep what does.

Topic → Claude Code (script) → Edge TTS (voice) → Remotion (video) → MP4

Philosophy

The pipeline is the business. Products are experiments.

  • Ship fast: 1-2 weekends per product MVP
  • Kill fast: 30 days to prove or kill
  • Content is distribution: 5-10 videos/day across multiple accounts
  • $0 marginal cost: Claude Code Max + Edge TTS + Remotion = free per video

Quick Start

# Clone & install
git clone https://github.com/AirKyzzZ/content-engine.git
cd content-engine
npm install

# Create your first product
npm run new-product -- my-saas

# Edit the config
# → src/products/my-saas/config.ts

# Generate a video
npm run generate -- my-saas "your topic here"

# Batch generate from default topics
npm run batch -- my-saas

# Download gameplay backgrounds
npm run download -- my-saas

Architecture

content-engine/
├── src/
│   ├── engine/              # Core engine (product-agnostic)
│   │   ├── scripts.ts       # Claude Code CLI → structured scripts
│   │   ├── voice.ts         # Edge TTS + ffmpeg post-processing
│   │   ├── gameplay.ts      # YouTube download + 9:16 crop
│   │   └── render.ts        # Remotion bundle + render
│   │
│   ├── compositions/        # Video templates (React components)
│   │   ├── ChatOverBroll    # Tinder-style chat over gameplay
│   │   ├── TextOverBroll    # Text callouts over gameplay
│   │   └── shared/          # Reusable: ChatBubble, PhoneChat, etc.
│   │
│   ├── products/            # Product configs (one folder each)
│   │   └── rizzia/config.ts # Example: AI dating coach
│   │
│   └── cli.ts               # CLI entry point
│
├── public/                  # Assets (gameplay, voice, music)
└── out/{product-id}/        # Rendered MP4s per product

Product Config

Each product is a single config.ts file:

const config: ProductConfig = {
  id: "my-saas",
  brandName: "MySaaS",
  handle: "@mysaas",
  description: "What does this product do",
  audience: "Who is the target (age, interests, pain points)",
  formats: ["chat-over-broll"],
  ctaPlacement: "mid", // mid-roll CTA at sec 8-12 (3-5x better than end)

  promptInstructions: `Master prompt for script generation...`,

  topics: [
    "Default topic 1",
    "Default topic 2",
  ],

  gameplayClips: [
    { url: "https://youtube.com/watch?v=...", tag: "subway-surfer" },
  ],

  voices: {
    male: "fr-FR-HenriNeural",
    female: "fr-FR-DeniseNeural",
    narrator: "fr-FR-HenriNeural",
    rate: "+15%",
  },
};

CLI Commands

Command Description
npm run generate -- <product> "topic" Generate one video
npm run batch -- <product> [topics...] Batch generate (uses default topics if none provided)
npm run download -- <product> Download gameplay clips from YouTube
npm run new-product -- <id> Scaffold a new product config
npm run studio Open Remotion Studio for visual preview

Stack

Component Tool Cost
Script generation Claude Code CLI (claude -p) $0 (Max subscription)
Text-to-speech Edge TTS (Microsoft) $0 (free, no API key)
Audio processing ffmpeg (EQ + compression + normalize) $0
Video composition Remotion (React-based) $0 (individuals)
Gameplay footage yt-dlp (YouTube CC0 clips) $0
Posting Postiz (self-hosted) $0

Total cost per video: $0


Video Features

  • Phone-style chat UI (dark mode, avatar, status bar, message input)
  • Male + female voices reading messages (synced to visual)
  • Full-screen gameplay with subtle drift animation
  • Screen shake on message impacts
  • Configurable mid-roll or end-roll CTA
  • Emoji reactions (displayed but not spoken by TTS)
  • "@handle" watermark
  • Audio post-processing (EQ, compression, -14 LUFS normalization)

Requirements

  • Node.js 20+
  • ffmpeg + ffprobe
  • yt-dlp (for gameplay downloads)
  • edge-tts (Python CLI: pipx install edge-tts)
  • Claude Code CLI (for script generation)

Roadmap

  • ProfileScore composition (AI rates your profile)
  • BeforeAfter composition (profile transformation)
  • Carousel/slideshow composition (static tip cards)
  • Background music layer
  • Kokoro TTS integration (better French quality)
  • Analytics collector (YouTube API + TikTok API)
  • Feedback loop (LLM analyzes top/bottom performers)
  • Multi-account posting via Postiz

License

MIT

About

Automated short-form video content pipeline for micro-SaaS distribution. Ship products fast, kill fast — the pipeline is the business.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors