I shared bits and pieces of this before, but it's officially up and running now: https://www.search-lemmy.com/
This is an enhanced search engine for Lemmy. With a few primary goals:
- You can choose a preferred instance. After choosing what your primary instance is, and performing a search ALL links will open in that instance.
- This aims to be a replacement for using
site:reddit.com
in Google, but just for the fediverse. - You can filter the search results by:
- Instance -- This will filter the results to only show communities that belong to a particular instance. Just type something like
instance:lemmy.wrold
orinstance:https://lemmy.world/
. This is separate from your preferred instance, such that you can search for posts on lemmy.world while still opening them on lemmy.ml. - Community -- You can refine the search by a specific community. You use the same syntax that you'd use here
community:[[email protected]](/c/[email protected])
. - Author -- Similar to the above you can also filter by a specific author such as:
author:@[email protected]
.
- Instance -- This will filter the results to only show communities that belong to a particular instance. Just type something like
- The entire thing is open-source. You can view the code and even host your own instance... See more details here: https://github.com/marsara9/lemmy-search.
NOTE: This only supports Lemmy instances for now. Other fediverse type instances may be in the future depending on how this works out.
I've been working on this over just the last few weeks, so it hasn't had a chance to crawl much of the fediverse yet. For now it only supports lemmy.world
and lemmy.ml
but other preferred-instances will come online as time goes by.
If anyone finds any bugs, and I'm sure you will, or if anyone has any suggestions PLEASE raise an issue on GitHub for me to track. Lastly, if anyone wants to help contribute please feel free to reach out.
NOTE TO SERVER ADMINS: You can prevent your site from being crawled by adding lemmy-search
to your robots.txt for the user-agent.
Not very knowledgeable on programming, but isn't there a way to implement this code with the Lemmy/fediverse devs to integrate this to the site and afterwards to the different apps used to browse it?
Great contribution regardless, thanks for your work!
See one of my other replies. But that was a thought originally. Just hook into the original database instead of crawling using the APIs. Problem is, the table structure required to search is much different than that of a community form. At least if you want to do searches quickly. It takes me almost 5-10 seconds just to process 50 posts at the moment, and I'm doing those in batches... but ya maybe in the future I can talk to the Lemmy devs and see about merging these two projects?
I really really hope, one of the things I'm loving about the idea of Lemmy or the fediverse is the cooperation aspect, at least in jerboa which is the browser that I am using for now, there is a sense that anyone is pitching in either ideas or actually implementing them, and I guess Lemmy devs are of the same mentality. Anyhow, let's hope you can merge them and optimize in the future, it would be huge, congrats and good job again.