# AlphaTab alphaTab is an [[Open Source]] library that renders music notation and guitar tablature, then plays it back. It's maintained by the CoderLine organization, has been open source since 2010, and uses the MPL-2.0 license. Why care? Because rendering sheet music correctly is REALLY hard. Beams, ties, tab numbers lined up under the right notes, layouts that reflow when the window shrinks... You don't want to build that yourself. alphaTab packages all of it as a library you drop into your app. ## What it does - **Renders** standard notation, guitar and bass tabs, drum tabs, slash notation and numbered notation (jianpu), alone or combined - **Reads** Guitar Pro 3 to 8, MusicXML, Capella and alphaTex files - **Writes** Guitar Pro 7+, alphaTex, MIDI and PCM audio - **Plays** scores with a built-in SoundFont synthesizer (SF2/SF3), or syncs them with a backing track, an audio file or a video. A cursor follows every beat, and you can click to seek, loop a range, change the tempo, or add a count-in and a metronome - **Lays out** scores as pages, as one long horizontal line, or as "parchment". Each track can be shown, hidden, muted, soloed or transposed. Colors and the music fonts (SMuFL) can be swapped too ## One core, three platforms The core is written in [[TypeScript]] and transpiled to .NET and Kotlin, with no runtime dependencies. Same engine everywhere: - Browsers and [[Node.js]]: `@coderline/alphatab` on npm (types included) - .NET Standard 2.0, plus WPF/WinForms controls on .NET 8 - Android: Kotlin, API 26+ There are Vite and webpack plugins that bundle the workers, fonts and SoundFont for you (one less build config to fight with). ## alphaTex alphaTex is alphaTab's own text language for writing music. You type the notes, alphaTab draws the score. It ships with a language server (completion, hover docs, formatting), a TextMate grammar and an experimental Monaco editor package. That's my favorite part. Music as plain text can be versioned, diffed and stored right next to your [[Markdown]] notes. It's exactly the kind of engine I'd reach for to render tabs inside a web app or an [[Obsidian]] plugin. ## References - https://www.alphatab.net/ - https://github.com/CoderLine/alphaTab ## Related - [[Open Source]] - [[TypeScript]] - [[JavaScript]] - [[Markdown]] - [[Obsidian]]