cross-posted from: https://slrpnk.net/post/9960845

Hello Lemmy! Yesterday I released the first version of an alternative frontend for Threads: Shoelace. It allows for fetching posts and profiles from Threads without the need of any browser-side JavaScript. It’s written in Rust, and powered by the spools library, which was co-developed between me and my girlfriend. Here’s a quick preview:

A screenshot of Shoelace's homepage, showing the logo on top, the title "Shoelace", the subtitle "an alternative frontend for Threads", an input bar with the tooltip "Jump to a profile...", and at the bottom three links: "hub", "donate", and "v0.1".

Mark Zuckerberg's profile on Shoelace, showing three posts: One showcasing columns on the official Threads frontend, another congratulating himself for 1.2M+ downloads in his company's new AI software, and the glimpse of a post related to the "metaverse" Post by münecat on Shoelace, announcing the release of a video essay criticizing the field of evolutionary psychology

The official public instance (at least for now) is located at https://shoelace.mint.lgbt/, if y’all wanna try it out. There’s also instructions to deploy it inside the docs you can find in the README. Hope y’all enjoy it!

  • Lux@slrpnk.netOP
    link
    fedilink
    English
    arrow-up
    31
    arrow-down
    2
    ·
    7 months ago

    Ok, but what does this mean honestly? I’m sharing libre software you can selfhost. This is within topic.

      • Lux@slrpnk.netOP
        link
        fedilink
        English
        arrow-up
        7
        arrow-down
        1
        ·
        edit-2
        7 months ago

        It’s not. This essentially proxies content from Threads. These kinds of websites are generally nicknamed alternative frontends. It’s basically the equivalent of Invidious, Bibliogram, or Libreddit (RIP), but for Threads.

        • Lux@slrpnk.netOP
          link
          fedilink
          English
          arrow-up
          6
          arrow-down
          1
          ·
          edit-2
          7 months ago

          The primary use case is seeing content from the platform in a privacy-respecting way. As in, no Facebook trackers, no heavy JavaScript, plain HTML and CSS. For example, you can use it if someone sends you a post in Threads.

        • helenslunch@feddit.nl
          link
          fedilink
          English
          arrow-up
          2
          ·
          7 months ago

          These kinds of websites are generally nicknamed alternative frontends

          Yeah, the problem with that is that frontends are often interactive.

          Mastodon could be considered an alternative frontend for Threads as well.

          • Lux@slrpnk.netOP
            link
            fedilink
            English
            arrow-up
            3
            arrow-down
            1
            ·
            7 months ago

            However, with Mastodon you have to deal with Meta collecting data from your profile, including any relations such as likes and follows. Furthermore, not all accounts from Threads have Fediverse integration enabled, and those who do are limited to the US, Canada, and Japan. This is more anonymous and functional than that. I also plan to add RSS support soon, to have an equivalent to following someone.

            • helenslunch@feddit.nl
              link
              fedilink
              English
              arrow-up
              3
              ·
              7 months ago

              I know that. I think the problem is, specifically as it pertains to Threads, is that “alternative frontend” can mean different things. Moshidon is an “alternative frontend” for Mastodon. The backend is all the same. So if I were to be advertising this project, I would be making sure to make that distinction somehow. Probably by including “private” somewhere in the title.

              Regardless, does this allow you to generate a personal feed or is it just supposed to be a redirect like Nitter?

              • Lux@slrpnk.netOP
                link
                fedilink
                English
                arrow-up
                3
                arrow-down
                1
                ·
                7 months ago

                You’re right. I was calling it a private frontend when referring to it beforehand, and the repo description states it, but I looked at other projects and they used the phrase “alternative”, so I switched to it, since that’s the common term.

                For now it doesn’t have personal feed functionality, but if a lot of people want that I may be able to implement it similarly to how CloudTube does. As in, generate a secret, store it in a cookie, and from there save user data. For now though, I want to prioritize RSS subscriptions.

        • Kaavi@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          7 months ago

          Just curious, is there anything like that for Facebook? Facebook groups specifically.

          • Lux@slrpnk.netOP
            link
            fedilink
            English
            arrow-up
            5
            arrow-down
            1
            ·
            edit-2
            7 months ago

            Unfortunately no :(, and it’s hard there’ll be one soon. Facebook is much more closed off than Instagram or Threads. They really beg for you to have an account, and if someone were to start an alternative frontend which uses burner accounts, they would get blocked immediately AND lose in court, since that bleeds into computer fraud and abuse laws, similar to how Barinsta got taken down.

            I think you’re much better off getting an account with an aliased email address and using a plugin like Facebook Container to access those groups. Add a good proxy/VPN to this, and it’ll be virtually impossible to link it back to anything else you do online. That’s what I’ve done, since I use Facebook Marketplace to buy things from time to time, and it has worked well, with me only getting suggestions from Facebook pages I’ve already visited within that account, and not from any other website I visit outside of it.