Inspiration
Online services and companies have lots of information on us to help personalize and better our experience. However, sometimes the value of the information outweighs the benefits. There are also some that follow an opt-out policy, with very little effort in spreading the awareness of what it means to be opted in by default.
What it does
Protect Yourself is a web application that educates users in what to watch out for before divulging personal information. The application provides tips, specific cases, and an online checkup process for how to handle your personal information. It also has a submission system to facilitate community-generated content. As such, more recent exploits, risks, and tips can easily populate into the application. Users can go through the process, submit their own tips and cases, and browse submissions from others.
How I built it
Protect Yourself is a Node.js web application that uses MongoDB to store submissions and checkup items.
Challenges I ran into
I started out with a larger ambitious project on a team of one, so I had to revise the scope and pin down the vision for the application early on in order to proceed and finish on time.
Accomplishments that I'm proud of
I was able to build out the system I envisioned within the allotted time, while also giving my attention to the design and overall user experience. The system is also modular, so it's easy to build upon it to handle additional features.
What I learned
I picked up some new things about working with MongoDB models and building up complex queries prior to executing them as opposed to executing simple queries immediately. I also wrote methods to traverse through the data in unique ways (e.g. select at random).
What's next for Protect Yourself
I'd like to add a section that takes in a username as input and searches the web for certain details (for more than just Facebook). A report can then compiled at once for the user that describes how many services we detected as a result of lenient default privacy settings.
I'd also like to create an upvote system to allow for the community to highlight the incoming content in addition to an approval or moderation queue. The system is in place in the database, but I'll need to identify users by their IP to prevent duplicate votes.

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