Beyond the scale
Author bramtayl
11 Stars
Updated Last
1 Year Ago
Started In
May 2020



You can use Justly to both compose and play music using any pitches you want. Using staff notation, you can only write the items of the 12-tone scale. Some intervals in any 12-tone scale are close to harmonic, but other intervals are not. Johnston expanded staff notation, but relying on staff notation limited him.


You can use vcpkg and cmake to build binaries. I've only tested this on Windows.

Command line usage

You can provide 1 command line argument, the path to a song file to open. If you don't provide any arguments, Justly will prompt you to create or open a song file.


In Justly, you write intervals as a rational fraction (integer / integer) times a power of 2. You can write the same ratio in multiple ways. For example, you can write a fifth as 3/2, or 3*2^-1.

You will likely only need to know 4 intervals:

  • Octave: 2/1
  • Perfect fifth: 3/2
  • Major third: 5/4
  • Harmonic seventh: 7/4

You can create other intervals by multiplying and dividing these intervals. For example, a minor third is up a perfect fifth and down a major third: (3/2) / (5/4) = 6/5. A major second is up two fifths and down an octave: (3/2) * (3/2) / 2 = 9/8.

Top sliders

You can edit the starting frequency, starting volume, and starting tempo using the sliders on the top.

  • Starting frequency is the starting frequency, in Hz.
  • Starting volume is the starting volume, between 0 and 100%. To avoid peaking, lower the volume for songs with many voices.
  • Starting tempo is the starting tempo, in beats per minute. These beats are indivisible, so for songs which subdivide beats, you will need to multiply the tempo accordingly.

Chords vs. Notes

In Justly, there are "chords" and "notes". A chord is a set of "notes" that will begin playing simulataneously. You can think of a chord as a "key change" or modulation. The interval, volume ratio, and tempo ratio changes in chords are cumulative. The interval, volume ratio, and tempo ratio in a note are in reference to the chord, but only affect the note itself. You can change the instrument of notes, but not chords. Currently, only one instrument, "default", is supported, but that could change.


Here is a schematic of a song.

Starting frequency: 220 Hz
# I
1: 1, 5/4, 3/2
# IV
2/3: 3/2, 1o1, 5/4o1
# I
3/2 for 2: 1 for 2, 5/4 for 2, 3/2 for 2

This song starts with a key of frequency 220Hz, that is, a A3. The key does not change in the first chord. The three voices in the first chord play the tonic (≈A3), third (≈C#4), and fifth (≈E45). All three voices play for 1 beat.

After 1 beat, the key changes: you divide the key by 3/2, so the key goes down by a fifth. Now the key is close to D4. The three voices play the fifth (≈A3), up one octave (≈D4), and up one octave and a third (≈F#4).

After 1 more beat, you multiply the key by 3/2, so the key goes up by a fifth. The voices repeat the items in the first chord, but play for 2 beats.

Used By Packages

No packages found.