Hey all,
For quite a long time now I’ve been working Pinepods. It’s a Rust based podcast management system that manages podcasts with multi-user support and relies on a central database with clients to connect to it. It’s complete with a browser based client where your podcasts and settings follow you from device to device due to everything being stored on your server. There’s installable clients on just about every platform - now including a beta build of an Android client! (Also a flatpak, aur, Mac, windows, deb, appimage, and rpm client as well)
Over time this project has really grown into something great, and many quality of life features have been baked in. The experience of using Pinepods at this point is getting close to some of the larger self-hosted projects such as Immich, and as feature complete as a client such as AntenaPods. I can’t believe that a project hasn’t previously heavily focused on becoming a fully feature complete Self-hosted Podcast platform because of how rooted in the spirit of open source the podcast ecosystem is built to be.
So many nice to haves have been added at this point:
- chapter support
- sorting/filtering/searching throughout
- RSS feed hosting for other apps to use
- Great mobile support everywhere (PWA, beta android client)
- Nextcloud/Gpodder sync support -Postgres or MariaDB
- simple API’s for things like Homepage Widgets!
And lately I’ve even been working on a feature that allows you to subscribe to hosts! This will let you follow them from show to show. I’ve built a side project called PodPeopleDB for that: https://www.pinepods.online/blog/2024/12/08/podpeople-db
Chances are, if there’s a feature in a podcast app that’s a must have for you, it’s already built in, and if it isn’t, I want to know about it so I can add it!
If you’re on the fence you can try it out without installing the server too! Check the website for more info!
Now is the perfect time to check it out and enjoy continued feature updates! Feel free to open issues or PRs if you experience any problems. Or drop a line on the discord. I’m happy to help!
GitHub: https://github.com/madeofpendletonwool/Pinepods
Official site: https://pinepods.online/
In case you’re unware. What is podcasting 2.0?
Looks cool, but fair warning, if and when Pine64 releases ear phones, your SEO results are probably in for a shock.
I get that comment often. I’ll change the name if I have to. But it’s a small open source project. My SEO results are already non-existent.
Pine64 calls them pinebuds, so I think they’re good for now.
Would have been more fun, if less accurate, to call them pinecones.
You might want to explain to your potential users what podcast 2.0 features are… I’m sure you’ve been living inside podcasts while working on this, but normal people have no idea what that term means
Excellent point, I will include communication around Podcast 2.0 and all it’s features in the future.
Why wait for the future? You could have just pitched some of those features…
Cursed tech stack and image. Project looks cool. Can you elaborate more on why you used rust for front end and python for backend? I would assume rust would have been more applicable for back end work. Then again, Im not familiar with fastAPI.
It’s a carryover from the original project. I did a complete rebuild of the frontend at one point to wasm due to rust having good frontend support with Yew. I plan to rebuild the backend too. All in due time.
I’m likely to rebuild the backend in Go, and while there will be a speed difference to a degree, the api isn’t sending complicated data. The bottleneck in response times usually isn’t what you’d make up for using a lower level language. Usually it’s more likely query times and Frontend processing. The Frontend rebuild MASSIVELY sped things up. Which is why I started there.
And yeah, doc site needs a refresh. I spend too much of my Pinepods time programming.
does this support filtering incoming episodes based on text in title? like exlcuding podcasts with “Preview” in the title for trunctated premium episodes in normal feeds? i’m amazed every piece of podcast software doesn’t include functionality like that.
Exclusion filtering! What a great idea! You can quickly filter by keyword for episodes currently but you can’t exclude certain words. I will get exclusion filtering added. The code is already in place for it!
That sounds awesome!
I’m currently using antennapod. Do you think I can switch already? Can I import my antennapod history?
With the android App in Beta I’d continue using AntennaPods along with it. With Nextcloud/Gpodder sync or RSS feed exporting Pinepods is built to be great along with your current favorite apps. Not completely replace them. The goal is that it it could replace apps, but it doesn’t have to. You should be able to listen however you want to.
I can’t believe that a project hasn’t previously heavily focused on becoming a fully feature complete Self-hosted Podcast platform
…y tho? What’s the point?
Same reasons for any Self hosted projects. Own your data, Archive the content, I like Self-hosting. Pick your favorite reason. Podcasting is built to be an open platform. It deserves open and Self Managable clients.