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:!fediverse .world
. - Author – Similar to the above you can also filter by a specific author such as:
author: .world
.
- 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.
Nobody has mentioned it yet, but https://fedi-search.com/ already exists
Yes but that search doesn’t take you to the instance that you are logged into already. Which is one of my main goals with this site. While that did give me the inspiration for this and has the power of Google behind it, it lacks knowledge about how the fediverse actually works.
@marsara9 would be cool if it had the ability to search through all instances. don’t know if thats possible
Eventually. I’m waiting on a bug in Lemmy itself to be fixed. Mainly once I can post a link to a post here and anyone can click on it without leaving their home instance.
Oh wanted to add, as a workaround for now you can set your home instance to lemmy.world or lemmy.ml. Because of how the fediverse works, searching the larger older instances should have a fairly complete copy of content.
Once I do “fix” this though, note that you may click on a link and get a 404 page. As that post may not be on your home instance.
One rule I will always follow for this project is that if I display a link, that link MUST take you to your home instance and that link MUST point to the post in question (but I cannot guarantee that you won’t get an error, just that you won’t be taken to a completely different post)
@marsara9
I see. Will just set home to the same as the one I search. I’m using Friendica so I’m used to copy links to the search field in order to fetch remote Lemmy posts.
This project dead?
This looks good, I just found an old (3 year old post - I didn’t even know Lemmy was around back then!) and commented on it. There were also funnily two other recent comments (one from 2 months ago and another 3 months old).
deleted by creator
The results are different depending on which preferred instance I select. Is that the correct behavior?
Correct. As I can only provide links to posts that are on your selected home instance. Eventually I’ll change this but you’ll get a 404 page for links that aren’t on your home instance, but see my P.S. below.
P.s. there have been changes to the Lemmy API that have prevented me from getting updates for about a month now. So most of the results you’re seeing are from old posts only. Until I can rebuild the crawler or find a new API there won’t be any new content.
Can it be made to search in the comments? Right now, I’m finding more results when I use the search function inside lemmy.world than if I use this
That’s on my todo list. For the initial release I wanted to get posts working primarily.
See: https://github.com/marsara9/lemmy-search/blob/master/server/src/crawler/crawler.rs#L178
this is awesome and very needed. Thank you.
Missed opportunity to name it “Loogle”
deleted by creator
For micro/personal server runners
Having to send out all those posts, comments, likes is killing the servers holding all the content. The project leaders really need to make an announcement about the performance problems, they are systemic.
deleted by creator
Can we only search by title with this? I’m getting a lot of unrelated results.
It searches the title and body. It also automatically searches for similar words like. Like ‘bike’, ‘biking’, ‘bikes’ (aka stemming). Granted though, I’m still improving the page ranking as time goes on.
is this a crawler or does it index via mass federation? Or is it using API calls?
API calls. Primarily it just uses
/api/v3/post/list
.Funny enough though, one of my first versions I tried to use mass federation, but ran into technical issues.
mass federation is probably not good for the health of the fediverse anyways lol
Holy fuck I’ve been thinking about how annoying it is that I can’t search lemmy for a few days now - and here you are suddenly just handing the tool I want to me with features that I didn’t even think about. THANK YOU SO MUCH. Adding this post to my saved.
Wondering if this will see the same backlash that Mastodon had when users were planning to add a search engine - many users moved to Mastodon specifically because their posts are unsearchable by default, and that prevents some dogpiling that was common on Twitter.
Great heads up
I just don’t get why people would join SOCIAL media if they don’t want to their posts public. Its like having a group meeting in the middle of a public square and complain people saw them
Maybe they should just use discord or or private communities instead
I’ve already got some complaints about that. You can see one of the issues raised on GitHub.
At the moment, I’m only picking up mastodon posts that are federated to Lemmy, but you can’t choose Mastodon as a preferred-instance, yet. When and/if I decide to add Mastodon support, I’ll reach out to the admins over there to get feedback first.
Edit and note to any server admin: If you want to block the crawler from hitting your site, just add
lemmy-search
to your robots.txt and crawling will be prevented. But this doesn’t stop cross-federation posts from being picked up on another instance.Is it “lemmy-search” or “lemmy-server”? The post and this comment seem conflicting (if I didn’t miss something)
Thanks for that, fixing. But it should be
lemmy-search
.
Thanks for this! I was trying to figure out how to best replace the old “site:reddit.com” trick, and it did not quite work with lemmy with how it is federated. I hope that longer term we can get an “all” tab on lemmy that truly tries to pull from as many of the federated sites as possible to get us closer to the Reddit experience. I tried to do some research on extreme heat clothing due to the wet bulb temps in my area but r/mensfashion and most other clothing reddits still seemed private, maybe I can try searching with your solution now.
Well, we were probably already due or going on past due for something to best replace the old “site:reddit.com” with “site:lemmy.world” for instance.