Home page: Choose to create or join a room!
Join page: enter a room ID and join that room or go back to Home
Pop up given if you try to type when it is not your turn!
Successful submission screen, all testcases passed!
Submission with an error in the code, error message displayed to user to fix
Submission showing off "run" button feature, allowing user to see their stdout (like on a console)
The Origin Story: We had all been anticipating HackUCI and wondering what we were going to make. Then one night at Albert's house, the inspiration came. We were all practicing LeetCode questions together by mock interviewing each other and discussion solutions. Albert had half of a solution to a LeetCode question left on a whiteboard, and I jokingly told Jeff to hurry and try to finish Albert's code before he came back. Leon immediately thought it was a great idea for us to try and implement it for HackUCI. And then the dream was born...
The inspiration for the application itself comes from the educational value of LeetCode, and the ease of collaborating with friends through applications like Google Docs. There are not enough interactive coding environments available, especially to beginner programmers learning how to code through pair programming. Another issue that comes up with pair programming that we have all experienced is that two different people may not be used to typing with the other person's laptop/computer, so CodeClimbers allows for pair programming with the comfort of your own keyboard. CodeClimbers is a solution that is fun, social, and educational!
Why is it called CodeClimbers?: The name CodeClimbers comes from the fact that learning how to code and become a LeetCode pro is a climb. We believe that every time we choose to team up with friends to make studying more fun, we make the climb just a little bit easier! We're all in this together!
What it does
CodeClimbers allows a user to team up with a friend to solve common programming questions. Users have the option to create a room or join a room using a code! It allows for two users to be in the same coding room and type in the same editor. The catch is, only one user can type in the editor at a time. This ensures that each user gets a turn at typing and prevents one user from overpowering another user (like what can happen in a normal pair programming situation). The timer is displayed on screen that signals when the switch is about to happen. Also on screen is whose turn it is. During the experience, the users can both run the code and see the output or error messages (using the run button). When they believe that their solution works, they may submit their code (using the submit button), and their code will be sent through a few hidden test cases before sending the users some feedback on how they did!
Be sure to check out the demo on Youtube! Demo Here
How we built it
Challenges we ran into
Accomplishments that we're proud of
We are all very proud of the product we were able to push out during HackUCI. This is the first big project that we have worked on as a team. We're proud that we were able to stay motivated and push through. Before we started the project, we weren't sure how we were going to do it because we had never worked with many of the technologies. However, that didn't stop us from successfully implementing a lot of our project's core functionalities.
What we learned
What's next for CodeClimbers
There is always room to grow! CodeClimbers hopes to eventually expand our program to allow for more coding languages. We also wish to implement a leaderboard so teams can see how they did compared to other. The design of the web application can always be improved as well to be more user friendly and intuitive. We are always striving to be better. Another feature that we hope to add in the future is a chat box so users don't need to be side by side to communicate while coding! We are hoping to deploy our project soon so everyone can have easy access to it!