- cross-posted to:
- fediverse@lemmy.world
- newcommunities@lemmy.world
- cross-posted to:
- fediverse@lemmy.world
- newcommunities@lemmy.world
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.
this is awesome and very needed. Thank you.
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.
Looks like your comment got triple posted. The lemmy instances are getting slammed lol
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.
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.
Nice! Thank you.
Missed opportunity to name it “Loogle”
Holy shit. This is the best thing.
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.Thats very considerate of you
Please don’t take those complaints as negative feedback. I don’t think Lemmy is designed to be private and your search engine would be a great of help to the whole community.
By the way, do you plan to create a community to discuss about your search engine? Maybe users can help you with testing or report issues or improvement
I’ve got a discord page up and going that is invite only right now. No offense to anyone here but i didn’t want to be overwhelmed with users joining in on the discord chat just yet. If you want to help contribute or even just test you can easily find me on discord, and I’ll give you an invite.
Starting a Search-Lemmy community here might be good for visibility too.
If anyone wants to start one up… by all means. I’m not really one to moderate an entire community. At least not yet.
Yeah I hear you. I’ve thought several times about starting niche communities that aren’t here yet but I just am not capable or even able to be a moderator.
By the time they gain traction you can hand them off.
I think the use case and the default expectations about search are pretty different on Lemmy, but I can definitely see this being a potential point of friction, particularly since most content is actually structured by community rather than instance, and in many cases it would make more sense to exclude stuff based on the community it’s posted to or the individual user than by instance. (But I’m sure that wouldn’t be immediately technically feasible.)
Ya Lemmy organizes everything under a community technically. I mean I can filter on any piece of data I can get my hands on, but what makes the most sense. For MVP I chose to just grab whatever the API would give me. But then the question comes, if I do start filtering results, how do I determine what to actually exclude… long story short – not an easy problem at least initially.
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
.
I think it makes sense for a “redditlike” to be searchable, while also understanding that Mastodon is a different beast and can benefit from lack of search.
Don’t know if Mastodon posts on Lemmy instances have a specific characteristic, but perhaps you can consider filtering them out while keeping “regular” Lemmy posts and comments?
Lemmy is not private in any way. In fact, while the OP’s project is really cool and admirable, there is already https://fedi-search.com, which searches top Lemmy instances (and kbin, Mastodon, and peertube) using regular operators behind the scenes in Google, Bing or DDG (whichever you prefer), because those search engines already crawl Lemmy along with the rest of the internet, unless the site owners block crawling via robots.txt.
TBH they can block them from search in the preferences. Otherwise anything on the Web is searchable and findable.
Removed by mod
Can it filter NSFW posts? As on Reddit you can search “pussy nsfw:no” and get pictures of cats.
Not yet but I can add this feature
Can you add a nsfw:only filter while you’re at it? :)
And make it default ;-)
It’s nsfw:yes on Reddit 😂
Why do I learn about this now that I pretty much don’t care?
Beautiful work.
make those results sort- and exportable (CSV, JSON, XML or the like), and you could be the new redditsearch.io. especially filtering results by different community/time/author would be great, and sorting by length/upvotes. what was that site with reddit post statistics called again? I know, this all might be further out, and wrangling bugs, the changing API and cloudflare might be more pressing issues, but maybe put it on the feature request list somewhere? all the best, and thank you for making this!
There is a public API now. While I won’t support sorting, you can process and do what you will with the results as-is. Currently I only support Posts and Communities for now.
When you search for posts you’re just matching against the title or body. For communities it’s searching the posts within that community.
There’s also more filters now with: instance/community/author/since/until and a safe-search option.
So I’m not sure how close this comes to your idea but I thought I’d share.
Really nice work! I was excited since we talked about it, and it definitely delivers imo!
Ya, now if everyone can stop finding bugs! So I can take some time off. /jk
Haha yeah! You might have to resort to an internet-less vacation :p
take time off whenever you need :D Im sure people would rather you go far than go fast
It says I am blocked from using it. Any reason?
Same. I guess it is some Cloudflare service to prevent DDoS attacks or something
Hugged to death.
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.
P.S. to those trying to use a filter, I have a bug that’s been discovered: https://github.com/marsara9/lemmy-search/issues/13
Long story short, make sure to put your query first and the filter at the end (with no space between the simicolon)
Still not working for me, my test query (following the example’s format) is:
Genshin instance:https://lemmit.online/
deleted by creator
Ya I’m looking into this one already. I’ve got a bug report for it. Might take a day or two to figure out what’s going on.
deleted by creator
Nevermind, found the issue already. I should have a fix uploaded tomorrow. Looks like all instance lookups are failing.
Blocked by cloudflare ID 7e0ba74959214ac0 Client Thunder (Android) Instance lemmy.world
Great work! Will have to try this out tomorrow.