Inspiration
We are motivated to help people protect themselves from online harassment. Twitter's blocking system is robust and effective, but sometimes there are situations wherein the user requires a supplemental layer of insulation from a harmful individual. One area where the current block system lapses involves "quote Tweets:" If the user follows someone who interacts with a blocked person by way of a quote Tweet, then the user will still see the added comment, although the original Tweet from the blocked user is hidden by Twitter. Twitter Block + Quotes helps people feel safe in extreme cases wherein all content pertaining to a blocked user must be removed from the Twitter browsing experience.
What it does
When the Google Chrome extension is active and the user is browsing Twitter, all Tweets that quote a Tweet from a profile on the user's Twitter block list will be hidden. The extension can be toggled on and off by clicking the tombstone icon in the Google Chrome toolbar.
How we built it
We examined Twitter's API, then used JavaScript to create a background script that continuously calls a content script that checks the Twitter feed for "tombstones" (Twitter's representation of invalid Tweets), which are displayed within quote Tweets whose origin is a blocked user. After gathering the tombstone elements, the script hides the entire quote Tweet, including the person who quoted the Tweet's reaction and identity. This way, the user of the extension has no indication of any blocked profile's existence. This makes for a more complete and safer block function.
Challenges we ran into
None of us are very experienced with JavaScript. We originally wanted to incorporate Twitter's API using PHP, but PHP is incompatible with Google Chrome extensions. In the end, we persevered and found another way.
Accomplishments that we're proud of
We have created a simple, fully functional tool that will improve the daily lives of people on the Internet and help people feel more secure in the face of harassment. We have increased our knowledge of JavaScript and the design of Google Chrome extensions.
What we learned
Although the key functionality of the project is short and simple, it took a considerable degree of effort to configure the extension with JavaScript and control its interaction with Twitter's site. We had a lot of fun researching JavaScript implementations on the Internet and in the secondhand JavaScript Bible we'd bought. It took a lot of time and effort to cobble all of our findings and ideas together, but in the end we managed to create a functional product.
TWITTER, TWEET, RETWEET and the Twitter logo are trademarks of Twitter, Inc. or its affiliates. This project is not sponsored or endorsed by Twitter.


Log in or sign up for Devpost to join the conversation.