Generate entire podcasts from a prompt using the power of AI. Podcastr lets users write a prompt, generate audio using OpenAI + ElevenLabs (or similar), and store/share episodes securely with built-in authentication and storage.
- 🧠 Generate podcasts from a single prompt using AI
- 🔐 Secure user login with Clerk
- 🎧 AI-generated audio output (using OpenAI / ElevenLabs)
- 💾 Upload + store podcast audio with file storage
- 📚 View and manage your generated podcasts
- ⚡ Realtime backend using Convex
- 📦 Deployed with production-ready infrastructure
| Tech | Purpose |
|---|---|
| Next.js | React framework + App Router |
| Convex | Realtime backend & database |
| Clerk | Authentication & user management |
| OpenAI API | Content generation |
| UploadStuff | File uploads + audio storage |
| Tailwind CSS | Styling |
git clone https://github.com/austintran/podcastr.git
cd podcastrnpm install
# or
yarnCreate a .env.local file:
NEXT_PUBLIC_CONVEX_URL=https://compassionate-ostrich-171.convex.cloud
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your-clerk-pk
CLERK_SECRET_KEY=your-clerk-secret
OPENAI_API_KEY=your-openai-keynpx convex dev # start Convex local server
npm run dev # start Next.jsnpm run dev # Run dev environment
npm run build # Build for production
npm run start # Start production server
npx convex dev # Start local Convex dev deployment
npx convex deploy # Deploy schema/functions to cloud/app - Next.js app router pages
/components - UI + functional components
/convex - Convex schema/functions
/public - Static assets
/lib - Utility functions
/hooks - Custom React hooks
- Users log in with Clerk.
- They write a podcast prompt.
- The frontend calls OpenAI to generate content and voice.
- The resulting audio is stored via UploadStuff.
- Convex stores metadata and links audio to the user.
- Users can replay or regenerate episodes later.
Coming soon: [your demo link here]
Austin Tran
Portfolio
