Inspiration

https://www.theguardian.com/sport/shortcuts/2016/jul/18/rio-2016-42-condoms-per-athlete-olympic-village-sex "Olympians wanna meet other Olympias from other countries" - Jeremy Bloom (LAHacks 2017)

We set out to make a way for Olmpians to socialize and meet each other in a new innovative way.

What it does

Olympians simply login with their name, facebook, and country. Random chat rooms are then formed with a prompt "Predictions about this event . . ., What was the hardest training workout you did in preparation. . ., etc. All participates in the chat room are anonymous but given country handles, ex. Nigerian Turtle, Canadian Koala, etc. (gender identifying colors later). However, the chat rooms are initialized with a time limit, 5 min, 15 min, an hour, etc. During this time the users are free to talk about whatever they feel like, completely anonymously. At the end the room is closed and users are tossed out. They are given the option to find out who the others from the room were, if both parties say that they want to share their identity with each other. If a mutual connection is formed, identities are shared and a 1 on 1 conversation is prompted between them (via FB for now). Olympians can continue to join chat rooms after and the process repeats.

How I built it

We created an initial login website using HTML and CSS. After completion the login page redirects to the chat room. We generate random country animal pairs and do all the back end with JavaScript.

Technologies involved:

NodeJS VueJS Socket.IO Azure

Challenges I ran into

The biggest challenge I ran into was when I had href"css/bootstrap.css" (missing the equals sign). I remember thinking "I don't remember bootstrap being this hard to work with. . ." despite that though I still didn't notice the typo. Instead, I proceeded to make my own entire CSS stylesheet for a long time. Got it working, pushed it, and then notified by my teammate 5 min later that I'd f***** up. Also, Azure doesn't like sockets.

We felt that we wanted to take the opportunity to learn something new, like choosing to work with VueJS for the first time. And since sockets are asynchronous it was hard to make the interface reactive to data arriving.

Accomplishments that I'm proud of

I made my own stylesheet! I also learned some JavaScript and tied my front end stuff with the backend which was cool.

Real time baby.

What I learned

Some JavaScript. Bootstrap works better when you actually use it.

What's next for OlympicChats

BILLIONS with a Mother F******* B, BABY! We also had a ton of feature ideas we didn't have time to implement. Olympians submitting their own prompts for chat rooms. Utilizing Microsoft Natural Language API to pick up when an athlete name is mentioned in a chat room, push notifying that athlete "Turkish Peacock mentioned you", then telling them for 0.99$ they can spectate and see what's being said about them. Proximity alerts "Nigerian Turtle is close by!". etc. We'd love to implement these new features. We believe they would make the user experience a lot more involved and exciting!

Share this project:

Updates