MCPcopy Index your code
hub / github.com/capable-average/tagTonic

github.com/capable-average/tagTonic @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
298 symbols 728 edges 27 files 6 documented · 2%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

tagTonic

Edit tags, pull lyrics and album art right from your terminal. Supports image rendering in terminal using Kitty Protocol ₍^. .^₎⟆

Article on dev.to

alt text

Go Version License


Core Features

Modern TUI – Bubble Tea + Kitty protocol artwork rendering
Batch Processing – Fast batch processing using goroutines with bulk tag editing
Smart Fetching – Auto-grab lyrics & artwork using mp3 metadata


Get Started

Requirements: Go 1.21+

Clone

# Clone and build
git clone https://github.com/sk-pathak/tagTonic.git
cd tagTonic

1. Build with make

make build 

2. Build without make

mkdir build
go build -o tagTonic

Run tagTonic

# Launch tui
./build/tagTonic tui

usage gif


Some Quick Fire Commands

# Fire up the TUI
tagTonic tui

# Edit tags inline
tagTonic edit song.mp3 --title "Song Title" --artist "Artist" --album "Album"

# Auto-fetch metadata
tagTonic fetch song.mp3 --lyrics --artwork

# Batch process entire library
tagTonic batch --dir ./music --recursive --lyrics --artwork

Commands Cheat Sheet

Command Action Key Flags
tui Launch the interactive UI
edit Manually set tags --title --artist --album --genre --year --lyrics --artwork
fetch Auto-fetch from APIs --lyrics --artwork --force
batch Process multiple files --dir --recursive --pattern --lyrics --artwork --force
show Display current metadata

Full docs → USAGE.md


Development

make build    # Compile
make run      # Build + launch TUI
make lint     # Code quality checks

License

MIT © sk-pathak

Extension points exported contracts — how you extend this code

LyricsFetcher (Interface)
(no doc) [2 implementers]
fetcher/lyrics.go
ArtworkFetcher (Interface)
(no doc) [2 implementers]
fetcher/artwork.go
TagEditor (Interface)
(no doc) [1 implementers]
mp3/tags.go

Core symbols most depended-on inside this repo

KeyHelp
called by 65
tui/styles.go
setStatus
called by 28
tui/app.go
IsBatchMode
called by 14
tui/file_browser.go
normalizeForSearch
called by 12
fetcher/lyrics.go
NewTagEditor
called by 12
mp3/tags.go
GetSelectedFiles
called by 10
tui/file_browser.go
Fetch
called by 9
fetcher/lyrics.go
GetLyricsPanel
called by 9
tui/media_manager.go

Shape

Method 201
Function 57
Struct 36
Interface 3
TypeAlias 1

Languages

Go100%

Modules by API surface

tui/tag_editor.go34 symbols
tui/lyrics_panel.go28 symbols
tui/bulk_tag_editor.go27 symbols
tui/file_browser.go26 symbols
fetcher/lyrics.go22 symbols
tui/app.go20 symbols
tui/artwork.go15 symbols
tui/styles.go14 symbols
mp3/tags.go14 symbols
fetcher/artwork.go12 symbols
cmd/batch.go12 symbols
tui/media_manager.go11 symbols

For agents

$ claude mcp add tagTonic \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact