/podrain

A web-based podcast app.

Primary LanguageVueMIT LicenseMIT

Podrain

Podrain promo banner

Podrain is a web-based podcast app with offline capabilities. It was built to scratch my own itch, and there are a lot of rough edges (I would define it's current state as "usable alpha"), but I'm using the app for all of my podcast-listening needs now. Some features include:

  • Pure focus on podcasts (no radio, news, video podcasts, music, etc.)
  • Mobile-first design
  • Customizable episode queue
  • All podcast data is stored in your browser, no need to sign up for a service
  • Respects privacy, doesn't track your listening habits
  • Optionally store audio files offline for an uninterrupted listening experience
  • Easily back up all your podcast data to a file

Demo

https://podrain.github.io/podrain

Keep in mind, this version of the app is updated with the master branch, generally. If you don't mind dealing with possible occasional breaking changes, rock on! 🤘

Requirements

All you need to to use Podrain is a modern web browser.

  • Chrome (Android, desktop)
  • Chromium-based browsers (Brave, Edge, etc.)
  • Firefox (desktop)
  • ... and probably others, but the above have been confirmed to work throughout the development process.

Note about iOS

At this time, Podrain is not fully functional on iOS on any browser, Safari or otherwise. You can add feeds and listen to them, but iOS doesn't have enough storage for for downloading the audio files for offline listening.

Running the app locally (for testing and development)

Requirements

git clone https://github.com/podrain/podrain
cd podrain
yarn install
yarn dev

Then, just visit http://localhost:3000 (or whatever URL is produced from the yarn dev command) in your browser to see the app running. It's a HMR server so you should see changes to the code without having to refresh your browser.

Deployment

Using CI/CD

Formal instructions coming soon. In the meantime, you can read the Vite docs.

FTP (old school!)

  • Run NODE_ENV=production npx vite build --base=./ in the project root
  • Take the contents of the dist folder and upload it to your favorite web host via FTP

Roadmap

  • Better interface for tablet/desktop screen sizes