First of all these are the scales I picked based on my JS:
const SCALES = [ { name: ‘Major’, set: [0, 2, 4, 5, 7, 9, 11] }, { name: ‘Natural Minor’, set: [0, 2, 3, 5, 7, 8, 10] }, { name: ‘Harmonic Minor’, set: [0, 2, 3, 5, 7, 8, 11] }, { name: ‘Dorian’, set: [0, 2, 3, 5, 7, 9, 10] }, { name: ‘Mixolydian’, set: [0, 2, 4, 5, 7, 9, 10] }, { name: ‘Phrygian’, set: [0, 1, 3, 5, 7, 8, 10] },];
And so, I officially started working with the JavaScript, and it feels very real. By now, I have about 270 lines of code, which is quite an achievement, considering how much I have already done. With this part of the project, I am relying on my logic, a bit of help from AI, and a great deal of researching musical scales. I am not a great musical individual, so I needed to get into this subject, and while doing this, I discovered that there are monophonic scales. They sounded cool, and thus, I am going to implement them in the program as well. because why not lol?
While the JS gets more and more complicated by including pitch-detection logic and scale mapping into it, it is really exciting to see how this whole system gradually starts coming together. As soon as the detection algorithm is finished, the next step for me will be the implementation of the local history system, which will allow the users to keep track of the past detected scales on their computers.
So, there is still a lot to do, but the progress is going good ig so far. atleast its funn.