83
submitted 1 year ago* (last edited 1 year ago) by marsara9@lemmy.world to c/fediverse@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 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](/c/fediverse@lemmy.world).
    • Author -- Similar to the above you can also filter by a specific author such as: author:@marsara9@lemmy.world.
  • 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.

top 47 comments
sorted by: hot top controversial new old
[-] anders@rytter.me 2 points 1 year ago

@marsara9 would be cool if it had the ability to search through all instances. don't know if thats possible

[-] marsara9@lemmy.world 2 points 1 year ago

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.

[-] marsara9@lemmy.world 2 points 1 year ago

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)

[-] anders@rytter.me 1 points 1 year ago

@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.

[-] daq@lemmy.sdf.org 2 points 8 months ago

This project dead?

[-] Domille@sh.itjust.works 2 points 1 year ago

this is awesome and very needed. Thank you.

[-] Jessica@discuss.tchncs.de 2 points 1 year ago

Nobody has mentioned it yet, but https://fedi-search.com/ already exists

[-] marsara9@lemmy.world 1 points 1 year ago

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.

[-] sauron@lemmy.world 1 points 1 year ago

Missed opportunity to name it "Loogle"

[-] Die4Ever@programming.dev 1 points 1 year ago* (last edited 1 year ago)

is this a crawler or does it index via mass federation? Or is it using API calls?

[-] marsara9@lemmy.world 2 points 1 year ago

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.

[-] Die4Ever@programming.dev 1 points 1 year ago

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.

[-] nieceandtows@programming.dev 1 points 1 year ago

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

[-] marsara9@lemmy.world 2 points 1 year ago

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

[-] nameisnotimportant@lemmy.ml 1 points 1 year ago

Can we only search by title with this? I'm getting a lot of unrelated results.

[-] marsara9@lemmy.world 1 points 1 year ago

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.

[-] CrimeDad@lemmy.crimedad.work 1 points 1 year ago

The results are different depending on which preferred instance I select. Is that the correct behavior?

[-] marsara9@lemmy.world 2 points 1 year ago

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.

[-] Historical_General@lemmy.world 1 points 1 year ago

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).

[-] labbbb@thelemmy.club 0 points 10 months ago* (last edited 10 months ago)

Nice! It doesn't work.

[-] DankMemeMachine@lemmy.world 0 points 1 year ago

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.

[-] KonalaKoala@lemmy.world 1 points 8 months ago

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.

[-] csolisr@communities.azkware.net 0 points 1 year ago

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.

[-] tenth@lemmy.world 3 points 1 year ago

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

[-] marsara9@lemmy.world 0 points 1 year ago* (last edited 1 year ago)

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.

[-] Syrc@lemmy.world 0 points 1 year ago

Is it “lemmy-search” or “lemmy-server”? The post and this comment seem conflicting (if I didn’t miss something)

[-] marsara9@lemmy.world 1 points 1 year ago

Thanks for that, fixing. But it should be lemmy-search.

[-] Mermitian@lemm.ee 0 points 1 year ago

Really nice work! I was excited since we talked about it, and it definitely delivers imo!

[-] marsara9@lemmy.world 0 points 1 year ago

Ya, now if everyone can stop finding bugs! So I can take some time off. /jk

[-] WheeGeetheCat@sh.itjust.works 1 points 1 year ago

take time off whenever you need :D Im sure people would rather you go far than go fast

[-] TheBrainGuy@lemmy.world 0 points 1 year ago

Cool! Is there a way to search all instances at once?

[-] marsara9@lemmy.world 0 points 1 year ago

Due to a one of my primary goals of having links open in your home instance, you can only search a single instance at a time.

There's an open issue about this though but it requires some changes to Lemmy itself to work.

[-] whzfux@discuss.tchncs.de 1 points 1 year ago

Not wanting to undermine your excellent work, what would be the specific advantage yet, compared to searching for communities / posts via the lemmy page?

I am completly New to lemmy or reddit and still searching for a nice and easy way to find relevant threads for me

[-] marsara9@lemmy.world 1 points 1 year ago

The built in search, well sucks. Search for "Not undermine wanting" and you won't be able to find your comment. Essentially:

  1. All words are required
  2. The order of each of the search terms is important
  3. The search results here provide no ranking.
  4. The searching here is relatively slow. (now some queries on my site are slow as well, but most should be fast)
[-] Hutchpd@lemmy.fmhy.ml 0 points 1 year ago

Can it filter NSFW posts? As on Reddit you can search "pussy nsfw:no" and get pictures of cats.

[-] marsara9@lemmy.world 0 points 1 year ago

Not yet but I can add this feature

[-] burak@lemmy.world 2 points 1 year ago

Can you add a nsfw:only filter while you’re at it? :)

[-] Hutchpd@lemmy.fmhy.ml 1 points 1 year ago

It's nsfw:yes on Reddit 😂

[-] hemko@lemmy.world 0 points 1 year ago
[-] Quetzacoatl@lemmy.world 0 points 1 year ago

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!

[-] marsara9@lemmy.world 1 points 1 year ago

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.

load more comments
view more: next ›
this post was submitted on 02 Jul 2023
83 points (97.7% liked)

Fediverse

28518 readers
166 users here now

A community to talk about the Fediverse and all it's related services using ActivityPub (Mastodon, Lemmy, KBin, etc).

If you wanted to get help with moderating your own community then head over to !moderators@lemmy.world!

Rules

Learn more at these websites: Join The Fediverse Wiki, Fediverse.info, Wikipedia Page, The Federation Info (Stats), FediDB (Stats), Sub Rehab (Reddit Migration), Search Lemmy

founded 2 years ago
MODERATORS