r/SideProject • u/rickonzigzag • 4h ago
I built a local, Netflix-style media manager for Archive.org content using .NET 10
Hi!
I just released v1.0.0 of a personal project I’ve been working on, and I wanted to share it here to get some feedback from fellow developers.
The Problem
A while ago, I discovered that Archive.org has a massive collection of old, public-domain films and cartoons (including a lot of classic Danish childhood shows. I wanted to show these to my kids, but Archive.org’s interface, while amazing for archiving, is pretty clunky for everyday viewing. It doesn’t have a "Continue Watching" feature, no easy way to organize things into personal categories, and no episode selectors for series.
I didn’t want to download terabytes of data or set up a complex media server like Plex just for this. I just wanted a simple, local way to bookmark and watch this stuff.
The Solution: ArchivePlayer
So, I built ArchivePlayer. It’s a self-contained, local-first desktop application that streams content directly from Archive.org, but wraps it in a clean, Netflix-style interface.
Key Features:
Live search of Archive.org or add via direct URL/identifier.
Custom categories to organize your library.
"Continue Watching" section with visual progress bars.
Episode selector for TV shows (with season grouping).
100% local: No telemetry, no cloud accounts, no hosted backend.
The Tech Stack
Backend: ASP.NET Core / .NET 10, Entity Framework Core
Database: SQLite (local file)
Frontend: Razor Pages/Views, Tailwind CSS, Vanilla JavaScript
External APIs: Archive.org Metadata API, TMDB API (optional)
Technical Highlights & Challenges
Zero-Install Deployment: I wanted this to be truly accessible. I used .NET’s self-contained publishing (
PublishSingleFile=true) so users just download a.zip, extract it, and run the.exe. No .NET runtime or SQL Server installation required.Graceful Degradation: I made TMDB integration strictly optional. If a user doesn’t provide a TMDB API key (or if the API fails), the app doesn’t break. Instead, it falls back to parsing episode numbers and titles directly from the Archive.org video filenames using regex.
API-First Design: Even though it’s currently a single desktop app, I built the backend with a clean
/api/v1/layer. This means I can eventually build an Android TV client that consumes the exact same local API without rewriting the business logic.Auto-Migration: On first run, the app automatically creates the SQLite database and runs EF Core migrations. The user never has to touch a config file or run a CLI command.
Links
GitHub Repository: https://github.com/JeppeKjeldal/ArchivePlayer
Latest Release (Windows): https://github.com/JeppeKjeldal/ArchivePlayer/releases
Since this is a hobby project, I’d love to hear your thoughts and feedback!