I’ve been playing guitar for 9 years now. My early adventures in guitar were a combination of weekly guitar lessons and a digestion of the massive databases of guitar tabs that are freely available online. I was amazed by how much of my favorite music was out there for me to learn, for free.
Two years ago I started playing the mandolin. While there were still plenty of tabs available freely online, these databases were tiny compared to what was available for guitar. To learn a lot of my favorite songs I’ve had to resort to traditional music books and manually transposing tablature from guitar to mandolin.
Tab Transpose is a free open-source web app I built to automate this process. Tabs can be transposed across instruments, tuning, octaves, and eventually capo positions.
The algorithm I wrote for this web app was incredibly simple and I’m surprised I couldn’t find something out there that already does the same thing. The app simply converts fret values to a raw note number representing its distance from C0. Notes are then compared to the strings on the output instrument and assigned to the string most appropriate.
In its current state, Tab Transpose does not support double-digit frets (these will be treated as two separate notes) and notes will be lost if the algorithm decides that two notes played at the same time are most appropriately played on the same string.
I plan to extend this app further to handle capo positions and root positions as well as additional instruments and tunings.
I will take all merge requests and suggestions seriously. To see the source code, visit my GitHub profile.