diff --git a/README.md b/README.md index ac1558e..2902157 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,8 @@ Lyrics are fetched using a fallback pipeline (first synced result wins): ## Usage +See `lrcfetch --help` for full command reference. Common use cases: + ```bash # Fetch lyrics for the currently playing track lrcfetch fetch diff --git a/lrcfetch/cli.py b/lrcfetch/cli.py index 8318761..9f9ab8a 100644 --- a/lrcfetch/cli.py +++ b/lrcfetch/cli.py @@ -12,7 +12,7 @@ from lrcfetch.mpris import get_current_track from lrcfetch.core import LrcManager app = typer.Typer( - help="LRCFetch — Fetch lyrics for tracks.", + help="LRCFetch — Fetch line-synced lyrics for your music player.", add_completion=False, ) diff --git a/lrcfetch/config.py b/lrcfetch/config.py index bf75ce7..436d872 100644 --- a/lrcfetch/config.py +++ b/lrcfetch/config.py @@ -20,7 +20,7 @@ load_dotenv() # .env in cwd (does NOT override existing vars) HTTP_TIMEOUT = 10.0 # ─── Cache TTLs (seconds) ─────────────────────────────────────────── -TTL_SYNCED = 86400 * 30 # 30 days +TTL_SYNCED = None # never expires TTL_UNSYNCED = 86400 # 1 day TTL_NOT_FOUND = 86400 * 3 # 3 days TTL_NETWORK_ERROR = 3600 # 1 hour diff --git a/lrcfetch/core.py b/lrcfetch/core.py index 56c9654..a6b7f64 100644 --- a/lrcfetch/core.py +++ b/lrcfetch/core.py @@ -47,7 +47,7 @@ def _normalize_unsynced(lyrics: str) -> str: # Maps CacheStatus to the default TTL used when storing results -_STATUS_TTL: dict[CacheStatus, int] = { +_STATUS_TTL: dict[CacheStatus, Optional[int]] = { CacheStatus.SUCCESS_SYNCED: TTL_SYNCED, CacheStatus.SUCCESS_UNSYNCED: TTL_UNSYNCED, CacheStatus.NOT_FOUND: TTL_NOT_FOUND, diff --git a/pyproject.toml b/pyproject.toml index 7d9e387..dd25c62 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -5,7 +5,7 @@ build-backend = "hatchling.build" [project] name = "lrcfetch" version = "0.1.0" -description = "Fetch lyrics for tracks." +description = "Fetch line-synced lyrics for your music player." readme = "README.md" requires-python = ">=3.13" dependencies = [