What it does
How I built it
The client side user interface is built using standard web technologies (HTML/CSS/JS). I started off by drawing a quick wireframe of the UI and wrote the basic client html/css code first. Then, I incorporated JS into the layout to give my code functionality. I tested the code evaluation, code editor and general UX first before going to work on the server. When working on the server, I decided to use express.js to host a server that would connect the users to the games.
Challenges I ran into
The biggest challenge I had was that I was working alone. This meant that not only did I have to do more work in less time, but I also had to learn and understand every stage of the development process. In addition, I didn't have another pair of eyes to help me look through the code. When working through the server code, I had to individually parse through lines and lines of code and interpreting what would happen live.
Accomplishments that I'm proud of
The first night of the hackathon, I completely powered through the night and finally getting sleep once I got a working prototype. Through my git commits, you can see the variety of emotions I was going through as I managed to work past certain bugs.
What's next for Code Challenge
Hopefully, I'll be able to work through all the small bugs (i think it's just that the server is slow. I'm considering migrating to a different server located somewhere else.) and after that, I'll need to consult some security professionals since it's taking client input and processing it on my server so I need to make sure no one makes a billion api calls and costs me a ton of money and eventually be able to push this as a complete project and stay around to maintain it.
To run the program
Please read the readme file on the github to understand how to use the program.