We set out to create an application that everyone could benefit from, focusing on an aspect of life that people value and often struggle to balance: social connection. Most people crave social interactions, but maintaining relationships requires effort and time, which can be challenging to manage. We recognized that one of the biggest factors affecting relationships is the amount of effort put into seeing and spending time with others. Our goal was to develop a tool that helps people prioritize and organize their social interactions, making it easier to nurture and maintain meaningful connections.
Our app helps users manage and prioritize their social connections by organizing and scheduling their interactions. With an easy-to-use interface, users can import their schedule, and send out friend requests to those in their contacts. Upon adding a new friend, users can assign a priority level, indicating how frequently they wish to stay in contact with that person Our unique algorithm considers user priorities and availability to make scheduling simple and convenient, finding available times for both parties. Whether you want to catch up with close friends, or network with new acquaintances, our app makes social scheduling effortless and enjoyable.
We utilized a diverse tech stack, which included PostgreSQL for database management, Python and Flask for generating the API endpoints, ReactJS for the front end, and a pre-trained zero-shot classifier model for sentiment analysis.
One of the main challenges our group encountered was integrating all the various components of our application. Each component had its own setup, configuration, and nuances, making it difficult to create a cohesive and efficient system. We had to ensure that the data flow between the front end, back end, and database was smooth and that each part of the application could handle the data correctly and efficiently.
Another significant hurdle was creating our database from the ground up. Given our limited experience with database design and management, this task was particularly challenging. Planning how to store data and represent it in different tables required a deep understanding of our application's requirements and data flow. We had to carefully determine the relationships between tables, ensuring that the database structure was both efficient and scalable. Furthermore, it was our first time using Flask, which added to the difficulty of setting up the API endpoints. Learning Flask and configuring it to handle our application’s requirements was a steep learning curve, involving numerous trials and adjustments to get the API functioning correctly.
Building and Populating a Database from Scratch
Developing a Proprietary Algorithm for Calendar Matching
Creating a Visually Appealing & User-Friendly Front-End
Throughout this project, we gained valuable insights and skills in several key areas. Going into this, we had never created our own database or developed API endpoints before. We learned how to create a database from the ground up, involving the design and implementation of efficient database schemas, data integrity, and security best practices. This experience provided us with a solid foundation in database management. Additionally, we created our own API endpoints, enabling seamless communication between different parts of our application. In addition, we delved into Natural Language Processing (NLP), allowing us to preprocess text data to determine the relative importance of a scheduled task.
Google calendar imports
Eventbrite/Meetup integration
Blockchain for secure information storage
Machine learning for predictive scheduling
Priority-Based Scheduling with Location Factors