Skip to content

jennyg0/modern-stack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

37 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🎧 tl;dr - AI-Powered Audio Content Platform

"I built this because I have 47 unread articles in my bookmarks right now that I'm not going back to, newsletter subs I don't read, and I wanted to create a better way to consume content while on the go."

Transform any article, URL, or topic into personalized podcast-style audio content in under 2 minutes. Perfect for commuting, working out, or multitasking.

✨ Features

🎭 9 Unique Voice Personalities

  • Professional Anchor - CNN-style news delivery
  • Dynamic Duo - Two hosts discussing topics conversationally
  • Pirate News - Ahoy! News with a nautical twist
  • Late Night Host - Comedy-infused commentary
  • Valley Girl - Trendy, casual delivery
  • Gen Z - Internet-native, meme-aware style
  • Professor - Academic, educational approach
  • Coffee Chat - Intimate, friend-to-friend conversation
  • Casual - Relaxed, everyday tone

⚑ Real-time Processing

  • Topic to audio in under 2 minutes
  • Live article fetching with intelligent source prioritization
  • Multi-source content synthesis and summarization

πŸ€– AI-Powered Intelligence

  • Smart Content Curation - Firecrawl + domain filtering
  • Advanced Summarization - GPT-4 powered content analysis
  • Multi-Style Script Generation - Adapts tone for each voice personality
  • Conversation Generation - Natural back-and-forth dialogue for duo modes

πŸ“± Social & Discovery

  • Browse audio content created by other users
  • Share your generated podcasts
  • Email subscriptions for daily personalized briefings
  • Responsive design across all devices

πŸ—οΈ Architecture

Inkeep Agent Pipeline

This project showcases a sophisticated multi-agent workflow using the Inkeep Agents SDK:

graph LR
    A[πŸ“° Ingest Agent] --> B[✍️ Summarizer Agent]
    B --> C[🎀 TTS Agent]
    C --> D[πŸ’Ύ Catalog Agent]
    
    A --> E[Firecrawl Tool]
    B --> F[OpenAI Tool]
    C --> G[ElevenLabs Tool]
    D --> H[Convex Tool]
Loading

Agent Flow

  1. πŸ” Ingest Agent (src/agents/agents.ts:5-11)

    • Uses firecrawlTool for intelligent web scraping
    • Domain filtering and content prioritization
    • Batch processing with fallback mechanisms
  2. πŸ“ Summarizer Agent (src/agents/agents.ts:14-20)

    • Uses summarizeTool (OpenAI GPT-4)
    • Context-aware content analysis
    • Multi-style script generation for different personalities
  3. 🎡 TTS Agent (src/agents/agents.ts:23-29)

    • Uses elevenLabsTool for voice synthesis
    • Supports conversation mode with multiple speakers
    • Professional-quality audio generation
  4. πŸ—‚οΈ Catalog Agent (src/agents/agents.ts:32-38)

    • Uses convexStoreTool for storage and metadata
    • Social features and discovery
    • Analytics and user preferences

Key Technical Implementations

πŸ”— Agent Orchestration (src/agents/graph.ts)

export const podcastGraph = agentGraph({
  id: "tldr-podcast-graph",
  name: "TLDR Podcast Graph", 
  description: "Ingest β†’ Summarize β†’ TTS β†’ Store",
  defaultAgent: ingestAgent,
  agents: () => [ingestAgent, summarizerAgent, ttsAgent, catalogAgent],
});

🎭 Conversation Mode (src/lib/dialogueGenerator.ts)

  • AI-generated natural dialogue between multiple speakers
  • Speaker personality injection
  • Sequential voice synthesis with different ElevenLabs models

🌐 Smart Content Acquisition (src/lib/inkeep.ts)

  • Domain prioritization (Reuters, BBC, TechCrunch over Reddit, Twitter)
  • Batch scraping with intelligent fallbacks
  • Content cleaning and filtering

πŸ› οΈ Tech Stack

AI & Agents

  • OpenAI GPT-4 - Advanced summarization, script generation, dialogue creation
  • Inkeep Agents SDK - Multi-agent orchestration, tool composition, analytics
  • ElevenLabs - Premium voice synthesis with 9+ personalities

Backend & Database

  • Next.js 15 - App Router, API routes, server components
  • Convex - Real-time database, file storage, mutations
  • TypeScript - Full type safety across the entire stack

Content & Communication

  • Firecrawl - Intelligent web scraping with domain filtering
  • Resend - Professional email delivery and scheduling
  • Autumn.js - Subscription management and payments

Infrastructure

  • Vercel - Edge deployment and serverless functions
  • Tailwind CSS - Modern design system

πŸš€ Getting Started

Prerequisites

npm install

Environment Variables

Create a .env.local file:

# Core APIs
OPENAI_API_KEY=your_openai_key
ELEVENLABS_API_KEY=your_elevenlabs_key
FIRECRAWL_API_KEY=your_firecrawl_key

# Inkeep Analytics (optional)
INKEEP_API_KEY=your_inkeep_key

# Database & Storage
CONVEX_DEPLOYMENT=your_convex_deployment
NEXT_PUBLIC_CONVEX_URL=your_convex_url

# Email & Subscriptions
RESEND_API_KEY=your_resend_key
AUTUMN_API_KEY=your_autumn_key

Development

npm run dev

Open http://localhost:3000 to see the result.

πŸ“– Usage Examples

Basic Article Conversion

// Input: Any article URL
const url = "https://techcrunch.com/2024/01/15/ai-breakthrough";

// Output: Personalized audio in your chosen style
// Duration: ~2 minutes processing time

Topic-Based Generation

// Input: Any topic
const topic = "latest developments in quantum computing";

// Output: Multi-source synthesis + audio generation
// Sources: Automatically curated from top news outlets

Conversation Mode

// Two-host dialogue with distinct personalities
// Alex (analytical) + Sam (curious) discussing the topic
// Natural interruptions, questions, and reactions

πŸ† What Makes This Special

Inkeep Integration Excellence

  • Multi-Agent Architecture - Proper agent separation and coordination
  • Tool Composition - Custom tools integrated seamlessly
  • Analytics Integration - Real-time metrics via Inkeep Analytics MCP
  • Credential Management - Secure API handling

OpenAI Integration Excellence

  • Advanced Prompt Engineering - Context-specific prompts for different personalities
  • Content Intelligence - Smart summarization with quality filtering
  • Dynamic Style Adaptation - AI adapts writing for 9 different voice personalities
  • Follow-up Processing - Real-time responses to user queries

Production-Ready Features

  • Error Handling - Graceful degradation and retry mechanisms
  • Performance - Optimized for speed with concurrent processing
  • Scalability - Built for real users with proper database design
  • User Experience - Polished UI/UX with real-time feedback

🎯 Perfect For

  • Busy Professionals - Stay informed during commutes
  • Fitness Enthusiasts - Learn while working out
  • Multitaskers - Consume content while doing other activities
  • Accessibility - Audio-first approach for various needs
  • Content Creators - Generate audio content from any source

🀝 Contributing

This project demonstrates advanced AI agent orchestration and could be extended with:

  • Additional voice personalities
  • More content sources
  • Enhanced analytics dashboard
  • Mobile app development
  • API for third-party integrations

πŸ“„ License

MIT License - Feel free to use this as inspiration for your own AI agent projects!


Built with πŸ’™ using Inkeep Agents SDK and OpenAI - Showcasing the future of AI-powered content transformation.

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published