Podcastr Live Website (https://podcastr-green.vercel.app)
Welcome to Podcastr, an AI-powered Software-as-a-Service (SaaS) application designed to revolutionize podcast creation and management. This application leverages cutting-edge AI technologies to provide features such as text-to-multiple-voices functionality and AI-generated images, all built using Next.js 14 and Convex.
Podcastr is designed for podcast creators who want to enhance their production quality with AI. By providing a platform where text can be converted into multiple voices and custom images can be generated for each episode, Podcastr simplifies the process of creating professional-grade podcasts.
- Text-to-Multiple-Voices Functionality: Convert written content into speech using a variety of AI-generated voices, giving each character or segment a unique sound.
- AI-Generated Images: Automatically generate custom images for podcast episodes, improving visual appeal and audience engagement by just providing a suitable prompt according to your choice.
- Built with Next.js 14: Leveraging the latest features of Next.js for optimal performance and scalability.
- Powered by Convex: Utilizing Convex for efficient and secure data management and AI model integration.
- Podcast Discovery: Users can explore a wide variety of podcasts from different genres.
- Create Podcasts: Registered users can create, edit, and upload their podcasts.
- Podcast Playback: Seamless integration with audio players for an engaging listening experience.
- User Authentication: Sign up and log in functionality to manage podcasts. One can also conveniently login used other social sites like Google and GitHub.
- Responsive Design: Optimized for both desktop and mobile experiences.
- Finding right Podcast: Users can search for podcasts according to their areas of interests.
- Frontend: React, Next.js, Tailwind CSS
- Backend: Node.js, Express, MongoDB
- Authentication: Clerk for user authentication
- Hosting: Vercel for frontend deployment, Convex for backend storage and API management
Before you begin, ensure you have met the following requirements:
- Node.js (v16.0.0 or later)
- npm or yarn
- Git
-
Clone the repository:
git clone https://github.com/yourusername/podcastr.git cd podcastr
-
Install dependencies:
npm install
or
yarn install
-
Set up environment variables: Create a
.env.local
file in the root directory and add your configuration settings (API keys, database URLs, etc.).Example:
NEXT_PUBLIC_API_KEY=yourapikey CONVEX_API_URL=https://yourconvexinstance.com
-
Run the development server:
npm run dev
or
yarn dev
Open http://localhost:3000 with your browser to see the result.
.
├── components # Reusable components (e.g., PodcastCard, Layout, etc.)
├── pages # Application routes (Home, Discover, Create, etc.)
├── public # Static assets (images, icons, etc.)
├── styles # Tailwind CSS configuration and global styles
├── utils # Utility functions and helpers
└── README.md # Project documentation
- Navigate to the Text-to-Voice section in the application.
- Enter your text into the provided input field.
- Select the desired voices for different parts of the text.
- Click
Generate
button to create the audio file. - Listen to or download the generated audio.
- Go to the AI-Generated Images section.
- Enter the description or keywords for the image you need.
- Click
Generate Image
button to create a custom image for your podcast episode. - View and download the generated image.
Additional configuration options can be set in the .env.local
file or within the application settings. Ensure you have all required API keys and service URLs configured properly.
Contributions are welcome! Please follow these steps to contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature/YourFeature
). - Make your changes.
- Commit your changes (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature/YourFeature
). - Open a pull request.
Please ensure your code adheres to the existing code style and includes appropriate tests.