Inspiration
We all do it, but hate talking about it.
Yes, we're talking about an activity 78% of people across the world (and 84% of America) take part in: masturbation. Masturbation is an important component of sexual health, yet also a taboo subject! It's hard to talk about masturbation regardless of how often you partake in the activity.
What it does
Pornography is one of the most popular avenues humans use to masturbate (not that we would know 😏). As we learned in PSYCH 210, pornography allows people to enjoy their fetishes and discover their likes and dislikes. For some, pornography is a pleasure 🥰, while for others, pornography represents evil 👿.
We made a Chrome extension named Dub Hub (yes the pun is intended) that tracks your data whenever you open a porn site (if you're wondering if it works in incognito mode, of course it does). The extension runs in the background -- it's designed to never bother you unless you interact with it.
In other words, we made something that shows you what you don't want to see about the things you already saw.
Some features we built for users:
- A statistics page that shows you monthly, hourly, and word occurrence data about the videos or sites you've browsed.
- An options page that can be configured, including setting your refractory period to determine your session length.
- A whitelist of pornography sites that can be configured by the user (in case they want to add their favorites).
How we built it
We built Dub Hub using Chrome's storage API. Because we know visiting porn sites can be sensitive data for most people, Chrome's storage API stores data in the user's browser, instead of on a server that we can control. In other words, you control your own data, and can clear it at any time in our Options page or by clearing your cookies and/or browser history.
The graphs were charted using ChartJS, an open source library for creating pretty charts in JavaScript. The rest was written in plain old HTML, JavaScript, and (bleh) CSS! We think it looks really pretty, but you'll have to use it to find out :)
Challenges we ran into
Testing this was...obviously weird. We had to find a reliable whitelist of sites considered pornography, but nearly every index online was huge (like 220,000+ lines huge). Plus, the optics aren't great. But we know that this is a worthy cause since so many people expressed interest in our idea at DubHacks.
So, we opted to use the SEO rankings of adult video sites. We wrote a script that fetched the names of sites from an online index that ranked them. The script inserted them into a whitelist file in our code.
As a result, there are a lot of sites in there we had no clue about, but the whitelist is customizable so a user can add their favorites as well!
We know that this project may seem controversial to someone who views it for the first time. But it serves as a reminder of the importance of sexual health. We should be able to discuss topics like masturbation, pornography, and the role they serve (whether positive or negative) in society openly, instead of shaming it behind incognito tabs.
Accomplishments that we're proud of
We hope Dub Hub illuminates a user's sexual activity on the web to them. It's not meant to shame or praise anyone, just meant to provide a useful tracker for something (almost) nobody tracks. If you don't think it's for you, that's totally okay and happy masturbatin'! But if you'd like some insights into your habits and sexual activity (and by extension, sexual health), try it out!
What we learned
There is a real want for this application. Nearly everyone we talked to at DubHacks about our idea expressed interest and a desire to use it. This inspiration was key in helping us improving the UI. We hope to see people install our extension in the future and use it!
What's next for Dub Hub
Unfortunately, Dub Hub can only be run on a computer running Google Chrome. This is just because of how Chrome extensions work. That being said, though, we plan to fix this in the future, so stay tuned for a new release! That update will probably be made on the GitHub repository (linked on this site).
For now, you can just download the code on the repo, and follow the instructions to unpack and load an extension in your browser. Wishing you good health forever!


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