← All work
Membership.Platform

LPH Espace Partisans

A hockey podcast was paying two platforms to host its members and had nothing of its own. We built the fan space it now owns, on top of the memberships it already sells.

Client
Le Podcast Hockey
Role
Architecture and full build
Status
Live, in active development
Language
French
lepodcasthockey.com/espace-partisans
Drop a screenshot hereLPH Espace Partisans: members only video library and live schedule for a hockey podcast
The.Brief

Why it exists

The show sells memberships on Patreon and on YouTube, at the same tier names but different prices. Members were spread across two platforms, exclusive videos were unlisted links pasted into posts, and the website itself offered subscribers nothing.

The brief was to give the podcast a space it controls, where a paying member of either platform is recognised automatically and gets the same access, and where the community has reasons to come back between episodes.

Access is decided by tier rank, never by dollar amount. The prices differ on every platform.
What.We.Built

The pieces

01

Unified tier ladder

Tiers are read from the campaign, sorted, and given a rank. Every access check compares ranks, so the same video unlocks at the same level whether the member pays on Patreon, on YouTube or on the site.

02

Three ways in

Automatic nightly matching by email address, a connect your account flow, and a manual switch in the back office. Cancellations revoke access through a live webhook and a daily revalidation.

03

Gated video library

Exclusive episodes appear to everyone behind a lock that names the tier required, which sells the membership. Unlisted video identifiers never reach the browser of a non member.

04

Live schedule

Upcoming and running streams, public and members only, merged into one panel with countdowns. Finished streams disappear on their own instead of sitting there for a day.

05

Community features

Weekly and retro quizzes, polls with guest voting, game predictions graded automatically against the league results, player search and standings.

06

Manager back office

The show runs it without us: publish exclusives, set title rules, manage tiers and prices, moderate users, trigger backups.

Under.The.Hood

How it holds up

Vanilla JS SPAFirebase Realtime DBPHPWordPressYouTube Data APIPatreon API v2

The hard problem was the YouTube quota. Since June 2026 the search endpoint is capped at one hundred calls per day, and the live banner alone burned that before lunch. We rebuilt the whole video layer on a local catalogue stored in the database, refreshed incrementally every fifteen minutes, and moved search in house with accent insensitive scoring across titles and descriptions. Daily consumption dropped to roughly five percent of quota with zero search calls.

The stack is deliberately plain: a vanilla JavaScript single page app embedded in the existing WordPress site, a Firebase Realtime Database for state, and a PHP plugin holding every server side secret and every write that must not be forgeable. Data is exported nightly with a two week retention.

1,892Videos in the local catalogue
5%Of the daily API quota used
4Membership tiers, one ladder
3Ways a member is recognised
Next projectDynasty 168
Why.This.Matters

The same engine runs your back office.

Access rules, live data, billing, bilingual interfaces, systems people use every day without thinking about them. What changes from one project to the next is the subject, not the level of the build.

A 30 minute call, no charge.

Book