ClawCast is on the App Store. Anyone can download it, make an episode, and hear it free before subscribing.
Where ClawCast stands, and what’s next.
We plan in days and weeks, not quarters. ClawCast is live on iOS today. Below: where each platform stands right now, then the build work we’re pushing through next — a harder backend and a recommender you teach with swipes.
Where things stand today.
An Android build is in closed alpha. The waitlist is open — that's the only way in for now.
Apple Podcasts works today. Spotify, Overcast, and Pocket Casts are next, in an order we're still settling — tell us which you'd use.
- TodayKickoff
- Day 7TestFlight live
- Day 14Backend hardened
- Day 21Tunable
Get on TestFlight.
Internal testers in Apple's TestFlight by the end of the week.
- Day 1
App Store Connect record
Apple Developer account confirmed; app record created for com.newsletterpod.app.
- Day 2
Sign in with Apple + StoreKit
Enable Sign in with Apple for the bundle ID; create the monthly and annual subscription products.
- Day 3–4
Codemagic wired up
GitHub connected, App Store Connect API key integration added, iOS code signing enabled.
- Day 5
Backend pointer + auth secrets
AppConfiguration.swift pointed at the deployed Cloud Run; APPLE_CLIENT_ID and SESSION_SIGNING_SECRET confirmed.
- Day 6–7
First TestFlight build
Run the ios-testflight workflow, invite internal testers, watch what breaks.
Harden the backend.
Real verification, real scheduling, one full end-to-end run with a real user.
- Day 8–9
Apple token verification
Replace the placeholder path with real identity-token verification on POST /v1/auth/apple.
- Day 10–11
App Store notification signing
Signed-payload verification for POST /v1/billing/app-store/notifications.
- Day 12
Dispatcher on Cloud Scheduler
Call /jobs/dispatch-due-users every 15 minutes; evaluate Cloud Tasks for per-user enqueuing.
- Day 13–14
End-to-end with one real user
Sign in, configure sources and format, schedule, generate, subscribe in Apple Podcasts, hear it play.
Make it tunable.
Swipe-based interest replaces topic groupings as the relevance signal.
- Day 15–16
Persistent source items
New source_items Firestore collection; embed title + summary with OpenAI text-embedding-3-small at ingest.
- Day 17
Swipes + interest vector
Swipe collection in Firestore; user vector as right-mean minus left-mean, L2-normalized, cached per generation run.
- Day 18
Ranker behind a flag
Score candidates by cosine similarity before script generation; topics-based selection stays default until the flip.
- Day 19
Cold-start k-means deck
GET /v1/swipe-deck/cold-start returns ~15–20 cluster-center items; weekly refresh via Cloud Scheduler.
- Day 20–21
iOS swipe onboarding
Card-stack onboarding replaces the topics picker; a post-episode 'tune your pod' deck keeps the signal fresh.
On the website, in parallel.
The three weeks above are the iOS app and its backend. Here’s the to-do list for this site — split by audience, because the creator and listener surfaces have very different next steps.
Make signups land somewhere real.
The wizard at /creators/start works, but completed signups sit in a cookie on the visitor's browser. The team never sees them. These items close that loop.
- Now
Notify on new signups
Email Vince@theclawcast.com whenever a creator finishes the wizard, with the voice ID, feed URL, and channel choice. Until this ships, submissions are effectively lost.
- Next
Apple + Google sign-in
Replace the cookie-only wizard state with real accounts. A creator can pause, switch devices, and resume — and we get a stable server-side record of who's signed up.
- Next
Admin view of pending creators
Authenticated list of completed signups, newest first, with the voice, feed, and channels each one picked. Internal-only for the pilot.
- Later
Email preview before publishing
The wizard's done page promises a preview email before the first episode goes public. Build the approval loop that backs that promise.
Make the listener page do more than describe.
The listener page now sells the live app and plays a real episode. These items keep building it out.
- Done
App Store CTA
The homepage and /listeners point straight to the App Store, with the free-to-try story replacing the old apply-by-email flow.
- Done
Daily episode, embedded
The short daily demo show now plays inline on the homepage and /listeners, so visitors hear ClawCast before they download.
- Now
Vote on the next platform
Small form letting listeners pick the platform we ship next — Spotify, Overcast, or Pocket Casts. Feeds the iOS roadmap.
- Later
Public creator pages
Per-writer URLs (theclawcast.com/c/handle) listing recent episodes — shareable, indexable, the page a creator points their readers at.
After day 21.
The next big workstream is multi-language. Big enough that it doesn’t fit a three-week window — it touches script generation, voice selection, RSS metadata, the iOS UI, and the welcome episode all at once.
- Per-pod output language on PodcastProfileRecord, with the voice catalog filtered by language affinity.
- Source-language detection at ingest, and a decision on implicit-LLM vs explicit translation.
- iOS UI localization: extract Screens.swift copy into Localizable.strings.
- Welcome-episode MP3s per language — or skip the welcome seed for non-English users.