itzblim / transposer

Chrome Extension for Transposing Chords

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

logo

transposer v0.0.0.1

Transposer is an open source Chrome Extension for quickly transposing chords on websites.

small-screenshot

Features

  • Simple and quick way to tranpose all chords on a webpage to a new key:
    • Increase the key by one semitone (Ctrl/Command+Shift+Up)
    • Decrease the key by one semitone (Ctrl/Command+Shift+Down)
    • Tell transposer the current key and select a new key
  • Automatically detects all chords:
    • Support for major, minor, diminished, added, sustained chords, chord inversions and more.
    • Does not modify other parts of a webpage
      • (e.g. the Am in American will not be detected as an A Minor chord)

Purpose

  • Musicians often use online chord sheets.
  • Many websites force users to pay for automatic transposition.
  • Transposer works on any site that embeds chords as text rather than graphics.

Milestones

High priority

  • Create a working backend
    • Identify chords in a website ✅
    • Transpose chords and replace original text ✅
  • Create a working frontend
    • Allow users to select an adjustment (up/down semitones) ✅
    • Allow users to indicate the current key and select a new key ✅
    • Allow users to see the offset from the original key ✅
    • Allow users to return to the original key with a single click ✅
    • Allow multiple instances of extension in different tabs/windows ✅
    • Allow keyboard shortcuts to change the key ✅
    • Provide a user friendly interface ✅
    • Perform testing and resolve edge cases
  • Publish on the Chrome Web Store

Medium priority

  • Make a clean UI ✅
  • Provide proper documentation for external contributors

Low priority

  • Automatically identify the original key of a song

How You Can Contribute

Feel free to submit an issue / fork / pull request here!

Built by Benjamin Lim

About

Chrome Extension for Transposing Chords

License:MIT License


Languages

Language:JavaScript 69.2%Language:CSS 20.8%Language:HTML 10.0%