Class Projects - Spring 2015


A tool that automatically generates timelines from Instagram hashtags for events.

This is "InstaTimeline" by Northwestern U. Knight Lab on Vimeo, the home for high quality videos and the people who love them.
What it does

Social media has many challenges. The main challenge with social media involves handling the huge amounts of content and aggregating this content into an interesting narrative. In order to solve this problem, we built an application called InstaTimeline to generate a chronological story from social media content into a clear, captivating, and consumable narrative.

Before trying to tackle the entire sphere of stories from social media, we decided to focus on weddings. Weddings are predictable, structured and overall social media friendly. If we could create meaningful stories for weddings, we could tell stories for all types of events that have a predictable progression. To create a wedding timeline we use the unique hashtag for the event, fetching all of the posts from Instagram featuring that hashtag. After obtaining these posts, InstaTimeline orders the content chronologically and selects only the meaningful posts to display. The final result is a beautiful timeline capturing the essence of the wedding celebration, from the proposal through the last dance at the reception.

How it works

InstaTimeline builds off of Timeline.js developed by the Knight Lab at Northwestern University. For a traditional timeline built off of Timeline.js, a content creator would have to search for content, enter it manually into the timeline, and decide how to tell their story. InstaTimeline works to automate this process by creating a model for the specific event and by separating posts into sub-sections of the event. When the user lands on the homepage, they are presented with a simple interface featuring a single text box to input their hashtag. After the user enters this, InstaTimeline fetches all of the posts on Instagram that have that hashtag. With these posts, InstaTimeline performs selection logic to pick out the most important posts and to order the posts chronologically. Posting time alone is not indicative of the actual time the event occurred due to the fact that people often post on social media after the event has occurred.

To select posts, InstaTimeline analyzes the captions associated with the content, searching for unique keywords pertaining to events in the wedding. For example, the keyword “father daughter dance” is highly specific and only occurs during the reception. If we know this event occurs during the reception, we can use the culturally defined structure of a wedding to appropriately place it in order.

Key Technologies (itemized list)

● Node.js

○ Useful libraries:

■ express

■ request

■ instagram-node

■ moment

● Angular.js

● Instagram API

● Heroku

Next Steps

InstaTimeline works beautifully for weddings, however, we would like to perform additional testing and tweaking to make sure we are telling the most compelling narrative possible. Right now, our model works well with Instagram posts that have lots of captions or descriptions because we select posts based on the keywords. In the near future, we need to train our system to grab important data that also contribute to the meaning of the narrative. We hope to use summer—a huge wedding season—to further hone and refine our application. Additionally, we would like to explore possible monetization options and paths. Lastly, we hope to expand InstaTimeline to work with other structured events like concerts, rallies, marathons and breaking news. These events feature their own set of keywords and orderings, requiring the creation of deterministic models for their keywords. We believe that these events are structured in a way that makes it possible to find meaningful content that truly depict the essence of the event.

The splash page for InstaTimeline. The user simply enters a hashtag to create their InstaTimeline.

An InstaTimeline created for the #pagingthemarcels wedding showing a post that was selected as a “Wedding Day” event.


Emily Harburg

Ezra Kaplan

Patrick Weston

Ted Wu