Linea — dispatches
Eight releases.
Five of them
worth a letter.
Notes written the night each one shipped, with whatever was playing at the time.
Scroll ↓No sign-in. At all.
Linea follows whatever Windows is already playing.
The old build needed a Spotify account I had added by hand. The cap was five people.
Meet · v0.2.0
Whatever is playing
Spotify, a browser tab, anything holding the media keys. If Windows knows the song, Linea does.
Nothing to connect
No login, no token, no waiting to be let in. Open it and it is already following along.
Windows first
Windows release. Mac development continues separately; the legacy Mac download remains available.
Playing while this shipped
Starlight
Sofia Camara
Stand-in words — fetching from lrclib
The app can tell you now.
Linea says when a new version is out, and installs it itself.
Six releases went out before this one. The app mentioned none of them.
Meet · v0.1.6
It says so
A mark in the top bar once a version is ready, and a line telling you it is there.
One restart
The download already happened, quietly, while you were using it. Nothing to go and fetch.
macOS still gets the notice
An unsigned build cannot replace itself there, so it takes you to the download instead of pretending.
Most of it was never Linea.
The app takes 72 MB less room once installed.
Linea’s own code is 616 KB. The rest came free with the runtime — including a great deal it never touches.
Meet · v0.1.5
Fifty-four languages out
Chromium ships translations of its own bookmark manager and settings pages. Linea has neither.
A compiler for nothing
A 25 MB DirectX shader compiler, kept for 3D work the overlay never draws.
An icon at its real size
The tray icon was a 1254-pixel image being painted at 32.
Playing while this shipped
Badlands
Mumford & Sons, Gracie Abrams
Stand-in words — fetching from lrclib
One source was never enough.
Lyrics no longer depend on a single host.
0.1.3 taught the app to admit it could not reach the words. This one means it rarely has to.
Meet · v0.1.4
A second source
NetEase steps in when LRCLIB is unreachable, held to a stricter bar — the wrong words are worse than none.
Better matching
A fuzzy search recovers tracks the exact lookup was walking straight past.
Fails faster
A source that keeps failing steps aside for a few minutes instead of being waited on.
Playing while this shipped
Fire on Fire
Sam Smith
Stand-in words — fetching from lrclib
In between · 3 corrections
Three releases in one evening, and not one of them was a feature.
The build did not open. Then it opened but could not log in. Then it logged in and lied about why the lyrics were missing. No letters for these — just the record.
Half of this one was not my bug. The reporting was.
When lyrics could not be fetched, Linea blamed the song. Now it admits it could not reach the service.
Release notes ↗Connect Spotify could only ever produce its own error message. In every build shipped so far.
The released builds were missing the key they needed to talk to Spotify, so signing in never worked.
Release notes ↗It never reproduced in development. Only the packaged build — the only one anybody downloads — was broken.
A missing file stopped the app before it finished starting, so it opened to an empty panel.
Release notes ↗Linea exists.
Synced lyrics, floating above everything else you are doing.
It did not survive contact with a packaged build. But this is where the line starts.
Meet · v0.1.0
Lyrics, live
The current line, in place, on the clock.
Always on top
A frameless panel you can put anywhere and forget about.
Windows and macOS
Signed installers for both, from the same source.
Playing while this shipped
Indigo
Henry Moodie
Stand-in words — fetching from lrclib
That is everything so far.
The next letter is already being written.