Project "memestream" (working title) A search-first meme repository. It's similar to a lot of social media sites, except the goal for the hosted memes is not popularity. The goal is to make a website that makes it easy for me to save and share memes with my friends. Goals: - easy to import memes from a variety of sources, including locally downloaded memes and from many social media sources - share original memes from Eecs World - interface for managing tags - AI-augmented tagging and search capabilities - OCR on meme text - store meme provenance information - work well on slow or spotty connections TODOs (in order) - discord imports - messenger imports - instagram DM imports - CLIP search support for videos - downvotes - youtube imports - add OCR text field - CLIP search support for webp - show best matching searches for this meme - cache search encodings - related meme detection via encoding similarity - duplicate detection - tag views - search filters - descriptions DONE: - infinite scroll - video support - thumbnails - upload progress bar/gui Appendix A The effects of the medium upon the viewing experience of a meme. One of the considerations in my project is whether the memes that are on my website will be as enjoyable as the memes in their original location. Typically, these memes are retrieved via social media. There is a lot of other details besides the meme itself, such as title, captions, comments, likes, author profile, etc that may add to the experience of the meme. I often find comments on youtube videos to add the experience. Often times people try to make funny comments and that makes the video more enjoyable. However, I find that a meme is likely to be less successful if it relies on external details. If it does, then it isn't as funny when shared. There are a few ideas for getting around this. First, I can add a link to the original post. That way, if the post is still visible, all these details can be retrieved and the meme can be experienced in the original medium. Secondly, I could save details of the meme. That requires more work, but could be valuable in case the link to the original goes down. For now, I plan to simply link to the previous site, if possible. In many cases, I imagine it wouldn't be easy, since most of my memes are simple .jpg files. For memes that are imported from social media, the attribution is much easier. Appendix B The loss of memes over time / The unreliability of platforms / Why save your memes? Alt: Why save? Why implement your own search? When you want to share a meme, but you don't have it on hand, what do you do? For me, I usually forward it from whichever app or website I saw the meme on, and forward it somewhere else. This works well for sharing a meme in the moment, when I recently received it. However, this approach does not scale. I have many different messaging apps, with many different people and groups all sharing memes over a long span of time, interspersed with other shared media. How am I supposed to keep track of them? If I can't find it from my apps, then I look on google. And that has a very low chance of success. Search is horrible on nearly every social media website. If you don't know precisely what you're looking for, good luck. And even if you know precisely what you're looking for, many sites won't turn up the particular image you want. What if that app goes away like vine? Or introduces restrictions to searching? In the case of messenger, the UI is really slow when you scroll back in history, to the point where the tab becomes unresponsive after a certain point. Same with Facebook when going through the photos view or especially the timeline view. What about if the account owner gets suspended or banned from their platform? All of these are reasons why you should have a copy of the meme locally. I argue this is the right approach Appendix A. In addition, this allows for sharing without being encumbered by platform restrictions, or message embeds not working correctly. The common thread is that the *platforms* that I use for finding and sharing memes are not optimized for doing just that. And the ones that are optimized for that have the problem of content moderation. By keeping the user base limited to myself and my friends, I can avoid having any content moderation problems. Additionally, even if there was questionable content, it's all my hardware, so no one can take it away from me. Appendix C What is a meme? I want to solidify my definition of an internet meme. It can be any piece of media that you want to share with someone else. It doesn't have to be funny. As long is it's something you want to share, then it has acheived meme status.