Show HN: Qling – iOS podcast player with deep personalization

1 bjar2 2 6/28/2025, 2:07:03 PM apps.apple.com ↗
Hi HN,

I have been actively listening to podcasts for many years. But I found myself typically going back to the same couple of shows every time, and even though I liked these shows the individual episodes had a big variety in how interesting I found them. That made me wonder, is it possible to always leave a podcast feeling inspired?

That is why I decided to build Qling. The idea has been in the back of my mind since 2022, however since I have a full time job, it was difficult to embark on such an ambitious side project.

Until I found GPT-4.

I consider myself a decent engineer, but the speedup I gained working with LLMs enabled me to take on a project like this one.

I built Qling as a platform that aims to find novel, inspiring and also new content tailored for each user. The platform scores podcast episodes by inspiration and merit. I recently also added previews to give bite sized highlight snippets that can be scrolled through in a TikTok/Reels-like fashion.

How it works:

– The ingestion engine ingests ~20k new episodes/week

– Transcripts: Whisper-large-v3-turbo and Meta-Llama-3-8B-Instruct on an A6000 GPU farm

– Scoring: episode embeddings + speaker credibility + insight + inspiration

– Stack: Django + Postgres + Redis on Heroku; SwiftUI client

Try it:

- iOS app: https://apps.apple.com/app/qling-podcast-player/id6740029729

- Simple landing page: https://www.qling.app/

Looking for feedback on:

1. Do highlight snippets help you decide faster?

2. Are the “inspiring” picks accurate or cheesy?

3. Any UX issues?

4. Do you find any new and unexpectedly great content?

I’ll be in the thread all day — ask me anything and I’ll ship fixes asap.

Thanks for checking it out!

Comments (2)

r1290 · 4h ago
Cool. Can you share more about the tech? Ingestion engine - is this a background task that scrapes the web? You download the mp4 and convert to transcripts then generate embeddings? For each embedding of an episode - how do you break it down? Summary the episode and embed it with metadata? Are you using pydantic ai for structured output? Celery for tasks? Just a curious dev
bjar2 · 4h ago
Ingestion engine, it is indeed a cron job that runs once a day to get the latest podcast episodes posted. Yes it scrapes the web for episodes and then populates the database. And yup yup, I transcribe the audio to text, and process the text to get the embeddings using embedding models. The secret sauce is using language models to find promising snippets within each episode by running a sliding window over the transcript. So I actually make different types of embeddings, for highlights and also for episodes. I also make use of the metadata in podcast episodes to enhance recommendations, mainly by deriving the strength of the source making the content.

You are spot on, I use celery for tasks, many different kinds of tasks actually, super handy tool to have, it truly enhances what I am able to do on Heroku. My devops life becomes much more comfy

No comments yet