# Jellybloom

A desktop media client for Jellyfin. Built with React, TypeScript, Vite, and Tauri.

## What it does

- Browse and play your Jellyfin library - movies, shows, music, live TV
- Discover new titles via TMDB integration with gap-finding against your library
- Watchlist sync with Trakt.tv
- Rich detail pages with cast, crew, awards, filming locations, and reviews
- Customizable player with subtitle search, bookmarks, chapter navigation, and audio passthrough
- Desktop-native feel via Tauri (Windows, macOS, Linux)

## Dev

```bash
npm install
npm run dev          # browser dev
npm run tauri:dev    # desktop dev
npm run build        # production web build
npm run tauri:build  # production desktop build
```

## Stack

- React 19 + TypeScript
- Vite + Tailwind CSS
- Tauri 2
- Zustand for state
- TanStack Query for data fetching
- Vidstack + hls.js for playback
- libass-wasm for subtitle rendering
