← Back to Awesome

Sections

Music

GitHub repository ↗ synced 2026/8/9

Awesome Music Awesome

A categorized collection of awesome music libraries, tools, frameworks and software.

Contributions and suggestions are always welcome! Please take a look at the contribution guidelines and quality standard first.

Thanks to all contributors, you're awesome and this project wouldn't be possible without you!

  • Awesome Music
    • Audio Editing
    • Audio Libraries
    • Audio Tools
    • Free Music Scores
    • MIDI Tools & Libraries
    • Music Notation
    • Music Programming
    • Music Theory
    • Standards
  • Other Awesomeness
    • Related lists

Audio Editing

  • Audacity - a free, cross-platform digital audio editor.
  • Ardour - a cross-platform digital audio workstation emphasizing audio recording.
  • LMMS - another cross-platform digital audio workstation, more oriented towards making beats.
  • OpenUtau - A free, cross-platform singing voice synthesis framework.
  • snd - Snd is a sound editor modelled loosely after Emacs.
  • Stargate DAW - A cross-platform, all-in-one digital audio workstation and plugin suite, optimized for EDM production.
  • TuneFlow - a next-gen DAW that helps you generate melody, beats, or a whole song, while still being able to edit them.

Audio Libraries

  • audio.js - audio.js is a drop-in javascript library that allows HTML5's <audio> tag to be used anywhere.
  • audioFlux - A library for audio and music analysis, feature extraction.
  • chord-mark - reference implementation of ChordMark, a text notation format for lyrics, chords and rhythm.
  • howler.js - a Javascript audio library for the modern web.
  • JSyn - an audio synthesis software API for Java.
  • Librosa - a python package for music and audio analysis, providing the building blocks necessary to create music information retrieval systems.
  • midi.js - a framework for creating web-based MIDI apps.
  • mxml - MusicXML parsing and layout library.
  • PortAudio - a free, cross-platform, open-source, audio I/O library.
  • RustAudio - an aggregate of free and useful Audio, DSP and music libraries written in Rust.
  • Soundpipe - a lightweight DSP library written in C.

Audio Tools

  • Auralytics - an open-source personal Spotify analytics tool.
  • Beets - a powerful command-line music organizer and manipulator.
  • Cecilia - a Pyo-based graphical environment for music and signal processing.
  • cyanrip - rips and encodes standard audio CDs with the least effort required from user. Cross platform.
  • fre:ac - free audio converter. It supports audio CD ripping and tag editing.
  • Jack - command-line CD ripper.
  • K3b - is a full-featured CD/DVD/Blu-ray burning and ripping application.
  • Kima - a self-hosted music streaming server with ML-powered audio analysis, vibe-based discovery, and Subsonic API support.
  • Koel - an open-source personal audio streaming server.
  • Lame - a high quality, free and open-source MP3 encoder.
  • lltag - automatic command-line mp3/ogg/flac file tagger and renamer.
  • matchering - сontainerized web application and library for automated reference audio mastering.
  • MusicBrainz - Open Encyclopedia for Music information and Metadata, providing a unique ID for everything
  • Rubyripper - is a secure digital audio extraction application ("cd ripper") for Unix-like operating systems.
  • SoX - a free open-source command line utility for playing, converting and manipulating audio files.
  • split2flac - split flac/ape/wv/wav + cue sheet into separate tracks
  • Whipper - Python CD-DA ripper preferring accuracy over speed.
  • X Audio Copy - GTK and GNOME application for ripping CD-Audio and encoding in lossy and lossless audio formats.

