The Team
Campbell Brobbel, Bryce Kennedy, Nathaniel Susilo, Andrew Alvaro, Danny Ho
Links
Github:
https://github.com/brycekennedy117/Mingle
Trello board:
https://trello.com/b/nMbvNem4/project-mingle
Technical documentation:
https://drive.google.com/file/d/1aLTP7VzQvsnyXw_sa55K2UTvrJFg3Lbq/view?usp=sharing
Operations documentation:
https://drive.google.com/file/d/1DmzXPY8MsZT7hM7YnNOVAJTgOkVG8mSm/view?usp=sharing
For this project, the focus was not necessarily on the application, but more as a tool for the surrounding system that allows efficient productivity – which means using CI/CD tools such as Travis to deploy our application to Elastic Beanstalk, Trello, Slack and Google Hangouts for team communication and Github for working on parts of the application.
Our group composed of five people with different backgrounds/skillsets, to create a dating website MVP. My role inside the project was a team member, technical advisor and AWS administrator.
Since the scope of the assignment was creating an MVP within a 12 week period, Laravel was chosen since it has the fastest way to create the necessary boilerplate for parts of the application (authentication, databasing, web routes) and has a familiar MVC structure so the rest of the team could also pick it up easily, and hot reload for even faster development.
Other tech stacks were considered such as React/Lambda/S3/DynamoDB, however most of the team was inexperienced with this stack, and ES6 can be a challenge on its own without considering React, so this was scratched. C#/ASP.NET has a slightly higher learning curve than Laravel and being that most of the team weren’t familiar with either of the frameworks, naturally we decided upon Laravel.
For the full technical details of the application, the documentation can be found here
Short Summary
The application basically works like Tinder (click on the heart button to ‘like’ a person, and the cross to ignore them), except that it is web based and the matching algorithm is based on the five personality traits - extraversion, conscientiousness, neuroticism, agreeableness and openness. A score is calculated based on a user’s response to these traits and is calculated into a final score. From that score, users are compared based on this and their area/location, where it will find the perfect match!