From 1e24eaa9af49c638f8605c9c731c883fc069e996 Mon Sep 17 00:00:00 2001 From: nmemmert Date: Wed, 22 Jul 2026 14:36:41 -0400 Subject: [PATCH] Replace Spotify show embed on /episodes with custom player; v1.1.6 LatestEpisodePlayer fetches the most recent episode from /api/episodes (Anchor RSS) and renders it with the centered cinematic layout. The Spotify show iframe is removed; platform buttons and HeadlinerWidget remain below as before. Co-Authored-By: Claude Sonnet 4.6 --- package.json | 2 +- src/App.tsx | 33 ++++++++++++++++++++++----------- 2 files changed, 23 insertions(+), 12 deletions(-) diff --git a/package.json b/package.json index 08c5823..27a81cd 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "siteforge", "private": true, - "version": "1.1.5", + "version": "1.1.6", "type": "module", "scripts": { "dev": "vite", diff --git a/src/App.tsx b/src/App.tsx index e31370b..105ce29 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1578,6 +1578,27 @@ function FinishedSeriesPage({ content }: { content: SiteContent }) { ) } +function LatestEpisodePlayer({ content }: { content: SiteContent }) { + const [audioUrl, setAudioUrl] = useState('') + const [title, setTitle] = useState('') + + useEffect(() => { + fetch('/api/episodes') + .then(r => r.ok ? r.json() : Promise.reject()) + .then((data: { episodes?: { title: string; audioUrl: string }[] }) => { + const latest = data.episodes?.[0] + if (latest?.audioUrl) { + setAudioUrl(latest.audioUrl) + setTitle(latest.title) + } + }) + .catch(() => {}) + }, []) + + if (!audioUrl) return
+ return +} + function EpisodesPage({ content }: { content: SiteContent }) { const siteTitle = content.seo?.title || DEFAULTS.seo.title usePageMeta( @@ -1596,17 +1617,7 @@ function EpisodesPage({ content }: { content: SiteContent }) { {content.episodesSeoIntro || 'Verse by Verse with Nate is an expository Bible teaching podcast where we go through Scripture one verse at a time. Each episode digs into the text carefully and practically, helping you understand what the Bible says, what it means, and how to live it out. New episodes released regularly — subscribe on Spotify or your favorite podcast platform.'}

-