Music
Texts
-
MutopiaProject/MutopiaProject
Source files of the Mutopia Project: free sheet music, mostly public-domain classical works typeset in LilyPond.
Datasets
-
mdeff/fma MIT
Free Music Archive dataset of Creative Commons tracks with genre, artist and album metadata for music analysis.
-
MTG/mtg-jamendo-dataset Apache-2.0
Metadata, splits, tag annotations and download scripts for a dataset of Creative Commons tracks from Jamendo.
-
smashub/choco
Chord corpus merging timed harmonic annotations from many sources, as JAMS files and a knowledge graph.
-
adactio/TheSession-data
Regular data dumps from thesession.org: Irish traditional tunes in ABC notation, sessions and recordings.
-
MTG/SymbTr
Symbolic scores of Turkish makam music in several formats, with metadata for computational study.
-
MarkGotham/When-in-Rome
Meta-corpus of Roman-numeral harmonic analyses of scores, with code to parse and compare them.
-
OpenScore/Lieder CC0-1.0
Transcribed scores of public-domain art songs (Lieder), released as CC0 data.
-
DCMLab/ABC
Harmonic analyses of Beethoven's string quartets with standardised chord labels, aligned to the scores.
-
humdrum-tools/humdrum-data
Download interface that gathers Humdrum score collections from many repositories into one local tree.
-
OpenScore/StringQuartets CC0-1.0
Transcribed scores of public-domain string quartets, released as CC0 data.
-
craigsapp/bach-370-chorales
Bach's 370 four-part chorales encoded in Humdrum kern for study and computational analysis.
-
josquin-research-project/jrp-scores
Humdrum scores for all composers in the Josquin Research Project, vocal music from about 1420 to 1520.
-
craigsapp/mozart-piano-sonatas
Digital edition of Mozart's piano sonatas in Humdrum, based on the Alte Mozart-Ausgabe.
-
craigsapp/beethoven-piano-sonatas
Digital edition of Beethoven's piano sonatas in Humdrum, based on the 1915 Durand edition edited by Paul Dukas.
APIs
-
metabrainz/musicbrainz-server
Server behind MusicBrainz, the open database of artists, releases and recordings, including its web API.
-
metabrainz/listenbrainz-server GPL-2.0
Source of ListenBrainz, the open listening-history database with a public API and data dumps.
Typefaces
-
steinbergmedia/bravura OFL-1.1
Music notation font that serves as the reference font for the SMuFL glyph standard.
Tools
-
beetbox/beets MIT
Command-line manager that organises a music collection and corrects its tags against MusicBrainz release data.
-
musescore/MuseScore
Desktop scorewriter for writing, engraving and playing back sheet music, with MusicXML import and export.
-
librosa/librosa ISC
Python library for audio and music analysis: spectrograms, beat tracking, pitch and feature extraction.
-
spotify/basic-pitch Apache-2.0
Converts audio recordings into MIDI notes, including pitch bends, with a small neural network.
-
metabrainz/picard GPL-2.0
Cross-platform tagger that matches audio files to MusicBrainz releases and writes album and track metadata.
-
0xfe/vexflow
JavaScript library for drawing standard music notation and guitar tablature in the browser.
-
tonaljs/tonal
JavaScript music theory library for notes, intervals, chords, scales and keys.
-
MTG/essentia AGPL-3.0
C++ library with Python bindings for audio and music analysis, extracting key, tempo, rhythm and timbre descriptors.
-
cuthbertLab/music21 BSD-3-Clause
Python toolkit for computational musicology that parses, analyses and transforms scores, with a bundled corpus.
-
paulrosen/abcjs
JavaScript library that renders ABC notation as sheet music in the browser and plays it back.
-
opensheetmusicdisplay/opensheetmusicdisplay BSD-3-Clause
Renders MusicXML scores in web pages or headless Node.js, built on VexFlow.
-
Music-and-Culture-Technology-Lab/omnizart MIT
Python toolkit that transcribes recordings into notes, chords, drums and beats with trained models.
-
CoderLine/alphaTab
Cross-platform library that renders and plays standard notation and guitar tablature, reading Guitar Pro files.
-
kennethreitz/pytheory MIT
Python library that models tones, scales and chords for learning and computing music theory.
-
rism-digital/verovio LGPL-3.0
Engraving library that renders MEI, MusicXML and Humdrum scores to SVG, with JavaScript and Python toolkits.
-
frescobaldi/frescobaldi GPL-2.0
Desktop editor for LilyPond scores with live preview, point-and-click navigation and a score wizard.
-
powertab/powertabeditor GPL-3.0
Desktop application for viewing and editing guitar tablature with standard notation, including Power Tab files.
-
urinieto/msaf MIT
Python framework for music structure analysis: finds section boundaries, labels sections and evaluates results.
-
liebharc/homr AGPL-3.0
Optical music recognition program that converts photos of printed sheet music into MusicXML.
-
CPJKU/partitura Apache-2.0
Python package for loading, aligning and analysing staff notation from MusicXML, MEI, Kern and MIDI files.
-
Abjad/abjad GPL-3.0
Python API for building LilyPond files in code, used to typeset contemporary scores.
-
w3c-cg/smufl
Specification and glyph metadata of the Standard Music Font Layout, which assigns musical symbols to code points.
-
music-encoding/music-encoding ECL-2.0
Schema and guidelines source of the Music Encoding Initiative, an XML format for scholarly music editions.
-
gregorio-project/gregorio
Typesetting software for Gregorian chant in square notation, built on TeX and the GABC input format.
-
ssb22/jianpu-ly Apache-2.0
Script that turns a plain-text jianpu (numbered notation) score into a LilyPond file for printing.
-
neanes/neanes GPL-3.0
Scorewriter for notating Byzantine chant in Byzantine neume notation.
-
yezhiyi9670/sparks-notation-1 Apache-2.0
Plain-text format, desktop editor and website for writing and typesetting jianpu (numbered notation) scores.
-
cemfi/meico GPL-3.0
Converter framework that turns MEI scores into MIDI, audio, chroma and other formats.
-
lodebar2026/dolce
Editor for jianpu and staff notation with offline recognition of score images and export to PDF and MIDI.
-
johentsch/ms3 GPL-3.0
Parser that extracts notes, measures and harmony labels from annotated MuseScore 3 files into tables.
-
mei-friend/mei-friend AGPL-3.0
Browser application for editing and annotating MEI music encodings beside the rendered score.
-
DIDONEproject/musif
Python tool built on music21 that extracts melodic, harmonic and textual features from scores for analysis.
-
humdrum-tools/verovio-humdrum-viewer
Web editor that renders Humdrum scores with Verovio while you type and runs Humdrum analysis filters.
-
craigsapp/humlib BSD-2-Clause
C++ library and command-line tools for parsing and processing Humdrum kern score files.
-
MTG/compIAM AGPL-3.0
Python tools and dataset loaders for computational analysis of Carnatic and Hindustani art music.
-
rism-digital/muscat
RISM's cataloguing application for handwritten and printed music sources.
-
Edirom/Edirom-Online GPL-3.0
Presents historical-critical music editions online, linking scores, facsimiles and textual sources.
-
Computational-Cognitive-Musicology-Lab/humdrumR
R package for querying and analysing scores encoded in the Humdrum format.
-
OMR-PRAIG-UA-ES/kernpy AGPL-3.0
Python package for reading and processing Humdrum kern files in modern and mensural notation.
Lists
-
noteflakes/awesome-music
Curated list of music software and resources covering notation, programming, theory and free scores.
-
vpavlenko/study-music
Annotated guide to books, courses and interactive resources for studying music theory and history.
-
ad-si/awesome-sheet-music ISC
Curated list of sheet music software, notation libraries, optical recognition tools and score sources.
-
ismir/mir-datasets Apache-2.0
Catalogue of music information retrieval datasets with metadata and links, kept by the ISMIR community.