Inspiration
I own a mechanical keyboard and love the sound it produces, though I always wanted more. I figured I could make a program to fulfill my desires without having to actually spend money. Soon I realized it didn't have to be the sounds of a mechanical keyboard I could simulate, but anything.
What it does
MusiKeys maps basic keys of a keyboard to audio files. Even when the window is out of focus or minimized, typing a key can still result in a sound being made. Whether it be small sound effects or entire songs, this program can play it, as well as additional functionality.
How we built it
Our team programmed completely in Java with the JavaFX library and JNativeHook. We worked as a team to delegate tasks amongst ourselves, then came together when we all felt we were ready to merge our progress. Finally, we would rinse and repeat until the final product came together.
Challenges we ran into
Some of the team were completely new when it came to the JavaFX library, so teaching how it worked and it's capability as well as restrictions took some time. We also ran into small issues along the way, as well as figuring out how to detect keystrokes even when the window is minimized.
Accomplishments that we're proud of
We are proud of being able to come with a finished project for our first ever Hackathon. The functionality works just as intended and we have accomplished what we consider to be a difficult but practical task.
What we learned
All of us learned more about the JavaFX library as well as the difficulty of detecting input even when the window is out of focus. We learned about the difficulty of working together as a team as well as how much better it is, being able to delegate more time to certain tasks.
What's next for MusiKeys
What's next for MusiKeys is improving the graphical design of the program and cleaning up the code to look more presentable. Afterwards, additional functionality and more ideas that are in the benefit of the user will be considered for updates.
Log in or sign up for Devpost to join the conversation.