Fetching the latest programs, projects, and workspace data.
Open music / book metadata, music recommendations
Explore maintainer wishlists.
Showing 5 of 63 projects. Click any project card for scope, mentors, and proposal studio.
Mentors: Student: junaid_
The MusicBrainz database has a Solr search engine used for both website search and search API. MB Search architecture for reference. After solr was upgraded to version 9, the schemas in configsets weren’t updated and still use version 1.5. They need to be upgraded to version 1.7. Solr currently keeps data in index fields for search and also uses _store field to store the index field data + other non index field’s data for response writer, causing redundancy. To eliminate this redundancy, we need to store all the required data in the fields themselves. Solr response writer currently reads all the data from _store field of a document and returns it in a valid MB XML/ MB JSON format. After modifying the configsets and indexer to store data in the fields, we need to create response writers that read from these fields and return data in a valid MB XML/ MB JSON format, along with validation tests for these writers. Since storing data in individual fields rather than a single _store blob will lead to change in performance,we will start with the artist core and benchmark it before rolling out to all remaining entities.
Mentors: Student: Garv Thakre
BookBrainz is currently English-only, limiting its global reach. This project integrates i18next with BookBrainz's React SSR pipeline to enable full internationalization: locale-detection middleware (Accept-Language + cookie), a language selector in the navbar, English translation JSON files, ~620 strings migrated across ~120 files, and a BookBrainz project on translations.metabrainz.org so volunteer translators can contribute immediately — with no rebuild required per translation update.
Mentors: Student: Yateen Dogra
This project aims to improve playlist management in ListenBrainz by making it easier for users to search, organize, and interact with their playlists. Currently, while some backend support exists, the user experience lacks intuitive features for managing personal playlists effectively. To address this, I plan to implement four main features. First, I will complete and enhance playlist search directly on the user playlists page. Second, I will introduce tag-based organization, allowing users to categorize and filter playlists efficiently. Third, I will add in-playlist track sorting options such as sorting by title, artist, date added, and shuffle. Finally, I will enable users to view their MusicBrainz collections as playlists and optionally save them within ListenBrainz. The project will involve backend changes such as adding new database tables and API endpoints, along with frontend integration using React to provide a smooth and consistent user experience. The final deliverables will include a fully functional playlist search feature, tag-based organization system, track sorting functionality, and MusicBrainz collection integration, along with tests and documentation for all components.
Mentors: Student: failure
MusicBrainz contains data about upcoming and past events. This data is not surfaced, nor available to ListenBrainz users in any way. This data should be utilized in ListenBrainz to provide it's users with an easy way to discover events. This will be achieved by copying over, and caching the event data from MusicBrainz in a suitable format, and creating endpoints, as well as adequate frontend to display this information. The user should be able to discover events, gather event data from ListenBrainz itself, and find events relevant to them based on their preferred artists.
Mentors: Student: Md Waqib Sk
This project aims to develop a calibre plugin for bookbrainz. It will be used to update metadata of calibre books and add public collections or editions from bookbrainz directly in calibre.