Stream your personal movie library to any phone, tablet or TV on your Wi-Fi, from a Windows laptop or an Android phone. No account, no subscription.
LocalFlix is a small program that reads one folder of movies and shows them as a web page. It runs on a Windows laptop. It can also run on an Android phone with the free Termux app, so you do not need a laptop (it should work, but I have not tested it on every phone). Any phone, tablet, TV or computer on the same Wi-Fi can open that page and play the movies. The Wi-Fi can come from a home router or from a phone hotspot. An Android TV app shows the same page and plays movies with a better player, so it opens more kinds of files than a TV browser. Nothing leaves your own network, and you do not need internet to watch.
- Home rows made from your folders, a Browse page with filters, and search
- Posters made from your video files (needs ffmpeg), or from TMDB if you give it a key
- Subtitles from a folder, from the video itself, or sent from your device
- Continue where you stopped, and a question for the next file in the folder
- Movies that a device cannot play are changed while they play (needs ffmpeg)
- A TV app made for the remote control, with no mouse pointer
- Runs on a Windows laptop, or on an Android phone with Termux
- Works with a home router or with a phone hotspot (no internet needed to watch)
You do not need the whole project to run LocalFlix. Get only what you need from the Releases page:
| I want to... | Download | Then read |
|---|---|---|
| Run the server (Windows laptop, or Android phone with Termux) | LocalFlix-Server.zip |
Setup guide |
| Put the app on my Android TV | LocalFlix-TV.apk |
TV app guide |
The green Code button on this page gives you the whole project, with the TV app source too. You only need that if you want to change the code or build the TV app yourself.
Read the Complete setup guide. It explains every step in simple words, from installing Python to watching on your TV. You do not need to know about computers.
You need Windows 10 or 11, Python 3.10 or newer, and ffmpeg (optional, but recommended). Download and extract LocalFlix-Server.zip, open PowerShell in the extracted folder, then:
py -m pip install -r requirements.txt
py localflix.py --movies "D:\Films"If you cloned the repo instead of using the ZIP, run cd server first.
LocalFlix prints a Direct IP address, for example http://192.168.1.33:8080. Open it on any device on the same Wi-Fi. If a phone or TV cannot connect, Windows is probably blocking it. See Step 7 of the setup guide.
| What you want to do | Guide |
|---|---|
| Install everything and watch your first movie (Python, ffmpeg, firewall, fixed address, phone and TV) | docs/setup-guide.md |
| Name your folders and files so titles and groups look right | docs/library.md |
| Put the LocalFlix app on an Android TV | docs/tv-app.md |
| Add subtitles and fix the timing | docs/subtitles.md |
| Start LocalFlix by itself when your TV is on | docs/tv-autostart.md |
| Use an Android phone as the server, with no laptop (Termux) | docs/phone-server.md |
| Use a phone hotspot instead of a router | docs/hotspot.md |
| Fix a problem | docs/troubleshooting.md |
server/ everything you need to run LocalFlix (this is what LocalFlix-Server.zip contains)
localflix.py server entry point
lf/ server code: library scan, posters, media, routes
static/ web interface (HTML, CSS, JS)
requirements.txt Python packages
fix_firewall.ps1 removes the hidden python.exe block rule
tv_monitor.py starts the server when your TV is on the Wi-Fi
install_tv_monitor_task.ps1
android-tv/ Android TV app (Kotlin), open this folder in Android Studio
docs/ guides (written in simple words)
.github/workflows/ release.yml builds LocalFlix-Server.zip for each release
I make a release by pushing a version tag. The release workflow then packs the server/ folder into LocalFlix-Server.zip and adds it to the Releases page.
Bug reports, ideas and pull requests are welcome. Read CONTRIBUTING.md first, and follow the Code of Conduct. Security problems go through SECURITY.md. Changes are listed in CHANGELOG.md.
LocalFlix is free software under the GNU General Public License v3.0. See LICENSE.