Inspiration

Coding is what I love, I'm always looking for opportunities to learn more, and for fun projects to spend my time coding, and of course having the opportunity to connect with Canadians companies was a big plus.

What I learned

It was a great opportunity to see what some Canadians companies are looking for in a candidate, I discovered the existence of a few new technologies (which was my main goal) and had a change to practice my MongoDB skills and learn more about API building.

Difficulties

I had few difficulties, the first one was when I realized that I couldn't have a unique constraint in a array within MongoDB, after that I had to change a few things. I decided to use Mongo to exercise my skills more, I had studied Mongo but never used it, the lack of experience made me struggle a bit.

The second difficult was to find a way to reply a guess only when all the others player have guessed. The back-end technologies that I know don't allow that kind of thing, but from what I know I beleave that Node.js would do the trick, but since I never studied Node or used it, and I didn't have sufficient time I decide to stick with the backend framework I know.

Great experience, great exercising.

App

This is a rest api developed in Java and MongoDB, that allows the users to play Mastermind. This project was developed for the Vanhackathon and covers the first challenge proprosed by Axion Zen:

Are you a backend architect that can spin up robust, well tested APIs? Then this may be the challenge for you.

Build an API that you can play Mastermind with! The language and stack you choose to use is it up to you. The endpoints you create and the structure are up to you but it must be able to support multiple users hitting the API at the same time playing different games of Mastermind and the API must respond with the proper number of exact and near matches for every guess.

To go a bit further, try implementing a multiplayer component to the game where a user can hit an endpoint to create a game and wait for another user to join the same game. Once the second user joins, the API waits for guesses from both users and responds to both users with its response once both guesses come in. The user that guesses the code first wins and the final response shows both users' guessing history.

Documentation

All documentation and how to install guide can be found on: https://github.com/Teless/ChiefMastermind

Built With

Share this project:

Updates