Skip to content

Latest commit

 

History

889 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenAir: Breathe Life into Your Podcast Journey

OpenAir is a free and open-source podcast app built with Flutter, empowering you to explore and enjoy the world of audio storytelling. Dive into a vast library of podcasts, personalize your listening experience, and connect with a vibrant community of fellow enthusiasts.

Key Features

  • Explore: Discover a diverse range of podcasts with intuitive browsing by category, popularity, and personalized recommendations.
  • Listen: Stream podcasts seamlessly with smooth playback controls and offline listening capabilities for uninterrupted enjoyment.
  • Organize: Create custom playlists, manage subscriptions efficiently, and track your listening progress effortlessly.
  • Share: Recommend your favorite podcasts to friends and contribute to the OpenAir community by suggesting features and shaping the future of the app.

Built with Openness in Mind

OpenAir embraces open-source principles. The codebase is freely accessible, allowing anyone to contribute, report issues, and propose improvements. We believe in fostering a collaborative environment to create the best possible podcast experience for everyone.

Get Involved

Clone the repository: https://github.com/OpenAir-Podcast/openair.git

Read the contribution guidelines: click here for contribution guidelines

Join the discussion: click here for discussion

Getting Started

OpenAir fetches podcast information from the PodcastIndex API. To run OpenAir, you will need to obtain your own API credentials from PodcastIndex.

Prerequisites:

Running the App:

  1. Clone the repository:

    git clone https://github.com/OpenAir-Podcast/openair.git
  2. Navigate to the project directory:

    cd OpenAir
  3. Create a .env file in the root of the OpenAir project directory.

  4. Add your API credentials to the .env file:

    For PodcastIndex (required):

    PODCASTINDEX_API_KEY=YOUR_API_KEY_HERE
    PODCASTINDEX_API_SECRET=YOUR_API_SECRET_HERE

    Important: Replace YOUR_API_KEY_HERE and YOUR_API_SECRET_HERE with your actual API key and secret from the PodcastIndex developer portal.

    For Fyyd (optional, for additional podcast discovery):

    FYYD_CLIENT_ID=YOUR_FYYD_CLIENT_ID
    FYYD_CLIENT_SECRET=YOUR_FYYD_CLIENT_SECRET

    For Firebase (required for user authentication and data synchronization):

    FIREBASE_API_KEY=YOUR_API_KEY
    FIREBASE_APP_ID=YOUR_APP_ID
    FIREBASE_MESSAGING_SENDER_ID=YOUR_SENDER_ID
    FIREBASE_PROJECT_ID=YOUR_PROJECT_ID
    FIREBASE_AUTH_DOMAIN=YOUR_AUTH_DOMAIN
    FIREBASE_STORAGE_BUCKET=YOUR_STORAGE_BUCKET
    FIREBASE_ANDROID_CLIENT_ID=YOUR_ANDROID_CLIENT_ID
    FIREBASE_IOS_CLIENT_ID=YOUR_IOS_CLIENT_ID
    FIREBASE_IOS_BUNDLE_ID=YOUR_IOS_BUNDLE_ID

    Note: You will need to create a Firebase project and enable Authentication and Cloud Firestore to get these credentials. Alternatively, run flutterfire configure to generate firebase_options.dart and skip the env vars.

  5. Install dependencies:

    flutter pub get
  6. Run the app on your device or emulator:

    flutter run

Contributing

We welcome contributions of all kinds! Please refer to the contribution guidelines document (link above) for details on how to get started.

License

OpenAir is licensed under the MIT License (see LICENSE file for details).

Disclaimer

OpenAir is provided "as is" without warranty of any kind, express or implied. The application relies on data provided by the PodcastIndex API and other third-party services. OpenAir-Podcast is not responsible for the accuracy, completeness, legality, or availability of podcast content accessed through OpenAir, nor for any interruptions or errors in the PodcastIndex API or other third-party services. Users are solely responsible for their use of the application and for adhering to the terms of service of any external platforms they access through OpenAir.

About OpenAir

OpenAir is proudly developed and maintained by its contributors—who are enthusiastic podcast listeners themselves. Dedicated to building open-source tools for the community, by the community, we hope you enjoy using OpenAir!

Screenshots

Mobile

Screenshot_20250913_155418

Screenshot_20250826_120748

Screenshot_20250826_120811

Screenshot_20250826_120831

Screenshot_20250826_122518

Screenshot_20250826_122404

Desktop

Screenshot_20251110_192037

Screenshot_20251110_192157

Screenshot_20251110_192221

Desktop status. Linux and Windows builds ship from CI on every tag; macOS builds are also included after the 0.18.21+73 release. Browse, search, subscribe, stream, and download all work on desktop out of the box. Sign-in and cloud sync are not yet available on desktop: lib/firebase_options.dart currently only covers Android, iOS and web. To enable Firebase on macOS add a macOS app in the Firebase console and re-run flutterfire configure --platforms=macos (Windows/Linux are not supported by Firebase Auth). See flatpak/README.md, packaging/snap/README.md, and packaging/winget/README.md for packaging details.

About

OpenAir is a free and open-source cross-platform podcast application built using Flutter. Empowering you to explore and enjoy the world of audio storytelling. Dive into a vast library of podcasts, personalize your listening experience, and connect with a vibrant community of fellow enthusiasts.

Topics

Resources

Contributing

Stars

10 stars

Watchers

2 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages