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

    • marsara9@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      5
      ·
      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
        link
        fedilink
        English
        arrow-up
        2
        ·
        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.worldOP
          link
          fedilink
          English
          arrow-up
          5
          ·
          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)
          • whzfux@discuss.tchncs.de
            link
            fedilink
            English
            arrow-up
            1
            ·
            1 year ago

            Ahhh i think i got it - so it is not a search for communities but for full text

            It then makes sense to me why i need toselecft an instance beforehand.

    • BitOneZero @ .world@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      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.

        • BitOneZero @ .world@lemmy.world
          link
          fedilink
          English
          arrow-up
          4
          ·
          1 year ago

          Federation protocol implementation is poorly optimized, it does SQL lookup for the person every incoming post/comment/like, checks the community if they are banned, all of this with zero caching. HTTP outbound is also very simple design that only now some logic to detect dead peer servers is being added, etc.

    • marsara9@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      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.

  • puddlexplorer@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    1 year ago

    If I use this search engine instead of the one on the website, does it mean it would put less strain on the server? Yeah, I’m not quite techy.

    If so, I guess this a big is step.

    Fine addition to my keyword/bookmarks library.

    All I need now is the option to sort by New.

    • marsara9@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      If I use this search engine instead of the one on the website, does it mean it would put less strain on the server? Yeah, I’m not quite techy.

      Yes. Searches on my site only hit my server and don’t touch your home server unless you click on a link.

    • marsara9@lemmy.worldOP
      link
      fedilink
      arrow-up
      2
      ·
      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.worldOP
      link
      fedilink
      arrow-up
      2
      ·
      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
        link
        fedilink
        arrow-up
        1
        ·
        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.

  • theblueredditrefugee@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    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.

  • Carlos Solís@communities.azkware.net
    link
    fedilink
    English
    arrow-up
    2
    ·
    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
      link
      fedilink
      English
      arrow-up
      3
      ·
      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.worldOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      edit-2
      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
        link
        fedilink
        English
        arrow-up
        0
        ·
        1 year ago

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

      • tenth@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        edit-2
        1 year ago

        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

        • marsara9@lemmy.worldOP
          link
          fedilink
          English
          arrow-up
          0
          ·
          1 year ago

          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.

  • Mermitian@lemm.ee
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

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

    • marsara9@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      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.

    • marsara9@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      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.

  • nieceandtows@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    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