SlopScupper
00 crowd

tacos-terminal-lyrics

100% vibecoded, sorry. workflow is to pull lrc's from lrclib, turn them into wlrc's (or lrc) and then display them
Open repo on GitHubgithub.com/tacoproz1/tacos-terminal-lyrics
Python · ★ 69 · 2 forks · MIT · paperwork by the Cap'mmostly ai (inferred)light human (inferred)works-on-my-machine (inferred)other
listed 11 hours ago by tacoproz1 · last checked 2 hours ago
The owner didn't write this. This repo never submitted itself. The Cap'm found it on a truffle trawl and wrote its paperwork from what GitHub already shows. Picked by hand by the Cap'm on 2026-09-11: a terminal lyrics visualizer that shows word-synced lyrics in big ASCII block letters, whose owner says it is "100% vibecoded, sorry.". 69 stars; MIT license. The owner did not submit this. Votes count; awards don't until the owner claims it.

I'm not calling your project slop! Geeze, it's a joke... Do you own this repo?

Log in with GitHub as tacoproz1. There's no account to make: SlopScupper only asks GitHub who you are (read:user), never sees your code, and keeps just your id, login and avatar. Then you can:

  • Keep it, on your terms. Commit your own slopscore.md (spec) and press Refresh. Your paperwork replaces the Cap'm's, and you can submit it for Slop of the Day.
  • Take it down. One click on Remove. It stays gone; the trawl never brings it back.

Log in with GitHub

Can't log in as the owner? Request a takedown. No login needed, and a trawled listing comes down right away.

GitHub says
100% vibecoded, sorry. workflow is to pull lrc's from lrclib, turn them into wlrc's (or lrc) and then display them
created
2026-02-22 · pushed 1 week ago · 16 commits · 2 contributors
languages
Python 94%Shell 6%
paperwork
licensereadme 42% health
dependencies
no dependency graph (no manifest, or disabled) · OSV.dev, checked 11 hours ago

Disclosures, inferred by the Cap'm

slopbucket
vibe-coded
category
other
ai_generated
mostly
human_touch
light
status
works-on-my-machine
language (detected)
pythonshell
license (detected)
mit

The Cap'm's log

The Cap'm wrote this paperwork, not the owner. This repo never submitted itself to SlopScore. The Cap'm picked it by hand: a terminal lyrics visualizer that shows word-synced lyrics in big ASCII block letters, whose owner says it is "100% vibecoded, sorry.". It carries the MIT license. The disclosures above are his best guess from what GitHub shows.

Is this yours? Commit a real slopscore.md and press Refresh to replace this, or remove the listing in one click. There's no account to make: you log in with GitHub.

README — the repo's own words, folded up so the grading fits on one screen

lrc-tools

[EVERY FILE IS VIBECODED IF THAT WASNT OBVIOUS ENOUGH,SORRY]

/\ /\ /\ /\ /\ /\ /\ /
oh yea and because of this i recommend to use ai or someone else for troubleshooting cause i dont offer support for this project as of now

ALSO THIS BUILD SUCKSSSS, in regards to the lyric accuracy (faster the spoken lyrics in song the more accurate the wlrc will be) also non mainstream songs occasionally dont get pulled cause they are simply not in lrclib there are of course tons of small other issues, which i will have fixed eventually

Terminal lyrics visualizer with word-level sync. Displays song lyrics in large ASCII block letters in your terminal, synchronized to whatever is playing in your media player.

  ██   ██ ███████ ██      ██       ██████
  ██   ██ ██      ██      ██      ██    ██
  ███████ █████   ██      ██      ██    ██
  ██   ██ ██      ██      ██      ██    ██
  ██   ██ ███████ ███████ ███████  ██████

Dependencies (install these in a venv with pip, or get them off the aur)

Required:

  • python >= 3.12
  • python-pyyaml
  • ffmpeg (provides ffprobe)
  • playerctl

Optional but you should really really get it:

  • python-mutagen — reads embedded audio tags for better lyrics matching
  • python-syncedlyrics — fallback lyrics source (NetEase, etc.)
  • python-librosa — onset detection for more accurate word-level timing

Install

AUR (havent made it yet, prolly wont though)

paru -S lrc-tools

Manual (do this)

git clone https://github.com/tacoproz1/tacos-terminal-lyrics
cd tacos-terminal-lyrics
bash setup.sh
pip install pyyaml mutagen syncedlyrics --break-system-packages

Quickstart

mkdir -p ~/lyrics/raw ~/lyrics/processed

# 1. Download lyrics for your music library (if using bash and not fish run export PATH="$HOME/.local/bin:$PATH")
lrc-fetch --audio-dir ~/music --output-dir ~/lyrics/raw
# 2. Process into word-level timing
lrc-processor --lrc-dir ~/lyrics/raw --audio-dir ~/music \
              --output-dir ~/lyrics/processed --wlrc

# 3. Start the visualizer, play something in your media player
lrc-vis --lrc-dir ~/lyrics/processed --wlrc

Steps 1 and 2 are one-time setup per library. lrc-vis is the daily driver.

How it works

lrc-fetch scans your music directory, reads embedded tags (or parses filenames), and downloads synced LRC lyrics from LRCLIB with syncedlyrics as a fallback.

lrc-processor takes standard LRC files (phrase-level timing) and splits long phrases at natural boundaries — commas, conjunctions, duration — and optionally converts to word-level WLRC format using even distribution or librosa onset detection.

lrc-vis hooks into your media player via playerctl (MPRIS), finds the matching LRC/WLRC file for the current track, and renders lyrics as large block letters centered in the terminal. Handles seeking, pausing, and track changes automatically.

LRC file matching

Output filenames must match audio filenames. Artist - Title.mp3Artist - Title.lrc. lrc-fetch handles this automatically. If you source LRC files elsewhere, name them to match.

Configuration

Copy config_example.yaml to ~/.config/lrc-tools/config.yaml and pass it with --config:

lrc-vis --config ~/.config/lrc-tools/config.yaml --lrc-dir ~/lyrics/processed --wlrc

Key settings:

processor:
  max_phrase_duration: 2.5   # split phrases longer than this (seconds)
  max_words_per_phrase: 8

puller:
  search_threads: 5
  download_threads: 5
  preserve_structure: true   # mirror audio dir layout in lyrics dir

visualizer:
  default_font: block        # block or compact
  refresh_rate: 0.05

Custom fonts

Fonts are defined in JSON. See custom_fonts.json for the format.

lrc-vis --lrc-dir ~/lyrics/processed --wlrc \
        --custom-fonts custom_fonts.json --font mini

extra

for clearing metadata in locally downloaded files which may initially interfere with the process or other uses, refer to: https://gist.github.com/ISawSau/d3ea9ffd8b346be55c7bc68831637c47

for more dynamic OS/tool support check out: https://github.com/SlurryMixx/-tacos-terminal-lyrics-SPOTIFYPORT

vibecoded rust rewrite of my project(sorta), has higher standard wlrc/lrc repos(more accurate lyrics) go to: https://github.com/mgtaco/terminal-lyrics

License

MIT

tacos-terminal-lyrics

Read the rest on GitHub

Scan report · 2026-09-11
  • Prohibited terms or links
  • Repository eligibility
  • slopscore.md paperwork
  • Content policy
  • Risk review — +10 owner has no other public repos

0 comments

log in to comment.

report this listinglog in to report