Free Android podcast app & player — semantic search, offline downloads, no ads
About · Features · First launch · Screenshots · Install · Developers
Every podcast app I've used feels the same. They call an open API, do word-for-word search, let you subscribe, and show Apple charts. None of them really recommend things or get personal.
Spotify and Pocket Casts do personalize, but you're paying with ads or a subscription — and Spotify's podcast UI is rough.
boxlore is a free Android podcast player that learns as you listen: natural-language search, personalized picks, podcast discovery beyond typing a show title, stream or download episodes for offline listening, and a queue you can actually manage. No ads, no paywall for the stuff that matters.
The smart layer runs on a search index that is rebuilt daily and covers popular chart podcasts — not every podcast on earth yet. It evolves every day and gets bigger. Recommendations and semantic search work best within that catalog; everything else still works as a normal podcast client (subscribe, play, download, OPML import/export).
🔮 Upcoming in the Next Release
🆕 New features: 🐛 Fixes:AI-generated summary; may contain mistakes.
Verify details in the changelog and linked pull requests.
🎉 What's New (v0.0.10) - 2026-07-17
🆕 New features:- New personalized discovery sections on Home, showing recommendations based on your listening habits, with faster loading and clearer layout.
- Library import flow now has smoother animation and clearer screens, making it easier to add podcasts to your collection.
AI-generated summary; may contain mistakes.
Verify details in the changelog and linked pull requests.
|
Search episodes by meaning, not exact keywords. "stories about startup failure" → relevant episodes, not title matches. |
On-device learning that re-ranks Home rails, Explore, queue, and downloads as you listen — taste stays on your phone. Themed discovery rails under the daypart greeting, plus Because You Like and For You picks. Read more → |
|
Swipe question cards on Learn that point you at episodes you'd never search for. Right to queue · left to dismiss · tap to play. |
No banners, no sponsored inserts, no premium tier to unlock search or recommendations. |
First launch gives you a few ways in — pick what fits how you already listen.
|
AI onboarding is the default path. A short chat about your preferences — natural language or suggested options — turns into semantic search queries, matching shows from the index, and a personalized feed to subscribe to before you enter the app. |
Import from Pocket Casts, Apple Podcasts, AntennaPod, or any app that exports OPML. Tap Import library, pick your file, and get similar-show recommendations based on what you brought over. Export anytime via Profile → Backup & Restore (OPML or full JSON). |
I know my shows opens search during setup — subscribe manually, grab similar-show suggestions if you want, or Skip Setup and explore on your own. |
Listening & playback
Mixtapes — Your home queue: up to 15 episodes from subscriptions (in-progress + unplayed new drops), scored so you can press play and keep going.
Player — Mini and full player, queue, 0.5×–1.5× speed, sleep timer, skip controls, synced transcripts, chapters, video podcasts, Android Auto.
Podcasting 2.0 — Native chapters and transcripts when publishers provide them; AI-generated fallback when they don't (beta, daily limit). Video in 16:9.
Library & offline
Subscriptions, downloads, history, and liked episodes in one place. Launch offline → land on your downloads.
Profile → Backup & Restore: OPML (any podcast app) or JSON (full boxlore backup — subs, history, likes, settings).
Smart automation
Daily briefing — Optional region-specific AI news audio with script, sources, and chapter stories.
Smart Downloads (app-wide, off by default) — Curated offline pool from subs, recommendations, and trending, within limits you set.
Auto-download (per podcast, off by default) — New episode drops → downloads automatically (notifications required).
New episode notifications — Per-podcast bell. Off by default.
Design — Material 3 / Material You, shimmer skeletons, stable lists, smooth transitions, fast image loading.
Enable Install from unknown sources in Android settings for sideloading.
Build from source
git clone https://github.com/boxcreate/boxlore.git
cd boxlore
./gradlew assembleDebug
./gradlew installDebugRequirements: Android Studio Ladybug+ · Android SDK 35+ · JDK 17 · Kotlin 1.9+
Codebase & stack
Codebase structure
| Module | Role |
|---|---|
:core:catalog |
Repositories, mappers |
:core:designsystem |
Themes, shared composables |
:core:model |
Domain models |
:core:network |
Podcast Index + edge proxy |
:feature:explore |
Search, For You, curiosity cards |
:feature:home |
Mixtape, charts, briefing |
:feature:player |
Playback UI |
:feature:briefing |
Daily briefing screen |
:feature:library |
Downloads, subs, history |
:feature:info |
Podcast & episode detail |
Tech stack
| Technology | Purpose |
|---|---|
| Kotlin | 100% Kotlin codebase |
| Jetpack Compose | UI with Material 3 |
| Coroutines & Flow | Async and reactive state |
| Retrofit 2 | REST API client |
| Room | Local database |
| ExoPlayer (Media3) | Audio and video playback |
| Coil | Image loading |
| Cloudflare Workers | Edge proxy for search & recommendations |
| bge-m3 | Embeddings for semantic search (1024-dim) |
Data sources
| Source | Data |
|---|---|
| Podcast Index API | Catalog, keyword search |
| Apple Podcast Charts | Daily trending (US, IN, GB, FR) |
Contributions welcome.
- Report bugs — Open an issue with steps to reproduce
- Suggest features — Discussions
- Submit PRs — Fork, code, open a pull request
Agent / maintainer notes: see AGENTS.md.
boxlore is source-available under the PolyForm Strict License 1.0.0. You may read and use the code for noncommercial purposes; redistribution and derivative works are not permitted. See LICENSE for details.







