Privacy
Last updated 28 August 2026.
MusicalHub is free software that anyone can run themselves. This page describes what this installation stores, why it stores it, and how to remove it.
What this installation stores
An account holds your email address, your display name, and either a password hash or the account id from the provider you signed in with. Alongside it we keep what you do with the app: lessons completed, exercise attempts and their results, XP and streaks, sheet music you import, and your settings. That is the whole list.
Using it without an account
Guest mode is a real path, not a trial. Your progress stays in your browser and is never sent anywhere. If you later create an account you are asked whether to bring that progress with you, and if you decline it is discarded.
Signing in with Google or GitHub
We receive your name, email address and avatar, and nothing else. We do not ask for access to your files, repositories, contacts or calendar, and could not read them if we wanted to. If an account already existed with the same address, the two are joined only once both sides have confirmed that address.
What we do not do
There is no advertising here, no third-party analytics, and no tracker of any kind. Nothing you do in the app is sent to another company, and your data is not sold, rented or shared.
Cookies
Two. One keeps you signed in; one remembers whether you chose the light or dark theme. Neither follows you anywhere else, and no third party sets a cookie on this site.
Only what you ask for: confirming your address, resetting your password, and answering you if you report a problem. There is no newsletter.
Deleting your account
From your profile, whenever you like. Deleting an account removes it and everything attached to it — progress, attempts, imported sheets — immediately and permanently, not after a retention window.
Who is responsible
MusicalHub can be self-hosted, and each installation is run by whoever operates it. This page describes this one. If you are reading a copy running somewhere else, the operator of that copy answers for it.