Closed certuna closed 1 year ago
This looks like a good enhancement, I will give it a try!
@deluan can you assign this to me
Bear in mind that this is not only front end work
artist
REST endpoint in the API only returns a limited set of fields: name
, albumCount
, songCount
, playCount
, playDate
, smallImageUrl
, rating
and size
(and a lot more, but not the fields needed for the functionality described above).min_year
, max_year
, total time, and genre(s) are all fields or derived fields of data that is stored in the database, one way or another, but needs to be a) added to the artist
table in the db, and b) added to the artist
json table that the API returns tot the client.Okk
We would like to display the artist image on the artist tab however, the API is returning an empty string
"smallImageUrl": "",
"mediumImageUrl": "",
"largeImageUrl": "",
how should we fetch the artist image?
Artist metadata is handled on the server side. We don't want the UI talking to external services (and potentially introducing some privacy issues).
If (and only if) the image URLs are empty, you can retrieve them using the getArtistInfo2
api call: http://subsonic.org/pages/api.jsp#getArtistInfo2
The problem is that it may take too long to request all images on first load. I have a plan to populate these images in background using a worker pool, but it is not implemented yet.
This issue has been automatically marked as stale because it has not had recent activity. The resources of the Navidrome team are limited, and so we are asking for your help.
If this is a bug and you can still reproduce this error on the master
branch, please reply with all of the information you have about it in order to keep the issue open.
If this is a feature request, and you feel that it is still relevant and valuable, please tell us why.
This issue will automatically be closed in the near future if no further activity occurs. Thank you for all your contributions.
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
Replace the current bare-bones Artist view with one based on this one from the React Demo website:
We should probably stick close to this boilerplate component to minimize the work, but even within those boundaries there should be some good functionality to be added here (please contribute if you have other ideas, or really dislike these):
Columns
Tom
,Dick
andHarry
to one playlist, or Play Now, Play Next, etc - basically, exact same component as in the existingSongs
view.Artist
: Navidrome now has artist images so it can look like the Customer column of the demo siteCountry
: either from tags, or pulled from last.fm / musicbrainzYears
: Year range of the artist's songs, eg1984-2013
, similar way it's handled in the text version of the existingAlbums
list.Genres
: like the "Segments" column in the demo, all genres for the artist, ranked by number of songs. So an artist with tenRock
songs and oneReggae
song would getRock, Reggae
. Note: if there's not enough space, maybe only the top 3 Genres?Songs/Albums
: number of songs and albums:48/5
for an artist with 48 songs and 5 albums,1/0
for an artist with 1 song on a "various artists" compilation. More compact than the current 2-column implementation.Total time
: total duration of all songs by the artist:245:12
Plays
: cumulative plays for all tracksLast Played
Popularity
: I believe last.fm has a metric for that? Google Trends? (maybe not essential, but great for generating outrage among our elderly users when Megan Thee Stallion gets ranked above The Beatles)Rating
: average rating of the 1-5 scores for the artist's songsStar
: like the current view, so you can "like" the artistFilters
Only Album Artists
: filters out artists who only have compilation album appearancesGenre
: like the Segments one in the demoLast Played
: This Month, Last Year, etc - just like in the demo siteDecade
: just a list of decades is the easiest/quickest way, but in the end I think a two-handle range slider ( https://github.com/navidrome/navidrome/issues/533 ) in the top bar instead is betterRole
: once the 'roles' feature is added ( https://github.com/navidrome/navidrome/issues/211 ), this is where filtering for Composer/Conductor/Remixer/DJ-mixer/Producer/etc can goSearch