Skip to main content

A system tray application for monitoring livestreams status

Project description

StreamCondor

StreamCondor is a lightweight system-tray app that monitors livestreams and opens them with Streamlink.

Features

  • 🔔 Real-time stream monitoring
  • 🎯 Multi-platform support (Twitch, YouTube, and other Streamlink-supported sites)
  • 🖥️ System tray integration with status icons
  • 🎨 Custom player support (mpv, VLC, or your preferred player)
  • ⚙️ Per-stream quality, notification, and argument overrides
  • 🌐 Favicon fetching and caching
  • 📋 Quick launch from clipboard URL

Supported OS: Linux, Windows, macOS (desktop environments with a system tray)

Screenshots

System Tray menu Streams Settings window App Settings window Stream Setting window Stream Setting window Stream Setting window

Requirements

  • Python 3.12+
  • A desktop environment with system tray support
  • Streamlink-compatible media player (optional, but recommended)

Install (PyPI)

pip install streamcondor

Run:

streamcondor

Run from source

git clone https://github.com/tarzasai/StreamCondor.git
cd StreamCondor
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt -r requirements-dev.txt
pip install -e .
streamcondor

Alternative without editable install:

PYTHONPATH="$PWD/src" .venv/bin/python -m streamcondor.main

Command-line options

-c, --config PATH         Path to custom configuration file
-l, --log-level LEVEL     DEBUG | INFO | WARNING | ERROR (default: INFO)
    --denoise-logging     Reduce dependency log noise

Example:

streamcondor --log-level DEBUG --denoise-logging

Configuration

StreamCondor stores a JSON config file per user.

  • Linux: ~/.config/StreamCondor.json
  • Windows: %APPDATA%\StreamCondor.json
  • macOS: ~/Library/Application Support/StreamCondor.json

If the file does not exist, StreamCondor creates one with defaults.

Minimal example:

{
	"check_interval_mins": 5,
	"default_quality": "best",
	"default_notify": false,
	"streams": {
		"https://www.twitch.tv/some_channel": {
			"url": "https://www.twitch.tv/some_channel",
			"name": "some_channel",
			"type": "twitch"
		}
	}
}

Development

Bootstrap a local development environment:

./setup_dev.sh

Run tests (recommended from repository root):

PYTHONPATH=src .venv/bin/python -m pytest

Or use the helper script:

./run_tests.sh

Troubleshooting

  • No tray icon: verify your desktop environment provides a system tray (some Wayland setups need extra integration).
  • Stream does not open: ensure streamlink and your target media player are installed and available in PATH.
  • Plugin/auth-related issues: check your Streamlink user config and plugin setup.
  • To troubleshoot with logs:
streamcondor --log-level DEBUG

Reporting issues

Open an issue at https://github.com/tarzasai/StreamCondor/issues and include:

  • OS and desktop environment
  • Steps to reproduce
  • Relevant terminal logs

License

MIT License - see LICENSE for details.

Acknowledgments

This is a third-party tool and is not affiliated with any streaming platform.

Project details


Download files

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

Source Distribution

streamcondor-0.0.post1.tar.gz (410.2 kB view details)

Uploaded Source

Built Distribution

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

streamcondor-0.0.post1-py3-none-any.whl (126.4 kB view details)

Uploaded Python 3

File details

Details for the file streamcondor-0.0.post1.tar.gz.

File metadata

  • Download URL: streamcondor-0.0.post1.tar.gz
  • Upload date:
  • Size: 410.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for streamcondor-0.0.post1.tar.gz
Algorithm Hash digest
SHA256 b240d239e458f77048b330d0b8e3ff89427c7bae79dfe0f06186d63789122fca
MD5 7293402ab08646c563897c11eb9656d1
BLAKE2b-256 7ad305223721b60d6e84aeb228a6300ac5712e898417d3beda6ce2dd60e31f1d

See more details on using hashes here.

Provenance

The following attestation bundles were made for streamcondor-0.0.post1.tar.gz:

Publisher: publish.yml on tarzasai/StreamCondor

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

File details

Details for the file streamcondor-0.0.post1-py3-none-any.whl.

File metadata

File hashes

Hashes for streamcondor-0.0.post1-py3-none-any.whl
Algorithm Hash digest
SHA256 96241fbf729955e1512383e0fd342706809725ec6b229c88e6b1be7b81cda69c
MD5 4b283bfc6e593184277b218fb095b3a4
BLAKE2b-256 28b30dcdeb2a6dc689e9900ff5c8e7b7ccab8902912bec67cfe61fad2b93f54a

See more details on using hashes here.

Provenance

The following attestation bundles were made for streamcondor-0.0.post1-py3-none-any.whl:

Publisher: publish.yml on tarzasai/StreamCondor

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

Supported by

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