Free Music Scores

  • bayanguru - engraving and publishing system that produces high quality sheet music for bayan in PDF.
  • cellist/Lilypond-Sheet-Music - a collection of music typeset with lilypond (mostly chamber music and music for cello).
  • ciconia/music - a collection of mostly baroque music, lots of sacred works by J. S. Bach, coded in lilypond/ripple.
  • CPDL - the choral public domain library contains more than 20K free scores of vocal music.
  • Éditions Nicolas Sceaux - baroque music scores (mainly French music), typeset using lilypond.
  • IMSLP - the International Music Score Library Project is the largest collection of public domain scores and parts on the web.
  • Lavender Blue Open-Scores - open scores for piano encoded using lilypond.
  • Mutopia - sheet music based on editions in the public domain.
  • wbsoft/lilymusic - beautiful LilyPond scores under free licenses.

MIDI Tools & Libraries

  • Gingoduino - music theory engine for embedded systems with MIDI 1.0/2.0 UMP support.
  • JJazzLab - a complete Midi-based framework for automatic backing tracks generation.
  • Midifile - C++ library for parsing Standard MIDI Files.
  • Midimonster - universal control and translation tool for most show control protocols.
  • mido - Python library for working with MIDI messages and ports.
  • mididings - A Python-based MIDI router and processor for Linux and macOS
  • Polyrhythmix - MIDI drums
    generator, designed for polyrhythmic parts
  • stagedings - An UI and API for mididings
  • Timidity - an open-source command line synthesizer that plays MIDI files.

Music Notation

  • Abjad - a Python API for Formalized Score Control, based on Lilypond.
  • ChordMark - a text-based notation format for lyrics, chords and rhythm.
  • Denemo - a free music notation editor based on Lilypond.
  • Digital Music Stand - a free web app for displaying sheet music.
  • Jan Angermüller's music fonts page - A listing and visual comparison of different music fonts.
  • Frescobaldi - a free Lilypond sheet music editor.
  • Guido - a generic, portable library and API for the graphical rendering of musical scores.
  • Hacklily - online LilyPond-based sheet music editor (with optional GitHub integration).
  • Inknote - free, open source, browser based music notation and composition software.
  • JotChord - an online, text-based editor for making PDF-formatted Nashville Number System song charts.
  • LibMEI - a C++ library for reading and writing MEI files.
  • Lilybin - an open source web-based LilyPond editor.
  • Lilypond - free, open-source music engraving program, devoted to producing the highest-quality sheet music possible.
  • Lilypond cook book - tips & tricks for getting the most out of lilypond.
  • Lilypond Snippet Repository - an online database of Lilypond snippets ideas, features and hacks.
  • Lilyvm - Lilypond version manager.
  • Lyp - the Lilypond swiss army knife - easily install packages, manage multiple versions of Lilypond, and other tools for power users.
  • mei-friend - a friendly, browser-based editor for music encodings.
  • MuseScore - free open-source music notation and composition software.
  • MusicKit - Music sheet rendering for iOS and OSX.
  • neoscore - python library for notating music in a graphics-first paradigm.
  • NOTATIO - a forum devoted to the practice of music notation.
  • OpenLilyLib - LilyPond tools - snippets, templates, and extensions.
  • OpenSheetMusicDisplay - Typescript library for rendering MusicXML in the browser.
  • Python-ly - a tool and library for manipulating LilyPond files.
  • Ripple - DRY for Lilypond - generate scores and parts with minimal fuss.
  • Scorelib - a C++ library for parsing SCORE data files.
  • Tbon - Typographic Beat-Oriented Notation for music.
  • Unison - Proprietary software for creating music score with words.
  • VectorScore - Lightweight, SVG-based music notation library for TypeScript under MIT license.
  • Verovio - a library and a toolkit for engraving MEI music notation into SVG.
  • Vexflow - a JavaScript library for rendering music notation and guitar tablature.

