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 or instance: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:!fediverse@lemmy.world.
Author -- Similar to the above you can also filter by a specific author such as: author:@marsara9@lemmy.world.
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.
Heck I wouldn't have to crawl the sites if that was the case. I could just have the data already available. Only problem is, it takes a good 5-10 seconds right now to process 50 posts, so if you think Lemmy is slow/laggy already. With this being a separate site, I can devote 99% of the resources to just scraping the various instances and making the content much easier to search.
Although put this behind a reverse-proxy along side an existing lemmy instance and no one would be the wiser. I'd just need to update it to use the existing database rather than the APIs. ... Some food for thought at least.
Well all of that and convincing the Lemmy team to do the dev work required on their end.