Back to Programs

Data

MetaBrainz Foundation Inc

Open music / book metadata, music recommendations

databasemachine learningperlpostgresqlpythonspark

Participation history

11 GSoC years

2026

7 projects

Official year page

Integrate MusicBrainz events into ListenBrainz

MusicBrainz contains data about upcoming and past events. This data is not surfaced, nor available to ListenBrainz users in any way. This data should...

Set Up BookBrainz for Internationalization

BookBrainz is currently English-only, limiting its global reach. This project integrates i18next with BookBrainz's React SSR pipeline to enable full...

Modernize search storage format for the MusicBrainz database

The MusicBrainz database has a Solr search engine used for both website search and search API. MB Search architecture for reference. After solr was...

Development of a new Calibre plugin for BookBrainz

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...

Compose Multiplatform Migration of ListenBrainz-Android

ListenBrainz has an Android app but no iOS version. A previous Swift attempt just duplicated the codebase, meaning every bug fix had to be written...

GraphQL Server as a Musicbrainz API Alternative

The MusicBrainz XML/JSON API makes you stack inc= parameters just to get related data, and looking up multiple entities of the same type in one...

Playlists Sorting and Organization

This project aims to improve playlist management in ListenBrainz by making it easier for users to search, organize, and interact with their...

2025

6 projects

Official year page

Centralized Notification System for MetaBrainz

MetaBrainz contains multiple sub-projects which sends out standalone notifications. This project aims to centralize those by developing a shared...

Integrate music streaming from Funkwhale & Navidrome (Subsonic)

Allow users to play music from their Funkwhale servers as well as Navidrome directly in BrainzPlayer, both are self hoisted music streaming platform....

Onboarding Revamp in Listenbrainz-Android

A smooth and intuitive onboarding experience is essential for any app, ensuring that users understand its features while maintaining trust and...

Development of Advanced User Statistics Visualizations

The project aims to design and implement advanced interactive visualizations for ListenBrainz using Nivo for data visualization and integrating with...

Matrix Archiver (libretto)

The current logging system for Matrix communications at MeB relies on an unmaintained IRC-based bot (BrainzBot) that logs messages to a PostgreSQL...

Importing Listening History Files in Listenbrainz

This project aims to develop a feature that enables users to import their listening history from various services, including ListenBrainz exports,...

2024

8 projects

Official year page

Add Syndication Feeds to ListenBrainz

This project aims to add syndication feed feature to ListenBrainz, specifically Atom feeds. Users will be able to subscribe to various feeds to...

Email service with internationalisation and MJML-based formatting

The MusicBrainz project sends thousands of emails every week, from password resets to edit notifications. However, the current email service is...

GSoC 2024: Transferring Playlists Between SoundCloud, Apple Music and ListenBrainz

ListenBrainz generates music recommendation playlists. These playlists can be listened to on ListenBrainz using BrainzPlayer if the user has...

Dashboard Page and Feed revamp in ListenBrainz iOS

This project aims to seamlessly integrate all functionalities of the ListenBrainz website's Dashboard into the ListenBrainz iOS app. This integration...

Artist, Album, User Pages in ListenBrainz Android App for all users

Currently, the ListenBrainz website contains many features, such as User Pages, Album Pages, and Artist Pages, which offer a holistic experience to...

BookBrainz: Importing Entities With Relationships

BookBrainz still has a relatively small community and contains less entities than other comparable databases. Therefore we want to provide a way to...

Musicbrainz - Internet Archive integration: saving external URLs via Wayback Machine

MusicBrainz database sees a lot of edits made on a daily basis. Tens of thousands of edits. That’s a large number. With each edit, there’s associated...

Add cover art image processing options to Picard

This project intends to allow Picard to post process cover art images obtained from the providers. There should be provider independent options to...

2023

7 projects

Official year page

Interactive Artist Similarity Graph

Discovering new music can be quite an adventure and may lead to finding music which you will hear on repeat for a long time. Currently, ListenBrainz...

Feed Section in Android App

ListenBrainz's website is an amazing platform that inculcates the idea of having a social media app revolving around music. The Feed-Section is one...

BookBrainz: Import Other Open Databases

BookBrainz still has a relatively small community and contains less entities than other comparable databases. Therefore we want to provide a way to...

Dataset Hoster Improvements

The dataset hoster currently returns rows of database rows with no extra information. Over time, the results that are returned from a query have...

Automate areas management in MusicBrainz

MusicBrainz is a community-maintained database of music metadata that includes information about music artists, their releases, and related data such...

Administration System - BookBrainz

BookBrainz currently has no administration system, or any good way of giving users special privileges. This project involves devising and...

Integrating Apple Music with ListenBrainz

By linking their Apple Music account with ListenBrainz, individuals are able to use ListenBrainz to play their music selections. The integration into...

2022

7 projects

Official year page

Make Picard work in single instance mode

Currently, running picard always spawns a new instance. It would be useful to pass the arguments to an already running instance (if exists). The best...

MusicBrainz Android App: Adding BrainzPlayer in Android App

MusicBrainz Android app has got some nice features that showcase various Brainz abilities. Currently, the app lacks the Brainz Player feature, which...

CritiqueBrainz reviews for BookBrainz entities

This project intends to expand CritiqueBrainz's infrastructure to include reviews and ratings for BookBrainz entities. Reviews increase the...

Add Timezone support to ListenBrainz

At current state of the product, listens on ListenBrainz are collected in the UTC instead of their local timestamp, without taking DST in to...

Unified Creation Form

Currently, User have to face complex workflow for simple use cases (such as “adding a book”) with lots of repetition of data. This project aims to...

Clean Up The Music Listening Histories Dataset

