Roadmap
Last updated 23 August 2026
This is a public backlog for Classikal: what we are building, what we are weighing, and what recently shipped. Priorities shift as we learn from listeners, contributors, and catalog gaps — check the date above for when this page was last revised.
In progress
Apple Music listen links
In progressRecording pages link out to Apple Music when MusicBrainz has an ISRC and Apple has a catalog match. Backfill is still walking the catalogue.
No scrape of Apple Music Classical. No guess from the title. If MusicBrainz has no ISRC, the button stays off. Spotify embeds already work when we have an album ID. Apple is the second listen path, not a replacement player.
Work page as recording hub
In progressOn a work page, filter the recording list by conductor, orchestra or ensemble, and decade. Clear the chips to get the full list back.
HIP / modern is still waiting for a stored fact we can defend. Label filter is next. We will not hide the list behind a single recommended take.
Planned
HIP / year / role filters
PlannedFilter discographies by historical instruments versus modern, recording decade, conductor, and soloist.
Decade and live already exist on the recordings listing. HIP needs a stored fact we can defend, not a year cutoff. A 1950s Vienna Philharmonic disc is not historical-instrument practice. Unknown stays unknown.
Starter paths (where do I begin?)
PlannedFor famous works with dozens or hundreds of recordings: three entry routes (historical-instrument, historic modern, recent modern), one recording each.
Each route is a sentence and a link, not a score. No definitive badge. If we cannot say why that recording is the starter, the route stays empty. Aimed at works people actually drown in, not at the long tail.
More streaming deep links
PlannedSpotify already embeds. Apple Music links are landing. Next are Idagio, Qobuz, and Presto, where we can match without becoming a frontend for one service.
Same rule as Apple: an official lookup keyed by a real identifier, then a button. No unofficial streams. A recording with no match shows no button.
Canonical catalog pages (BWV, Köchel, …)
PlannedMake thematic catalog views the link people paste: the BWV list, the Köchel number on the work, the composer catalog as a reference card.
Composer catalog pages already exist. This work is making a number such as BWV 565 findable from search and obvious on the work page, without inventing a second encyclopedia beside Grove.
Exploring
Compare key passages
ExploringMark two or three minutes in a movement where interpretations usually part ways, so you can listen side by side without a winner.
Only if we can store the window on the work. We do not host the audio, so a compare that depends on a file offset we cannot keep will not ship.
Lightweight live compare
ExploringSwitch between two recordings of the same movement on one page.
Idagio does this for a small set. We would need two working listen links and a join we trust. A fuzzy title match is not a join.
Same session, different editions
ExploringGroup remasters and reissues of one recording session so a DG Originals transfer is not compared as if it were a different performance.
Needs a session key we do not yet store as its own field. Until that exists, this stays exploration.
Recording notes and community picks
ExploringShort attributed notes on standout recordings (Gramophone, Talk Classical, a named listener). No star rating, no social network.
The name of the person or the publication stays on the note. We may lift a Fider comment. We will not invent a best-recording score.
Shipped
Public feedback board
ShippedVote and post ideas at feedback.classikal.org. This page is our editorial cut. The board is where listeners set priority.
Anyone can post or vote. We read the board before we add a line here. Cookie banners, analytics, and other plumbing stay off this page even when we ship them.
Search by catalog number
ShippedType BWV 988, K. 550, op 9 n 2, or Hob. I:82 in the header box and land on the work. Bare numbers still match catalog rows. Release imprint codes stay on /releases.
Search reads catalog_systems + work_catalog_entries, canonical_works prefix/number, and titles with a digit boundary so Op. 67 does not rank Op. 367. Opus parts (n / no / nr / slash) are one number: Op. 9 no. 2 is not Op. 92. Köchel aliases (K., KV, Köchel) map to the same prefix. Composer + rest stays inside that composer.
Suggest something
Missing a feature or dataset? Post it on our feedback board or vote on existing ideas. We read every serious suggestion; not everything lands here, but it informs the order of work.
For data attribution and upstream projects, see Credits.