Hey! Welcome to this little website on which you will find a small computer science project of mine, which incorporates my interest in music. Excuse the design of this site - maybe I'll make it look nicer in the future :) The program is supposed to be a tool for musicians in desperate times - whenever you want to create a melody from scratch but feel uninspired, the MelodyMaker can provide you with some ideas.
Deciding which key your melody is supposed to be in is far from being the only thing you can do to influence the final output. You can furthermore decide on the time signature, the number of measures, the smallest subdivision. It even goes as far as giving you the possibility to enter your own rhythmic ideas and to accompany them with a chord progression that can be incorporated into the melody in different ways.
The only thing that might be a little bit tricky to grasp at first glance is using the chords system. The funcionalities I implemented could be considering somewhat complex, hence I will try to explain them.
Use your left mouse button to click onto the beat on which you want your chord to begin and drag it out onto the beat on which you want the chord to end. Then decide on the notes you want the chord to comprise. The two options presented to you in the ComboBox on the right-hand side of the chord note selection window ("No minor second intervals / Arpeggiate") are the two ways a chord can be processed by the program.
"No minor second intervals" means that all the notes of your selected key that don't have a minor second interval with any of the notes of your chord will automatically be added to the possible notes for the melody (for the duration of that chord).
"Arpeggiate" means that only the selected notes of your chord will be considered for the melody.
Use your right mouse button to click onto the chord which you would like to edit and hold it. Then drag it out onto the beat on which you want the selected chord to end. This means that everything stored in the selected beats will be overwritten by the edited chord after you finished editing your chord. Now, you can edit the existing chord and store it in all the selected beats. Don't forget to save your chords, though!
Like before, you can select an interval of beats you want to free from their chords by dragging your mouse over the respective beats. The only difference is that you have to press the mouse wheel in order to delete chords.
Generally, you can always reverse the starting and ending beat without any complication. You could, for instance, start on the sixteenth beat and drag it out to the first beat (instead of starting on the first beat and dragging it out to the sixteenth) and it will still work.
You can view the sourcecode here or you can check out the GitHub repo here.
You can download the MelodyMaker here. Make sure to keep the jar-file in the same directory as the "res" folder (after extracting the files from the zip-file) because if you don't, the application won't work properly. Enjoy!