Inspiration
/giphy for Slack + Timehop for Facebook.
What it does
GIFMinute sorts a users last 3200 tweets by sentiment (using NLTK), applying a filter so it does not get too many closely-related tweets, then queues the top tweets for the user, complete with a great GIF from GIPHY.
- User logs in using Twitter
- App grabs their latest 3200 tweets (max set by Twitter)
- App sends the tweets to the AWS Lambda endpoint
- The AWS Lambda endpoint runs text sentiment analysis on each tweet, controlling for stopwords and the like.
- The Lambda Python script sorts the tweets by a 'delightfulness' score and sends them back to the Rails app.
- The Lambda Python script also sends back the keywords from each tweet to use for GIF sourcing
- The Rails app grabs a GIF from GIPHY
- The Rails app shows the top tweets to the user.
How we built it
The main app handling web requests and Twitter auth is in Ruby/Rails. The natural language processing happens in Python, via AWS Lambda.
Challenges we ran into
Accomplishments that we're proud of
Learning to use Lambda and connect a Rails app with a Python ML script/model.
What we learned
AWS Lamba requires more config than expected if you're trying to do natural language processing.
What's next for GIFMinute
- Reverse sentiment. Seeing your angriest tweets GIF-ified is also hilarious.
- Revise and launch.
- Create invite/referral system for rolling it out.
Log in or sign up for Devpost to join the conversation.