Skip to main content
FluxMedia Logo

FluxMedia

A premium, cross-platform media portal and processing toolkit.

PyPI Version Supported Python Versions License Downloads Code Style

FluxMedia is a production-ready media manager, automated downloader, and local streaming gateway wrapped in a responsive terminal application and web interface.


📢 Latest Release: v1.7.17

  • Bandit CI/CD Scan Fix: Addressed security warnings identified by Bandit in the GitHub Actions CI pipeline by adding explicit # nosec annotations to safely bypassed operations (B104, B310, B103).

🌟 Key Features

  • Universal Extraction Core: Seamlessly download high-quality videos, playlists, audio streams, channel collections, and subtitles powered by a robust wrapper around yt-dlp.
  • Sync Play (Watch Party) [Beta]: Synchronize media playback across all connected devices on your local network, perfect for hosting local watch parties.
  • FluxMedia Web UI: A beautiful, responsive React-based web dashboard to remotely control your downloads, manage files, and host Watch Parties directly from your browser.
  • Built-in LAN Sharing Gateway: Share downloaded files instantly to any device on your local network using a built-in password-protected HTTP server with QR code access.
  • Instagram Profile Downloader [Beta]: Batch download media directly from Instagram profiles with our new custom extraction module.
  • Advanced Post-Processing: Automatically extract audio (MP3/M4A/FLAC), merge separate audio/video formats, inject descriptions and tags, and embed album artwork via FFmpeg.
  • Universal OS Support: The one-liner install.sh script automatically resolves dependencies across macOS (brew), Android Termux (pkg), and virtually all Linux package managers (apt, pacman, dnf, apk, zypper, xbps).

💻 Visual Preview

FluxMedia CLI Dashboard

FluxMedia CLI showing QR Share Gateway active on the local network.


🚀 Quick Start

1. Installation

Linux / macOS (Bash):

curl -sL https://raw.githubusercontent.com/pdev-labs/FluxMedia/main/install.sh | bash

Windows (PowerShell):

iex (irm https://raw.githubusercontent.com/pdev-labs/FluxMedia/main/install.ps1)

Alternatively, you can install directly via pip:

pip install fluxmedia

(Android/Termux Users: Pydantic-core requires compilation. See the Installation Guide for the correct pip command.)

For detailed, OS-specific manual installation instructions, please check the Installation Guide.

2. Usage

Launch the interactive console portal:

fluxmedia

Launch the newly added Web UI dashboard (also accessible by pressing W in the main menu):

fluxmedia --web

Or open the Textual TUI dashboard directly:

fluxmedia --tui

📚 Documentation

Detailed user guides and developer docs are organized in the docs/ folder:

  • 📥 Installation Guide — Step-by-step setup guides for Windows, macOS, Linux, and Android (Termux).
  • ⚙️ Configuration Guide — Explanations of config options, directories, and customization schemas.
  • 📦 Downloader Engine — Internals on formatting flags, post-processors, and download strategies.
  • 📶 LAN QR Share Portal — Guide to local HTTP streaming, REST API endpoints, and authentication tokens.
  • 🛠️ Troubleshooting Guide — Common solutions for SSL issues, Windows Defender configurations, and storage permissions.
  • 📖 Frequently Asked Questions — Answers to common developer and user questions.
  • 🏗️ Architecture Overview — Codebase directory layout, dynamic imports, and module dependencies.

🗺️ Roadmap

We are constantly improving the platform. Here are our high-level goals:

  • Milestone 1: Parallel multi-threaded downloading and expanded website extractors.
  • Milestone 2: In-terminal visual video trimming and custom TUI styling themes.
  • Milestone 3: Multi-user permissions on the share portal and upgraded web player seeking.

Check out ROADMAP.md for our complete milestones plan.


🤝 Contributing

We welcome all contributions! Whether you are fixing type errors, adding new feature modules, or enhancing the documentation:

  1. Review the Contributing Guide.
  2. Ensure you adhere to the Code of Conduct.
  3. If you modify any frontend web assets, remember to run the repack builder:
    python repack.py
    

📜 License & Credits

FluxMedia is open-source software licensed under the MIT License.

Credits

  • Core extraction engine powered by yt-dlp.
  • Terminal styling and layouts powered by rich and textual.
  • Audio tagging powered by mutagen.
Made with ❤️ by pdev-labs

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fluxmedia-1.7.17.tar.gz (1.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fluxmedia-1.7.17-py3-none-any.whl (1.3 MB view details)

Uploaded Python 3

File details

Details for the file fluxmedia-1.7.17.tar.gz.

File metadata

  • Download URL: fluxmedia-1.7.17.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for fluxmedia-1.7.17.tar.gz
Algorithm Hash digest
SHA256 35d10744ee1e95bd2219e69c403139b927baba6e347d5a1f0787ddf4d030cb12
MD5 cf8b22017861364c3df3c71f2ac5a93a
BLAKE2b-256 d3714ac616da17a3abfe170ddb15fe2cd85264c6c1a087be678fd4ea58ba48ae

See more details on using hashes here.

Provenance

The following attestation bundles were made for fluxmedia-1.7.17.tar.gz:

Publisher: publish.yml on pdev-labs/FluxMedia

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fluxmedia-1.7.17-py3-none-any.whl.

File metadata

  • Download URL: fluxmedia-1.7.17-py3-none-any.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for fluxmedia-1.7.17-py3-none-any.whl
Algorithm Hash digest
SHA256 c26285685700c353151027d3f406de65eb7bd18fad1da6948079628aaeebf0f4
MD5 dd7b129d60f1977708fae278fde72188
BLAKE2b-256 5a236736c52d5a7d6a41e7294087b8e3fd169e932f171dab612cf14eea35e7b0

See more details on using hashes here.

Provenance

The following attestation bundles were made for fluxmedia-1.7.17-py3-none-any.whl:

Publisher: publish.yml on pdev-labs/FluxMedia

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page