Collections
Group a franchise or a universe, sync the contents from a Trakt, MDbList or IMDb list, and let it order itself chronologically rather than by release date.
Everything below is the part you actually use — browsing, watching and listening. If you are looking for scanning, plugins and deployment, that lives on theserver page.
Each library opens on a mosaic of its own artwork with a live count of what is inside. Filter and sort the grid, jump by letter, or switch to Collections and For You. Posters carry the things you care about at a glance — 4K, Dolby Vision, HDR10, TrueHD, DTS, the TMDB score and the Rotten Tomatoes percentage.

Detail pages lead with the backdrop, then the cast rail with character names, then the episodes — each with its own still, air date, runtime and summary.
Vora analyses each file for silence and black frames and clusters the results across a whole season, so Skip Intro, Skip Recap andSkip Credits appear exactly when they should — and the seekbar paints the bands so you can see them coming. Each profile decides whether intros and credits skip on their own. Mid- and post-credits scenes never auto-skip; you get aSkip to Scene button instead, because skipping a stinger is not a convenience. Markers can be edited by hand and locked so the next scan leaves them alone.

Most of what separates a pleasant self-hosted library from an annoying one happens in the half-second between pressing play and the picture appearing. Here is what Vora does in it.
Rather than assuming what a device can handle from its user agent, each client probes its own decoders and reports the result: which of H.264, HEVC, VP9 and AV1 actually decode; which of AAC, AC3, E-AC3, Opus, FLAC and MP3 it accepts; which containers it will open; how many audio channels are available; whether the screen can render HDR10, HLG or Dolby Vision; and whether the decoder is 10-bit or 8-bit.
Two details that matter in practice. Android only claims HEVC when both the 8-bit and 10-bit decoders exist, because a decoder that advertises HEVC and then chokes on a 10-bit file is worse than one that never claimed it. And on Android TV, Vora detects when the connected receiver can bitstream AC3, E-AC3 or DTS — so a surround track is passed through to the amp instead of being quietly downmixed to stereo.
Vora does not look at one file and decide yes or no. It takes every copy of the title you own and every audio track inside each one, scores all of those combinations against what your device just told it, and picks the cheapest path that will genuinely play. Video and audio are decided separately, so a file with one unsupported audio track gets its video copied straight through while only the sound is re-encoded.
The scoring has opinions. A 4K source scaled down beats a native 720p copy, because the picture is better. The closest-fitting source wins over a needlessly large one. The default audio track gets a nudge — and a track with “commentary” in its name gets pushed firmly down the list, because nobody means to start a film on the director's commentary.
When it does transcode, the output is H.264 and AAC over HLS — the combination essentially everything can play. Transcoding an HDR source tone-maps it to SDR, and the player badge and history record what you were actually served rather than what the file claims, so nothing says 4K HDR while you are watching 1080p SDR.
Container and codecs all supported. The file goes over untouched.
Codecs fine, container wrong. Repackaged into MP4, no frames re-encoded.
Something truly cannot play. GPU-accelerated where hardware allows.
Playback settings are per profile and per device, so capping your phone on mobile data does not touch the television. Set a maximum bitrate, a maximum resolution and a channel limit; a preference can only ever ask for less than the hardware can do, never more. The server can separately cap remote streams so someone watching from a hotel does not saturate your upload.
An administrator picks the house priority between three profiles —Client Preference, Direct Stream Preference, which avoids transcoding almost at any cost, and Bandwidth Optimized, which trades picture for upload headroom and caps each resolution to a bitrate ceiling.

Three different answers to “what now?” — what the world is watching, what you already own and have not started, and what is about to arrive.
Popular, upcoming and curated rows from TMDB and MyAnimeList, with anything already on your server flagged In library so you never chase something you own. Bookmark the rest to your watchlist, and pick which rows appear.

For You builds rows out of your own shelves — “Because you like Animation”, top-rated and unwatched — so a library that has grown past browsing still surfaces something worth starting.

A release calendar in month, week or day view covers what is landing next, and the watchlist keeps everything you flagged in one place across every device.



Bring your own IPTV playlists and EPG sources and Vora turns them into one grid: categories with counts, region and resolution filters, channel search, favourites, and a preview window that plays the current programme while you keep browsing. Pause and rewind live TV, and schedule a recording for an episode or a whole series from inside the player.
Favourites belong to your profile rather than the device, so a channel you star on the television is already starred on your phone.



Open a programme in the guide and you get three choices: play the channel,record this episode, or record the series. A series recording takes a retention rule — keep everything, or only the latest 5, 10 or 20 — and Vora schedules each new episode as the guide predicts it, dropping the oldest when the limit is reached. Cancel one and it asks whether you meant this episode or the whole series.
Recordings live on the DVR tab beside the guide, grouped by programme and split into Completed, Upcoming and Failed. A finished recording that is still being processed says so rather than playing you a half-written file. Where Comskip has flagged the ad breaks, a Skip commercial button appears while you are inside one — offered, never automatic.
Live television can also be paused. With timeshift permission, a channel gets a real scrub bar, skip back ten seconds and skip forward thirty — the same controls you would expect from a set-top box, on a stream that is still going out live.
Recording and timeshift are separate per-user permissions, and DVR users can be given a storage quota so one person cannot fill the disk.
Not a bolted-on music tab — a full audio app that keeps playing in the background, on the lock screen, and in the car.
Artists, albums, genres, liked songs, top tracks and daily mixes, with a full-screen player that tints itself from the album art. Lyrics scroll in time with the track, the queue is one tap away, and crossfade, an equalizer and a sleep timer are built in.
The player and album pages show what you are actually hearing —Hi-Res · FLAC 96 kHz, Lossless or the MP3 bitrate — and artist pages carry a biography from Last.fm. With AI playlists on, every song is also described by mood and energy, so you can browse the library by mood.

