Inspiration
Keeping up with college life is difficult. Students feel overwhelmed just thinking of their daily tasks, let alone keeping up with their favorite topics.
What it does
Our application GYST tackles this problem in a simple, automated solution. All a user has to do it input their favorite news buzzwords, personal calendar, and phone number. From this, they will automatically receive a personalized text message from GYST containing their daily tasks, upcoming tests, news articles, and even have the option to receive a joke of the day!
How we built it
We used React Bootstrap to make the UI, and many, many APIs to scrape data and complete tasks. We used a Google API client to authorize users and pickle to store their credentials. From this, we used the Calendar API to scrape user events and sort the data into appropriate categories based on dates and keywords to create the text message. We used the Twilio Conversational API to send and receive text messages between GYST and the user. Based on the user's interaction with the UI, we created a personalized news summary using a News Client API. In addition, the user has the option to send text messages and receive either the Joke of the Day using Twilio or the daily weather report using Weather API. This functionality was aggregated using Amazon Web Services, S3, Lambda, and API Gateway.
Challenges we ran into
We ran through many challenges. To begin with, our team was not really familiar with starting the base of a new project. We did not know how we could completely integrate our front and back end, but while working together we were able to change and learn. Another challenge we had was through Github. We accidentally deleted our local code repo, but fortunately, we had a backup on another computer. Another thing that we went through was holding the OAuth for the Google Calendar API. Each time when we integrated our back end, we would lose the token. However, we were able to find a way to solve this using pickle.
Accomplishments that we're proud of
We are very proud of all the overall learning that we got from our first hackathon. Many of us never created a project from scratch and would always use skeleton code. This was the first time we were able to visualize a project, outline it using Figma, and integrate a back end with AWS and python. Our team could not have accomplished this alone, but together we were really glad that we could create something new.
What we learned
Our entire team learned how to use python to scrape off of the Google Calendar API. In this process, we also learned how to use pickle to store an oAuth token for our project so that we would be able to confirm this throughout the processes. We also learned how to format and create our frontend going from Figma to javascript. Our team didn't know much about working with different calls but we were glad that we were able to develop our skills. We also learned how to integrate lambda into the API gateway and create post requests. This allowed us to have a feasible and efficient backend.
What's next for Get Your Sh*T Together
We would like to add more implementations for when you text back to GYST. This way we could develop an entire bot that has a large number of capabilities. For example, getting different traffic updates for the day. The simplicity of the text messages allows our capabilities to grow and that's what we would like to develop.
Built With
- amazon-web-services
- api-gateway
- axios
- bootstrap
- css
- figma
- google-calendar-api
- google-client-api
- google-client-authentication
- html
- javascript
- lambda
- news-api
- pandas
- pickle
- python
- react
- s3
- twilio
- weather-api
Log in or sign up for Devpost to join the conversation.