Skip to content

side-projects-overkill/Showtime

Repository files navigation

Showtime

Stream your media from any remote storage with rich metadata and a stunning interface.

A modern, self-hosted web application for streaming movies and TV shows from WebDAV, FTP, and SMB drives with automatic TMDB metadata integration.

Home Page

Features

  • 🌐 Multiple Storage Types: Connect to WebDAV, FTP, and SMB/CIFS drives
  • 🎬 Rich Metadata: Automatic metadata fetching from TMDB for movies and TV shows
  • 📱 Modern Streaming: Smooth playback with Video.js and responsive design
  • 🎨 Beautiful UI: Dark mode with glassmorphism effects and smooth animations
  • 🔒 Secure: Encrypted credential storage for your connections

Screenshots

Home Page

Beautiful landing page with hero section and feature showcase.

Home Page

Settings & Storage Management

Easy-to-use interface for adding WebDAV, FTP, and SMB connections.

Settings Page

Browse Media

Navigate your storage and select media files to stream.

Browse Page

Getting Started

Prerequisites

  • Bun installed on your system
  • TMDB API key (get one at TMDB)

Installation

  1. Clone the repository

  2. Install dependencies:

    bun install
  3. Create a .env file based on .env.example:

    cp .env.example .env
  4. Add your TMDB API key to the .env file:

    TMDB_API_KEY=your_api_key_here
    

Running the Application

Start the development server:

bun run dev

Open http://localhost:3000 in your browser.

Usage

  1. Add Storage Connection: Go to Settings and add your WebDAV, FTP, or SMB connection
  2. Browse Files: Navigate to the Browse page and select your storage
  3. Play Media: Click on any video file to start streaming
  4. View Metadata: The app will automatically search TMDB for metadata

Supported Video Formats

  • MP4
  • MKV
  • AVI
  • MOV
  • WebM
  • M4V
  • MPG/MPEG

Future Enhancements

  • Jellyfin integration
  • Plex integration
  • Subtitle support
  • Playback queue
  • Watch history
  • Electron app packaging

Tech Stack

  • Framework: Next.js 14 with App Router
  • Language: TypeScript
  • Styling: Tailwind CSS
  • Video Player: Video.js
  • Package Manager: Bun

License

MIT

About

Self-hosted media streaming from WebDAV, SMB, and FTP with TMDB integration.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published