antheax / ScoreInUrl

Display and edit music score using ABC notations, and encode it in the URL

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Score In URL

Screenshot

Score In URL lets you write your sheet music in ABC Notation, and share it through a URL, where all content of the score is encoded (base64) as a query parameter. It's heavily inspired by the great project: Hashify, which does a similar thing with Markdown documents.

It is privacy-friendly, as there is nothing stored on a remote server. This website is, in fact, hosted on GitHub Pages, with no backend whatsoever.

Score In URL is free and open source, under the MIT license. You can find the source code on GitHub.

ABC Notation

ABC Notation is a way to write sheet music with plain text. You can learn more about it, by reading the full documentation, or use this cheat sheet as a quick reference.

Examples

Bach Partita 3 Preludio

A simple C Major scale

Air on G String

Running and Developing Score In URL

Dependencies:

To start a testing server:

npm run dev

To run a production version of Score In URL, build the project, and host the destination directory as static files, with basically any server.

npm run build

If you'd like to host this project on a sub-path, like I do on https://powersnail.com/ScoreInUrl, supply the build command with a base URL, otherwise, the internal links will not point to the correct address.

npm run build -- --base=/subpath/

Currently, I'm hosting with GitHub Pages, by pushing the destination folder to a separate branch dist, and pointing GitHub Pages to that branch.

Acknowledgement

My utmost gratefulness to Hashify for the inspiration. And special thanks to Hero icons for all the icons on this site.

About

Display and edit music score using ABC notations, and encode it in the URL

License:MIT License


Languages

Language:TypeScript 47.7%Language:HTML 45.7%Language:CSS 3.8%Language:JavaScript 2.9%