Hello guys!

I am glad to announce that we have added many other chords to Flat. ✌️

I will describe this from a data perspective. We don't store scores as plain text within Flat. We rather store the chord semantic which is described by the MusicXML standard. We do this since this will allow to use the chords for the playback. 😉

Jazz Chord Notation

When it came to Jazz chords notation, there are four data fields that are important.

The first one describes the root note of the chord. This is a combination of the step and the alteration. It is what appears on the left part of the chord: C#, Gb, E, etc.

The second one describes the kind of chord (major, minor, dominant), which is the notes intervals we will base our chord on.

(The first version of the chords we released on Flat used these two elements.)

However, the second version introduced another element: the bass note in case of bass inversion. It allows you to write chords like C**/D**. It is used when the note that has the lowest pitch is not the root note.

The new version

And now, we have just released the third version, with the degrees modification. It allows to add/alter/remove notes from the base pattern of notes.

Let's take for instance the half diminished chord that many of you have been asking for: Cm7(b5). It uses internally a Cm7 chord, with a degree modification: we state that the fifth will be lowered by an half-tone.

Then, it makes it possible for us to introduce many new chords:

  • C7(sus4) = C(sus4), b7
  • C7(#5) = C7, #5
  • Cm7(b5) = Cm7, b5
  • C7(b5) = C7, b5
  • Cm(maj9) = Cm9, 7(natural)
  • Cm9(b5) = Cm9, b5
  • C7(#11) = C7, #11
  • C7(#9) = C7, #9
  • C7(b9) = C7, b9
  • C7(b9sus4) = C(sus4), b7, b9
  • C9(sus4) = C(sus4), b7, 9(natural)

What's next!

The next step is to introduce the classical chords notation, with roman numerals.
Roman Numerals

Stay tuned,