The Music Listening History Dataset is pretty damn impressive; It contains ~27 billion logs of real-world data from last.fm scrobbles distributed...

Send a track to another user as a personal recommendation

This project aims to implement a feature in ListenBrainz, where you can personally recommend few select followers of yours, a recording, along with a...

2021

5 projects

Official year page

Musicbrainz Android App: Dawn of Showdown

This project aims to continue on the development of the Musicbrainz Android App further, complete the Tagger implementation, introduce ListenBrainz...

Pin Tracks & Review Tracks Through CritiqueBrainz

This proposal consists of two projects: Review Tracks Through CritiqueBrainz: ListenBrainz should allow users to write short reviews for tracks,...

Implement "Series" entity for BookBrainz

BookBrainz lacks a feature which allows a editor to create a series entity. A series is a sequence of separate works, authors, editions, edition...

Complete Rust binding for the MusicBrainz API

MusicBrainz has client libraries for various programming languages such as C++, Python, Java, Go and more. However, we're still missing out on a...

Push the URL relationship editor to the next level

On MusicBrainz, URLs are external links attached to entities; relationships define their role and include metadata like date period, they provide...

2020

7 projects

Official year page

User Collections : BookBrainz

Bookbrainz lacks a feature which allows a person to make a collection of entities (edition, edition-group, work, author, publisher) for his/her...

Designing Responsive UI and Completing Fragmented Features of MusicBrainz(Android)

MusicBrainz for Android was first created in 2010-11. In the year 2019,the app went through a significant update as part of GsoC’19 .The complete...

To make MusicBrainz for Android stable and robust

The project has been under constant development for almost a year now. In the past one year, the app has been reworked to compile with the current...

GSoC 2020: Add 'love/hate a recording' and 'delete a listen' support to ListenBrainz

ListenBrainz currently only displays the list of listens imported into a user's profile and the basic stats about the artists that a user has...

Adding Statistics and Graphs for ListenBrainz Users and Community

ListenBrainz now has a statistics infrastructure that collects and computes statistics from the listen data that has been stored in the database....

Spam detection with online learning

The idea of implementing a solution for spam i.e SpamBrainz started in 2017. Since then, there has been progress towards it by implementing a high...

AcousticBrainz - New machine learning infrastructure

This project proposes the development of a module that uses Machine Learning to classify correctly the audio-based relative data which is extracted...

2019

6 projects

Official year page

Music recommendation system: Collaborative filtering using Apache Spark

ListenBrainz has recently shifted its statistics infrastructure from Google BigQuery to Apache Spark. Apart from delivering statistics/graphs to end...

Bring back MusicBrainz for Android to Life

MusicBrainz for Android was first created in 2010-11 as a part of GSoC. Since 2015, no updates have been made to the project. The app is currently...

Edit Previews for non-release type Musicbrainz Entities

Converting the current template toolkit setup to ReactJs and then adding edit previews for non-release entities in musicbrainz for something similar...

JSON Web API for BookBrainz

The project is aimed to design and implement the JSON API to programmatically query the BookBrainz database. Since the existing backend of BookBrainz...

Recording Similarity Index for AcousticBrainz

The AcousticBrainz database contains detailed high and low-level information for millions of audio recordings, all of which create an essential for...

GSoC 2019: Support For Reviewing and Rating More Entities (CritiqueBrainz)

Currently CritiqueBrainz’ users can review release groups, events, and places. This will be expanded on by implementing reviews for other MusicBrainz...

2018

5 projects

Official year page

Developing infrastructure for importing data into BookBrainz

This proposal is aimed at developing infrastructure for importing data into the BookBrainz database from third party sources, while at the same time...

A way to associate listens with MBIDs

Currently Listenbrainz uses MSIDs (Messybrainz-ID) for retrieving useful user stats (e.g. user listens). Now ListenBrainz also plans to generate data...

React-based UI Component Library: A game-plan for user experience design overhaul of MusicBrainz

MusicBrainz is aiming for a user experience overhaul. To keep design and development in sync, by thousands of contributors over the years, we need a...

More detailed integration of AcousticBrainz with MusicBrainz

A tight integration with MusicBrainz database would be very helpful in AcousticBrainz because it would allow us to better understand our data by...

SpamBrainz - Fighting spam with machine learning

MusicBrainz has recently been plagued by spam entries, most of them attempting to advertise other websites. SpamBrainz is the latest *Brainz project,...

2017

5 projects

Official year page

Directly accessing MusicBrainz database in CritiqueBrainz

Presently, CritiqueBrainz uses python-musicbrainzngs to show search results and fetch information of selected entities. python-musicbrainzngs then...

Add statistics and graphs to ListenBrainz

ListenBrainz has recently undergone a big overhaul and is now getting ready to stream its data to Google BigQuery for analysis and statistics...

Search for Entities

Search function for all entities (similar with the current edit search)

Picard v2.0

Picard is going to be receiving a complete make-over code/feature/UI wise for v2.0. A part of the v2.0 plans is porting the existing code to...

Add Rating System in CritiqueBrainz

Rating facility is a fundamental part of any review system. So, the idea of the project is to add the rating feature to the present review system in...

2016

4 projects

Official year page

Gamification of submission system

I propose to implement one of the supplied ideas and create a gamification system that will encourage users to contribute content to the project and...

ListenBrainz: A submission API compatible with Last.fm scrobblers

A submission API compatible with Last.fm scrobblers Right now ListenBrainz has its own API documented at...

Show tag search results in Picard

Currently Picard relies on web browser for searching tags manually. With this project, I aim to accomplish these two tasks: Display search results...

A Job Running Client for AcousticBrainz

Allowing users to run jobs on their own machines and submit the result.