Skip to main content

Device Apps2026Project demo

Cinelas TV — Self-Hosted Media Browser

A Google TV app that brings a personal media library, film discovery, and streaming-service links into one remote-friendly interface.

Platforms
Google TV · Self-hosted server
Focus
One discovery view · Playback or provider link · Personal watchlists

Project view

Product walkthroughs

Four short demonstrations, ordered by the clearest view of the core experience.

4 videos

  1. 01 · Start here

    Open a streaming provider

    Choose a streaming provider for a title outside the local library and open its Google TV app.

  2. 02

    Search and play owned media

    Search the personal catalogue and start streaming an owned title directly from Jellyfin.

  3. 03

    Launch into a personal home screen

    Launch Cinelas TV, choose a viewer profile, and browse with the remote.

  4. 04

    Explore details and watch a trailer

    Open a title to review its key details and preview the trailer before deciding what to watch.

The story

The problem

A personal media library and streaming subscriptions are usually spread across different apps, making it harder to see all available viewing options in one place.

What it delivers

I built a remote-friendly interface that plays locally owned media through Jellyfin and shows regional streaming providers for other titles. Users can open supported provider apps or save titles to their own lists.

At a glance

  • One discovery view

    Browse films and series independently of any one streaming service’s catalogue.

  • Playback or provider link

    Play items from the Jellyfin library or open a supported streaming-provider app.

  • Personal watchlists

    Save titles to personal lists organised by viewer profile.

Built with

  • React
  • TypeScript
  • Capacitor
  • Android
  • .NET
  • PostgreSQL
  • Jellyfin
  • nginx
  • Docker
  • Raspberry Pi
  • TMDB
  • TV-focused client

    The React and Capacitor client handles the remote-control interface, while a Raspberry Pi hosts nginx, the .NET API, PostgreSQL, and Jellyfin.

  • Separate discovery and playback

    TMDB supplies metadata and regional provider availability. Jellyfin serves personally owned media through proxied URLs, keeping catalogue discovery separate from local playback.

Continue exploring

More projects

View all projects →︎