In the web player, turn on the Synth and the music moves on screen as bars, waves or a ring around the cover, coloured from the album art or from your theme. It runs alongside the lyrics, and each device remembers how you left it.





Search the directory, subscribe, and get new episodes as they land. Position is remembered per episode and follows you between devices.

Stations browse like a library, favourites come first, and because a station list plays as a real queue, previous and next skip between stations — on the phone and on the head unit alike.

Group a franchise or a universe, sync the contents from a Trakt, MDbList or IMDb list, and let it order itself chronologically rather than by release date.
Hand-built playlists for video or audio, reorderable, shareable across your profiles.
A rule tree — match all or any, per-type fields, live preview — so “unwatched 4K comedies over 100 minutes” stays correct as the library changes.


Vora does not have a chatbot bolted to the side. It uses a model for four specific jobs that are otherwise tedious hand work — and every one of them is off until you turn it on and supply your own OpenAI key.
Set a collection's list provider to AI List and type what you want in plain language — “Every movie and show for Marvel Cinematic Universe”. Vora works out what belongs, pulls in every film and season, and rechecks on the cadence you set. Tickmirror the list exactly and anything that drops off the list leaves the collection too.
This is for franchises and shared universes. For “all my kung-fu movies”, a smart collection with rules is the better tool and costs nothing.

Release order and story order are rarely the same thing, and working out the difference by hand is a weekend lost to forum arguments. Pick AI Chronological Order, describe how it should run, and the timeline becomes a sort option viewers can switch to — with auto-sync filing anything new into the right slot rather than onto the end.

With the recommendations plugin enabled, Vora embeds your library and uses it to build the suggestion rows. Leave it off and For You still works — it falls back to the local engine, which ranks by what you have not watched and how well it scored.

Switch on AI playlists and each profile gets a weekly set ofMade for you by AI playlists built around what it actually plays, plus aBridge that walks from one of its sounds to another. A Blendmeets another profile halfway. Or type what you are after — “a road trip that starts mellow and builds” — into Make me a playlist for…, and pick a length or let it choose.
Every song comes out of your own library, found by searching the library itself, so nothing invented or missing can turn up, and parental controls still apply. Describing 24,000 songs costs under a dollar, once; each request after that is a fraction of a cent.
Any profile can be opted out, and then nothing about its listening is sent to OpenAI.
Because it is your key and your bill, the server keeps a log: which feature made the call, which profile triggered it, which model answered, how many prompt and completion tokens it used, and what it is estimated to have cost. Filter by date or by feature. Nothing runs up a bill quietly in the background.

Most media servers make asking for something its own chore: a separate app, a separate login, a form. Vora folds it into the thing people already do. When a viewer adds a title to their watchlist and that title is not in the library, it becomes a request automatically — no second interface, no explaining to your family where the request page is.
If the server is connected to Radarr or Sonarr, approved requests go straight there. You decide per user whether they may request at all, and whether their requests need your nod or approve themselves. Two people asking for the same film join one request rather than creating two.
From the viewer's side it just reads as status on the title they wanted: Request pending, then Downloading, then Available in library — and an email when it lands, if the server sends mail.


Each profile keeps its own watch state, ratings, recommendations, layout and theme. Parental controls pick allowed ratings separately for films, television and music, hide anything unrated, and restrict which libraries and IPTV providers a profile can even see.

Scheduled access windows decide when a profile can sign in at all — useful for school nights, and quieter than an argument.

Choose which rows appear on Home and in what order, reorder the navigation itself, and swap the client to a different visual template. Templates can even be scheduled, so a seasonal look arrives and leaves on its own.
Home is not only films and shows. Your favourite channels and radio stations, new podcast episodes, the latest albums and your recent recordings each get a row of their own, and a row with nothing in it stays out of the way.


Vora is moving quickly. These are the next things on the bench — no dates, because dates on a one-person project are a promise nobody should make.
Android ships first and is on its way to the Play Store, so installing it on a phone or a television stops involving a sideload and starts updating itself.
Native clients for the three other boxes people actually own, each following its own platform's conventions. They will land as betas, behind Android.More on those.
Books as a first-class library alongside films, television and music — shelves, metadata, covers and reading position, handled the same way everything else is.
Today you choose from the bundled looks. Next, build your own: pick the colours and drop in your own background images, then keep it to yourself or hand it to the household.
The clients already hold more than one server. The goal is for several servers to feel like one library — search, watchlist and continue-watching spanning all of them instead of making you remember which box has what.