Inspiration
Gether was inspired by Gather but it's a low budget, crappy knock-off version because we're all amateur programmers.
What it does
Gether is a web application that allows users to chat online for free. Users may use nicknames and interact with others by typing messages or using the buttons for "screaming" and "Dancing". There is also a 2 second cooldown per message to prevent spam. There are also separate rooms where people can chat separately from each other. People can select their names and change them as well.
How we built it
Our idea started during the event when we used Gather.town for meeting up. Adrian is better at JS than I (Christine) am, so he did the back end things, while I worked on the front-end stuff (the design). Everything was done with JS, HTML, and CSS.
Challenges we ran into
As a beginner of HTML, there were some difficulties I ran into. For example I had to program the sticky top navigation bar. I also couldn't figure out how to embed the chat box into the website, but with Adrian's help, I overcame this challenge easily. Adrian had a lot of bugs in his code as well, but an hour or so of putting alerts everywhere got rid of them. In addition, after the video was recorded a new feature for different rooms was added, but we hopefully made it clear enough how it works.
Accomplishments that we're proud of
We've managed to program all of the desired features. For example, I was able to get the sticky navigation bar to work with functional links. Additionally, I've found a way to embed the chat window into the website.
I (Adrian) am especially proud of the multiple rooms feature, similar to how in gather people can only hear other people in different locations. There are currently two public rooms: Cafeteria and Lobby, and users can switch between them. (More rooms can be added easily through copypasting the code) Unfortunately, this feature was not displayed in our video because I did not finish it before the video was recorded.
What we learned
As a beginner HTML programmer I learned the power of dividing containers. Dividing containers is useful, especially with CSS. You can save time by using
than having to type out the code for each line. I've also learned more about the CSS styles.Most importantly, I've learned how to program input boxes, buttons, and a server that anyone can join.
I rarely used Node.JS, and trying to make a chat app with an unfamiliar was a challenge. I've learned more about Node.JS this hackathon than in my entire life, and I also learned about using sockets to create dynamic webpages such as this one.
What's next for Gether
We hope to expand Gether by creating a sign-up feature or a "room code" feature where people can join private chat rooms using a provided code. This way, people don't need to sign up because, you know, people forget passwords! We want to ensure that Gether is as user-friendly and accessible to all as possible.
Log in or sign up for Devpost to join the conversation.