Inspiration

We haven't seen many coding games and especially none for debugging code. We think that it is a good idea as it very unique and shows the possibilities of things.

What it does

The app will give you a piece of code for you to debug. It will give you a small summary of what is wrong with it and you have to solve it. There is also a messaging console spread across all levels to allow you to think and solve it with other people and alert people that have already beat it for help

How we built it

We built Bug Catcher using Fastapi and vanilla html, css, js. The code editor is ace.js and the messenger is custom build.

Challenges we ran into

Messaging: Was a difficult task as we weren't using npm. Sending multi line files: Is difficult as loading a file will cause multiple lines to be put to line. Docker: We have used docker before but never with multifile python projects, figuring out how to import modules and files was a tricky stop

Accomplishments that we're proud of

Sending multi line files: The Solution for this is an interesting one

code = Path(f"app/python-levels/{level}.py").read_text()
out = code.splitlines()
output = '\n'.join((line) for line in out)

Password hashing: hashing passwords in python securely isn't as easy as some might think

salt = os.urandom(128)
print(salt)
key = hashlib.pbkdf2_hmac('sha256', password.encode(), salt, 100000)
key = b64encode(key).decode('utf-8')

What we learned

We learned many new principles about python and java script. Doing this will make future projects easier

What's next for Bug Catcher

If people seem to like this as much as we hope it will be deployed to its own website and be permanent. So if you like it make sure we know!

Built With

Share this project:

Updates