Inspiration
Every Georgia Tech student is all too familiar with the experience of searching for a place to study. TableShare was created as a solution to the ever-present challenge of finding study spots in the library. We observed that the study spot shortage is not because of lack of seating but rather because of inefficient use of the available space. Often, a single student will occupy a four- or six-person table, and the empty seats remain unused, since students are reluctant to share tables.
TableShare offers a solution to this problem by allowing students to mark whether tables are available and indicate whether they are open to other students joining them at their table. Not only does this optimize the use of existing space, it creates a sense of community and promotes collaboration by encouraging students to build new connections. Students have the chance to meet students they might not otherwise encounter.
What it does
The TableShare website has multiple pages representing rooms in different study spaces. Users can select a room and browse its tables, which are color-coded according to availability. Additionally, users can see whether a table is currently occupied by a student who is open to other students sitting with them. If a user chooses to sit at an empty table, they have two options: 1) mark the table as open to other students, or 2) mark the table as full. They can also leave an additional message, which can be read by other users. This message can be used to communicate what they’re studying for, or just to leave a note of encouragement for other students.
This website integrates with a hardware component that would be placed on each table. Each table has a numbered plaque with a light indicating its availability based on user input on the website. We also envision this application extending to multiple uses across campus, such as at the dining hall.
How we built it
The front end was created with HTML, CSS, and JavaScript. We used GoJS to create an interactive map of tables with easily configurable room layouts. Users can select a table and edit its availability and notes to welcome other students to sit nearby.
For the backend, we made a web server hosted on a Raspberry Pi using Flask in Python. When a table is set as available, it turns on an indicator LED. Our project is just a prototype of this light, but in a production environment, each table would have its own light and plaque labeled with its table number.
Challenges we ran into
One of the most challenging parts of this project was integrating the front end and the back end. Some team members had experience with front end web development, and other team members had experience with back end and hardware, but none of us had extensive experience with full-stack development.
Accomplishments that we're proud of
We are excited that we were able to learn new technologies, libraries, and programming languages. Most of our team was new to JavaScript, and none of us had used a Raspberry Pi before, and we are so proud of the final product we ended up with. This is a website that would benefit all of us at GT, and we hope it could someday be a reality.
What we learned
We learned a great deal about collaboration and full-stack development, especially in integrating hardware and software.
What's next for TableShare
We hope to spark inspiring conversations and enduring friendships by fostering a collaborative and welcoming environment here at Georgia Tech!
Log in or sign up for Devpost to join the conversation.