Music Programming

  • Alda - a music programming language for musicians.
  • Bach: Automated Composer's Helper - a cross-platform set of patches and externals for Max, aimed to bring the richness of computer-aided composition into the real-time world.
  • Cane - A small MIDI sequencer DSL designed around vectors and euclidean rhythms.
  • Chuck - strongly-timed, concurrent, and on-the-fly music programming language.
  • CoffeeCollider - a language for real time audio synthesis and algorithmic composition in HTML5. "Write CoffeeScript, and be processed as SuperCollider."
  • Common Music - an open source music composition system.
  • Csound - a user-programmable and user-extensible sound processing language and software synthesizer.
  • DrumBeatRepo - A rhythm library for playing drum beats of differents music genres in the browser.
  • Faust - a functional programming language specifically designed for real-time signal processing and synthesis.
  • Gwion - A strongly-timed programming language aimed at music creation. Heavily inspired by ChucK.
  • IanniX - a graphical open-source sequencer, based on Iannis Xenakis works, for digital art.
  • Inscore - an environmnent for the design of interactive, augmented music scores.
  • Leipzig - a composition library for Overtone.
  • Leiter - TypeScript-based library designed to generate musical scales.
  • Midica - MIDI programming language with decompiler and player, supports karaoke.
  • music21 - A Toolkit for Computational Musicology.
  • Music Suite - a language for generalized music notation and theory, based on Haskell.
  • mutwo - a Python library for composition that outputs notation, MIDI or audio files and that provides a generalized model to describe time-based structures.
  • Nyquist - a sound synthesis and composition language.
  • OpenMusic - a visual programming language based on Lisp.
  • Orca - live programming environment for music.
  • Overtone - an Open Source toolkit for designing synthesizers and collaborating with music.
  • Platonic Music Engine - an open-source music generation framework written in Lua.
  • Pure Data - a visual programming language for audio and other multimedia.
  • pyo - a Python module to help digital signal processing script creation.
  • py-modular - a modular and experimental programming environment with basic DSP routines in python.
  • Sardine - a music live coding library for Python 3.10+ (MIDI/OSC/SuperCollider).
  • slippery chicken - a Common Lisp environment for composition building on CLM, CMN, CM, MusicXML and Lilypond for score, sound file, and/or MIDI file outputs.
  • Sonic Pi - a live coding synth with an emphasis on educational use.
  • Sporth - a small stack based audio language.
  • Strudel - an experiment in making a language built on javascript for live coding patterns using web technologies.
  • SuperCollider - a programming language for real time audio synthesis and algorithmic composition.
  • Tidal - a language built on Haskell for live coding patterns.
  • Topos - a web based live coding environment (WebAudio / MIDI)
  • tuneflow-py - python plugin SDK for the next-gen DAW, that allows you to program your music algorithms & AI models into all stages of music production
  • Unilang - Domain specific language used in Unison.

Music Theory Teaching

  • Artusi - Interactive music theory exercises.
  • Four Score and More - Tailored music theory exercises based on scores.
  • musictheory.net - Lessons and exercises
  • OpenMusicTheory - a growing, online "textbook" for music theory and aural skills.
  • Theorytab - a database of songs with their chord functions.

Standards

  • MEI (Music Encoding Initiative) - an open-source effort to define a system for encoding musical documents in a machine-readable structure.
  • MusicXML - the standard open format for exchanging digital sheet music.
  • SMuFL (Standard Music Font Layout) - a specification for mapping music symbols to Unicode for use in music fonts.

Other Awesomeness

Related lists

  • Awesome AI Music Generation - A curated list of AI music generation tools and resources.
  • Awesome Audio DSP - A curated list of audio DSP and plugin development resources.
  • Awesome Audio Visualization - A curated list about Audio Visualization.
  • Awesome Music Listening - Awesome list of websites dedicated to listening to music.
  • Awesome Music Production - A curated list of software and resources to create music.
  • Awesome Music Programming - A curated collection of music programming languages, libraries, frameworks and tools.
  • Awesome Python for Scientific Audio - A curated list of python software and packages related to scientific research in audio.
  • Awesome sheet music - A curated list of awesome sheet music software, libraries and resources.
  • Awesome WebAudio - A curated list of awesome WebAudio packages and resources.

Other amazingly awesome lists can be found in the Awesome list.