this post was submitted on 02 Jul 2023
1998 points (98.9% liked)

Fediverse

28726 readers
152 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 [email protected]!

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
1998
submitted 2 years ago* (last edited 2 years ago) by marsara9 to c/fediverse
 

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:[[email protected]](/c/[email protected]).
    • Author -- Similar to the above you can also filter by a specific author such as: author:@[email protected].
  • 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.

you are viewing a single comment's thread
view the rest of the comments
[–] marsara9 16 points 2 years ago (1 children)

It might not have been crawled yet. The search engine will periodically search for new content but this isn't instant. So it may take a day or two to find it.

[–] raspberriesareyummy 2 points 1 year ago (2 children)

still not working - is this possibly because of the server being overloaded & the crawl not working? relevant query

PS: is it too much load on your search engine to search across all instances by default? Atm it auto-selects the first in the dropdown list as the preferred instance.

[–] marsara9 2 points 1 year ago (1 children)

P.s. As for the auto-select thats a known bug and I hope to have it fixed soon.

[–] [email protected] 1 points 1 year ago (1 children)

Hello, I commented about a bug in the instance selector on a cross post, not realizing that wasn't the actual developer. Not sure if it's related to what you're talking about here, but I wanted to bring it to your attention. Great project by the way!

https://lemmy.ca/comment/829227

[–] marsara9 2 points 1 year ago

Replied to your comment there. I'll definitely look into that bug tonight. But I'm still exploring ideas to make instance selection easier ...

[–] marsara9 2 points 1 year ago (1 children)

Search engines take time to crawl websites to find content. Right now I'm using lemmy.ml as my source of truth. So:

  1. The post in question must have been federated to Lemmy.ml
  2. The crawler then has to discover that post. Right now it's only scheduled to run on demand, as it's still doing it's initial crawl. So it won't get around to checking Lemmy.ml for new posts for a few days. Eventually it runs once every 6 hours, once it's caught up.
  3. Lastly, it has to cross-reference that post on your preferred instance. This is what the crawler is doing right now. It's taking every post it found on lemmy.ml and trying to find the same post on every other instance.

P.s. the last step is only required because there's no way to hotlink to a post today as the URL uses an internal identifier. There's an open GitHub issue on this for Lemmy itself. When/if that is resolved I might be able to speedup the discovery of new content by skipping the cross-referencing step altogether.

[–] raspberriesareyummy 1 points 1 year ago

thank you for the insights! That sounds mighty resource-intensive for the crawler...