LibreLyrics LibreLyrics
Open Source • Python 3.10+

Fetch lyrics,
beautifully synced.

An open-source Python library & CLI for fetching synced lyrics from music providers through a powerful, extensible plugin architecture.

$ pip install librelyrics
terminal

$ librelyrics https://open.spotify.com/track/4cOdK2...

Found: Bohemian Rhapsody by Queen

Lyrics type: synced

[00:00.00] Is this the real life?

[00:04.10] Is this just fantasy?

[00:08.27] Caught in a landslide,

[00:11.46] No escape from reality.

✓ Saved to ./lyrics/Bohemian Rhapsody.lrc

Everything you need for lyrics

A complete toolkit for fetching, syncing, and managing lyrics — from CLI power tools to a fully extensible Python API.

🎤

Synced Lyrics

Fetch plain, line-synced, or rich word-level synced lyrics. Export to standard or Enhanced LRC format with precision timestamps.

🔌

Plugin Architecture

Extend LibreLyrics with custom providers via a clean plugin API. Distribute plugins as standard PyPI packages.

📦

Batch Downloads

Download lyrics for entire albums or playlists in a single command with progress tracking and status reports.

⌨️

CLI & Library

Use from the terminal with a rich interactive CLI, or import as a library in your Python projects. Your choice.

⚙️

Smart Config

Platform-aware JSON configuration with per-plugin settings, interactive editor, and sensible defaults.

🔄

Automatic Retry

Built-in exponential back-off with configurable retry counts and delays for resilient fetching across providers.

Simple. Powerful. Flexible.

Works as a command-line tool or as a Python library. Choose what fits your workflow.

As a Library

from librelyrics import LibreLyrics, LyricsType

lib = LibreLyrics()

# Fetch synced lyrics for a track
response = lib.fetch(
    "https://open.spotify.com/track/...",
    lyrics_type=LyricsType.SYNCED,
)

# Export as LRC
print(response.to_lrc())

As a CLI

# Single track
librelyrics https://open.spotify.com/track/...

# Album — batch download
librelyrics https://open.spotify.com/album/...

# Manage configuration
librelyrics config show
librelyrics config edit

# Install a plugin
librelyrics plugin install librelyrics-genius

How it works

Three steps to perfectly synced lyrics.

📥
Step 1

Install

A single pip install gets you the CLI and Python library.

🔗
Step 2

Pass a URL

Give it a track, album, or playlist URL. The plugin system auto-detects the provider.

🎵
Step 3

Get Lyrics

Receive perfectly synced lyrics in LRC or Enhanced LRC format, ready for any player.

Ready to get started?

Dive into the documentation, explore the API, or build your own plugin.