rm duplicate coop post

This commit is contained in:
2026-07-09 09:13:50 -04:00
parent 76dc241cb6
commit 44c8d2ab9e
@@ -1,59 +0,0 @@
---
layout: post
title: "coop credits: turning watch time into currency"
date: "2026-06-10"
categories: [tech, homelab, plex, projects]
tags: [plex, tautulli, overseerr, economy, self-hosted, matrix]
---
okay so this one's been brewing for a while — like a good pour-over, you can't rush it. i've been running plex for the homelab crew for years now, and the one thing that always bugged me was the request dynamic. someone wants a movie, they text me, i find it, i grab it, they say thanks. repeat forever. it's not sustainable, and honestly it's not fun after the fiftieth "can you add blade runner 2049 again" message (it's already there, kevin).
so i built something. it's called **coop credits** — ticker symbol `$COOP` if you're feeling fancy — and it turns the one thing people actually do on plex into the thing that lets them request more: watch time.
## the grind: how $COOP works
the flow is dead simple. users sign in with their plex account. that's it for auth — plex oauth handles it, no extra passwords, no "forgot my password" tickets for me to deal with. once they're in, tautulli starts tracking their watch time behind the scenes. every minute watched earns credits. spend credits to request movies and tv shows through overseerr.
think of it like an arcade. you put in time, you get tokens, you spend tokens on what you want to play. except the arcade is my server room and the games are 4k remuxes of the lord of the rings extended editions.
## the pricing: why it scales
here's where it gets interesting. credits aren't flat-rate. the cost of a request scales with two factors: **drive storage usage** and **episode count**.
why? because storage isn't free, and requesting the entire 23-season run of a procedural costs a hell of a lot more than one movie. if the drives are getting full, prices go up — a gentle throttle that keeps the library curated instead of becoming a dumping ground. if someone wants a single film? cheap. someone wants all 400 episodes of law and order svu? that's gonna cost 'em. it's a little economy that self-regulates.
## the shortcut: ko-fi integration
not everyone wants to grind. some folks just want to request stuff now, and that's fine — i wired up ko-fi so people can buy credits directly. **$5 gets you 500 credits, $10 gets you 1000.** ko-fi handles the payment processing so i don't have to deal with any of that, and credits land in their account automatically.
it's not about monetizing the server — it's about covering the ever-growing storage costs and giving people a fast lane when they don't feel like earning their way up.
## the sunset: overseerr steps back
here's a thing i did that might be controversial: i **sunsetted overseerr as a user-facing service**. it's still running, still doing the heavy lifting behind the scenes for actually processing requests — but users don't touch it directly anymore. coop credits sits in front of it now.
the reason is simple: overseerr is a great tool but it's a *tool*. it doesn't have a concept of cost, priority, or scarcity. it's just "request button go brr." by putting coop credits in front, every request flows through the economy first. did you earn enough? can you afford this one? is the library getting full and prices are high? that context matters, and overseerr was never designed to provide it.
so now the flow is: plex auth → coop credits dashboard → earn or buy → spend → credits talk to overseerr's api under the hood. users see a clean interface that shows their balance, watch history, and what things cost. overseerr sees requests coming in from a trusted source. everybody wins.
## the comms: matrix via ess
quick sidebar on infrastructure — i also deployed **element server suite (ess)** for the homelab's matrix stack. this gives us a proper self-hosted, encrypted messaging setup. why mention it here? because the media economy needs a place to live. announcements about new content, price changes, community discussion — it all happens in matrix now instead of scattered across discord and text messages.
ess made the matrix deployment stupid easy compared to my last attempt at running synapse manually. it's got proper federation support, voice and video calling, and the encryption actually works without me babysitting it. if you're running any kind of homelab community, having a self-hosted comms layer you control is worth its weight in gold.
## the stack: media improvements
while i was in there plumbing coop credits together, i took the opportunity to clean up the broader media stack too. the usual suspects — plex, tautulli, overseerr, radarr, sonarr — all got updated, containerized properly, and wired into the new flow. tautulli's api is the backbone of the whole credits system, so getting that dialed in was priority one.
the whole thing runs on docker compose, reverse-proxied, the standard homelab playbook. nothing exotic, just well-oiled.
## the philosophy
at the end of the day, coop credits is about one thing: making a shared media library feel like a *community* instead of a vending machine that only i operate. when people earn what they request, they watch more intentionally. when they can buy credits, they contribute to the infrastructure. when prices fluctuate with storage, the whole thing stays sustainable without me playing librarian.
it's a little economy. it's a little weird. and honestly? it's the most fun i've had with the homelab in a while.
pour yourself a coffee, spin up tautulli's api, and start counting minutes. the grind is the game.
-dustin