FYC - (Free YouTube Comments)
This is a chrome extension designed to enhance YouTube user experience by allowing users to access comments from other media domains (specifically, Reddit). The app works by using Reddit API to search for posts directly linking to the YouTube video. It then aggregates and organizes the comments from those threads and presents them as a brief summary which is displayed directly on the YouTube domain. With simple navigation it's easy to switch back and forth between Reddit and YouTube user submissions.
Features
- Automatic integration of Reddit media into the YouTube main!
- Organization of most relevant content to the video!
- Clean, 100% custom-crafted YouTube-styled design (in css), so it fits right in!
- Ability to easily navigate to the original Reddit source!
- Suggestions for posting under-appreciated YouTube content to Reddit!
- Potential to integrate with other media!
Use
Simply download the source code from github, and add it as an extension in developer mode (to come to Chrome Web Store in the future). To do this:
- Go to "chrome://extensions"
- Check "Developer Mode" checkbox
- Load unpacked extension and select "hook" as the directory for the extension
- Enjoy your new and improved YouTube experience!
Development
Inspiration
As big consumers of both Reddit and YouTube media, we noticed a close link (literally) between the content of each website. It could be cumbersome to switch between the domains in order to view the content of users of each site. Thus, we were inspired to make a more streamlined user experience by building this chrome extension.
Goals
- Gain experience building chrome extensions and the technologies involved (JavaScript, css, manifest)
- Develop something we would be proud of and use ourselves
- Gain experience using RESTful APIs
- Have a good time!
Challenges
Coming into ConUHacks, we had minimal experience with JS and developing Chrome Extensions. For the first time, we encountered the asynchronous nature of web browsers. This lead us to approach the initial concepts and code structure much differently then we had originally imagined in an Object-Oriented, Synchronous environment.
One particular problem we encountered was getting our scripts to load between YouTube pages because of YouTube's html5 pushStack navigation. Our scripts required injecting html on page load, however our scripts would not run between pages since the pages were not reloaded during navigation. Our solution involved tracking items on the screen during a transition on using those as landmarks to relaunch our script.
Accomplishments
- Learning basic concepts and use of JavaScript, JQuery, Asynchronous Requests, and Reddit API
- Using outside of the box thinking to solve problems like pushStack navigation script re-triggering
- Learning the basic necessities and complications of building Chrome extensions
- Successful implementation and completion of our idea
Future
The most exciting aspect about this extension is the ability to seamlessly intermingle related media streams. To extend the project we plan to continue to improve the Reddit-YouTube experience, as well as extending the integration to other related media streams (e.g. Reddit and Imgur).
Conclusion
This was a result of long hours of tedious JavaScript, coffee script, css, sass and project folder management. We learned the hard way about the qualms of ajax requests and callbacks, loading extensions on pushStack pages, and accurate css styles. In the end we really enjoyed ourselves and are very proud of our final product. We hope you appreciate our hard work!
Log in or sign up for Devpost to join the conversation.