# 🎙️ Podcast Recorder A modern, user-friendly desktop application for recording and managing podcast episodes. Built with Electron and React, this application provides a seamless experience for podcast creators. ![Podcast Recorder Screenshot](screenshot.png) ## ✨ Features ### 🎯 Core Functionality - **High-Quality Audio Recording** - Professional-grade audio capture - Configurable bitrate, sample rate, and channels - Real-time audio monitoring - Automatic backup during recording ### 🎛️ Audio Settings - **Customizable Recording Parameters** - Bitrate: Up to 256kbps - Sample Rate: Up to 48kHz - Channel Configuration: Mono/Stereo - Microphone Selection ### 💾 File Management - **Organized Storage** - User-specific directories - Automatic file naming - Backup system during recording - Easy file organization ### 🔄 Upload Integration - **Seamless Publishing** - Direct upload to podcast hosting - Progress tracking - Automatic metadata handling - Support for multiple environments ### 🛠️ Technical Features - **Built with Modern Technologies** - Electron for cross-platform support - React for responsive UI - FFmpeg integration for audio processing - Secure file handling ## 🚀 Getting Started ### Prerequisites - Node.js (v14 or higher) - npm or yarn - FFmpeg (automatically installed by the application) ### Installation 1. Clone the repository: ```bash git clone https://github.com/yourusername/podcast-recorder.git cd podcast-recorder ``` 2. Install dependencies: ```bash npm install ``` 3. Start the development server: ```bash npm run dev ``` 4. Build the application: ```bash npm run build ``` ## 🎨 Usage 1. **Launch the Application** - Start the application - Enter your email for user-specific storage 2. **Configure Settings** - Select your microphone - Adjust audio settings - Choose save directory 3. **Start Recording** - Click the record button - Monitor audio levels - Use the pause feature when needed 4. **Save and Upload** - Stop recording when finished - Review the recording - Upload to your podcast hosting platform ## 🔧 Configuration ### Audio Settings ```json { "audioSettings": { "bitrate": 256000, "sampleRate": 48000, "channels": 2 } } ``` ### Directory Structure ``` PodcastUpptokur/ └── [email]/ ├── recording_name.webm └── recording_name_saved.webm ``` ## 🛠️ Development ### Project Structure ``` podcast-recorder/ ├── src/ │ ├── components/ │ ├── services/ │ └── App.tsx ├── electron/ │ ├── main.cjs │ └── preload.cjs └── public/ ``` ### Available Scripts - `npm run dev` - Start development server - `npm run build` - Build for production - `npm run package` - Package the application ## 🤝 Contributing 1. Fork the repository 2. Create your feature branch (`git checkout -b feature/AmazingFeature`) 3. Commit your changes (`git commit -m 'Add some AmazingFeature'`) 4. Push to the branch (`git push origin feature/AmazingFeature`) 5. Open a Pull Request ## 📝 License This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. ## 🙏 Acknowledgments - FFmpeg for audio processing - Electron team for the framework - React team for the UI library - All contributors and users ## 📞 Support For support, please open an issue in the GitHub repository or contact the maintainers. --- Made with ❤️ by [Your Name/Organization]