Skip to main content

Real-time sports data in your terminal

Project description

sportscli

Real-time sports data in your terminal. Chess, Cricket, and Football — all from a single sports command.

Requirements

  • Python 3.10+

Installation

pip install sportscli

Works the same on Linux, macOS, and Windows. On Windows, make sure your Python Scripts directory is on your PATH.

Quick Start

sports                        # Welcome screen with all available commands
sports chess live             # Live games on Lichess TV (no API key needed)
sports chess tournaments      # Current and upcoming Lichess tournaments
sports cricket live           # Live cricket scores (prompts for API key on first run)
sports football standings pl  # Premier League table

Configuration

Chess

No API key required — Lichess is fully open.

Cricket

Free API key from cricketdata.org. You will be prompted automatically on first use, or set it manually:

sports config set cricket <your-key>

Football

Free API key from football-data.org. Set it with:

sports config set football <your-key>

Keys are stored in ~/.config/sportscli/config.json.

Commands

Chess (no key required)

sports chess tournaments              # Current and upcoming tournaments
sports chess live                     # Live games by time control on Lichess TV
sports chess broadcasts               # Major chess broadcasts and events
sports chess player <username>        # Player profile, ratings, and recent games

Cricket

sports cricket live                   # Live match scores
sports cricket scorecard <match-id>   # Detailed scorecard (get ID from 'cricket live')
sports cricket schedule               # Upcoming matches

Football

League code Competition
pl Premier League
bl1 Bundesliga
sa Serie A
pd La Liga
fl1 Ligue 1
ucl UEFA Champions League
ec European Championship
wc FIFA World Cup
sports football live                  # All currently live matches
sports football standings pl          # League table
sports football fixtures ucl          # Upcoming fixtures

Config

sports config setup                   # Interactive wizard for all API keys
sports config set <sport> <key>       # Set a single API key
sports config show                    # Show stored keys (partially masked)

Development Setup

git clone https://github.com/prrockzed/sportscli.git
cd sportscli
pip install -e .

Release Process

# 1. Bump version in pyproject.toml and sportscli/__init__.py
# 2. Clean and rebuild
rm -rf dist build *.egg-info
python -m build
# 3. Upload to PyPI
twine upload dist/*

PyPI does not allow re-uploading the same version — always bump before building.

Adding a New Sport

  1. mkdir sportscli/sports/<sport>
  2. Create __init__.py, client.py, display.py, app.py following the existing pattern
  3. In cli.py: app.add_typer(<sport>_app, name="<sport>", help="...")
  4. Done — no changes to any other existing file

License

MIT

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

sportscli-0.2.0.tar.gz (12.4 kB view details)

Uploaded Source

Built Distribution

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

sportscli-0.2.0-py3-none-any.whl (16.2 kB view details)

Uploaded Python 3

File details

Details for the file sportscli-0.2.0.tar.gz.

File metadata

  • Download URL: sportscli-0.2.0.tar.gz
  • Upload date:
  • Size: 12.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for sportscli-0.2.0.tar.gz
Algorithm Hash digest
SHA256 ada706df9c9335d1f14b6596a44be4cac82738ee8e7cc2eab547f9a554f97092
MD5 73495d65a78e5ff386cfc4c18e517d15
BLAKE2b-256 ad35ed859ef55a45342b5642b81bfd653e21c6d6f0affeac1cf568f79527030f

See more details on using hashes here.

File details

Details for the file sportscli-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: sportscli-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 16.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for sportscli-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0019ac3c589a1504c843e78a1821331083d0fd02f408fcacb1bf40766dd2f85b
MD5 84e3c4b350795c6093b95c190d58b4ef
BLAKE2b-256 b6d1bf23e5abb132986bc49b028cd0849f5c22e4c272cece58805fec56d1be09

See more details on using hashes here.

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