Project ideas from Hacker News discussions.

Picard 3.0

📝 Discussion Summary (Click to expand)

Theme 1 – Picard works well but suffers from finicky matching and a quirky UX
- “Tagging doesn’t work if you don’t import every song in an album at once… Even when you do import a full album, it often struggles to match tracks.” – nvme0n1p1
- “the workflow is very odd, and the UX of the app could do with massive improvements” – have_faith
- “UX papercut … fields with multiple values … if you manually write that with the semicolon, it stores one artist with the semicolon included!” – Ndymium

Theme 2 – Many users still rely on Picard (or have returned to it) for precise control of local music libraries
- “what I set years ago still works” – ZetaRicky
- “I've used it to successfully organize my messy library of (then) 50 thousands songs back in 2014. It's great if you can wrap your head around the weird ass workflow.” – amlib
- “I'm personally a fan of the tagging being a separate explicit action, it suits my flows.” – have_faith

Theme 3 – Desire for automation/daemon‑style tagging and integration with pipelines (beets, scripts, LLMs)
- “It should be a daemon that auto tags all new files in the background and only prompts you when there's a problem.” – tancop
- “Tons of people have scripted Beets to autotag music as they're downloaded or appear in a directory…” – krisbalintona
- “LLMs have really helped organizing and tagging music efficiently.” – sp1nningaway
- “I downloaded the RC to have my ChatGPT Agent run through my catalog and normalize everything.” – thekid314


🚀 Project Ideas

MusicTagger AutoDaemon

Summary

  • A background daemon that watches designated folders, automatically fingerprints new audio files, queries MusicBrainz (and AcousticBrainz) for metadata, and writes tags only when confidence exceeds a threshold; low‑confidence matches trigger a desktop notification for manual review.
  • Core value: eliminates the manual import step of Picard/beets while preserving user oversight, fulfilling the request for a “daemon that auto tags all new files in the background and only prompts you when there’s a problem.”

Details

Key Value
Target Audience Power users with large local libraries (e.g., Bandcamp, Soulseek collectors) who want hands‑free tagging but still need control over ambiguous matches
Core Feature Folder watcher + acoustic fingerprinting (Chromaprint) + MusicBrainz lookup + confidence‑based auto‑tagging + optional submit‑new‑release to MusicBrainz
Tech Stack Python (watchdog, musicbrainzngs, acoustid), Qt/PySimpleGUI for notification UI, optional Docker container
Difficulty Medium
Monetization Hobby

Notes

  • HN commenters expressed frustration with Picard’s manual workflow (“It should be a daemon that auto tags all new files in the background…”) and with beets’ import finickiness; this daemon directly addresses those points.
  • Enables community contribution: when the daemon encounters a release not in MusicBrainz, it can offer to upload the fingerprint and basic metadata, turning users into contributors.

BeetsTrackFlow

Summary

  • A beets plugin that reorders and disambiguates track matches using a combination of track length, acoustic similarity, and existing metadata consistency, preventing the name‑swapping behavior seen in Picard.
  • Core value: provides reliable, deterministic album matching without requiring users to import entire albums at once, solving the “tagging doesn't work if you don't import every song” pain point.

Details

Key Value
Target Audience Beets users who manage partial album imports or encounter mismatched track ordering
Core Feature Smart matching algorithm that scores candidate releases by length + fingerprint similarity + existing tag consistency, then presents the top choice for confirmation
Tech Stack Python (beets plugin framework), librosa/audio features, fuzzywuzzy for string scoring
Difficulty Medium
Monetization Hobby

Notes

  • Users like nvme0n1p1 complained that “Tagging doesn't work if you don't import every song in an album at once” and that Picard “struggles to match tracks” and even swaps names; BeetsTrackFlow directly tackles these specific failures.
  • By integrating into beets’ existing pipeline, the plugin leverages the community’s investment in beets while improving its weakest point, likely sparking discussion on the beets mailing list.

SidecarSQLite Music Metadata Hub

Summary

  • A desktop application that creates a per‑song SQLite sidecar database (as proposed by nzoschke) to store rich metadata (beat grids, cue points, mood, genre hierarchies) alongside a central library catalog, with sync to file tags and export APIs for DJ software.
  • Core value: gives DJs and audiophiles a flexible, query‑rich metadata store that overcomes ID3 limitations and enables agent‑based manipulation, fulfilling the desire for “SQLite for everything” and better integration with tools like Mixxx.

Details

Key Value
Target Audience DJs, music collectors, and developers building agents or RAG‑style playlists who need extensible metadata beyond standard tags
Core Feature Central SQLite library + per‑song sidecar DBs, UI for editing beat grids/cues, import/export to ID3/Vorbis comments, REST/WebSocket API for external agents
Tech Stack Electron (or Tauri) frontend, SQLite, Rust/Python backend, MusicBrainz API, optional VST/Audio analysis libraries
Difficulty High
Monetization Revenue-ready: Subscription $5/mo for cloud sync + premium analysis plugins

Notes

  • The comment by nzoschke (“The TL;DR is use SQLite for everything… The huge advantage is it stores metadata that ID3 tags never imagined…”) generated interest; this idea productizes that concept with a polished UI and DJ‑focused features.
  • Provides a platform for LLM‑based music agents (as mentioned by thekid314 and riedel) to query and manipulate rich metadata, likely spawning further Hacker News show‑and‑tell posts.

Read Later