https://github.com/booze33/ai_podcast
The goal of this project is to develop a Software as a Service (SaaS) application specifically designed for podcast management. The application will allow users to create, manage, and distribute podcasts with ease. Key features include user authentication, podcast creation with CRUD.
https://github.com/booze33/ai_podcast
clerkauth convex nextjs openai reactjs tailwindcss
Last synced: 3 months ago
JSON representation
The goal of this project is to develop a Software as a Service (SaaS) application specifically designed for podcast management. The application will allow users to create, manage, and distribute podcasts with ease. Key features include user authentication, podcast creation with CRUD.
- Host: GitHub
- URL: https://github.com/booze33/ai_podcast
- Owner: Booze33
- Created: 2024-06-21T11:45:01.000Z (about 2 years ago)
- Default Branch: dev
- Last Pushed: 2024-06-29T21:31:44.000Z (about 2 years ago)
- Last Synced: 2025-01-08T10:49:35.102Z (over 1 year ago)
- Topics: clerkauth, convex, nextjs, openai, reactjs, tailwindcss
- Language: TypeScript
- Homepage: https://ai-podcast-chi.vercel.app/
- Size: 3.75 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## π Table of Contents
1. π€ [Introduction](#introduction)
2. βοΈ [Tech Stack](#tech-stack)
3. π [Features](#features)
4. π€Έ [Quick Start](#quick-start)
5. πΈοΈ [Snippets (Code to Copy)](#snippets)
6. π [Assets](#links)
7. π [More](#more)
A cutting-edge AI SaaS platform that enables users to create, discover, and enjoy podcasts with advanced features like text-to-audio conversion with multi-voice AI, podcast thumbnail Image generation and seamless playback.
If you're getting started and need assistance or face any bugs, join our active Discord community with over **34k+** members. It's a place where people help each other out.
- Next.js
- TypeScript
- Convex
- OpenAI
- Clerk
- ShadCN
- Tailwind CSS
π **Robust Authentication**: Secure and reliable user login and registration system.
π **Modern Home Page**: Showcases trending podcasts with a sticky podcast player for continuous listening.
π **Discover Podcasts Page**: Dedicated page for users to explore new and popular podcasts.
π **Fully Functional Search**: Allows users to find podcasts easily using various search criteria.
π **Create Podcast Page**: Enables podcast creation with text-to-audio conversion, AI image generation, and previews.
π **Multi Voice AI Functionality**: Supports multiple AI-generated voices for dynamic podcast creation.
π **Profile Page**: View all created podcasts with options to delete them.
π **Podcast Details Page**: Displays detailed information about each podcast, including creator details, number of listeners, and transcript.
π **Podcast Player**: Features backward/forward controls, as well as mute/unmute functionality for a seamless listening experience.
π **Responsive Design**: Fully functional and visually appealing across all devices and screen sizes.
and many more, including code architecture and reusability
Follow these steps to set up the project locally on your machine.
**Prerequisites**
Make sure you have the following installed on your machine:
- [Git](https://git-scm.com/)
- [Node.js](https://nodejs.org/en)
- [npm](https://www.npmjs.com/) (Node Package Manager)
**Cloning the Repository**
```bash
git clone https://github.com/adrianhajdin/jsm_podcastr.git
cd jsm_podcastr
```
**Installation**
Install the project dependencies using npm:
```bash
npm install
```
**Set Up Environment Variables**
Create a new file named `.env` in the root of your project and add the following content:
```env
CONVEX_DEPLOYMENT=
NEXT_PUBLIC_CONVEX_URL=
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=
CLERK_SECRET_KEY=
NEXT_PUBLIC_CLERK_SIGN_IN_URL='/sign-in'
NEXT_PUBLIC_CLERK_SIGN_UP_URL='/sign-up'
```
Replace the placeholder values with your actual Convex & Clerk credentials. You can obtain these credentials by signing up on the [Convex](https://www.convex.dev/) and [Clerk](https://clerk.com/) websites.
**Running the Project**
```bash
npm run dev
```
Open [http://localhost:3000](http://localhost:3000) in your browser to view the project.
#