Today I learned about Sublinks (here), an open-source project that aims to be a drop-in replacement for the backend of Lemmy, a federated link aggregator and microblogging platform. Sublinks is designed to be initially API-compatible with Lemmy, allowing existing Lemmy clients, such as Lemmy-UI, to integrate seamlessly.

The project is written in Java, which may introduce some overhead but is chosen for its maintainability and familiarity among a wider pool of developers. The Sublinks team prioritizes a more inclusive and less toxic development environment, and the project has already attracted more developers than Lemmy.

While Sublinks is starting with 1:1 compatibility, future plans include implementing additional features that the Lemmy developers have not pursued. This could lead to a divergence in functionality between the two platforms as Sublinks evolves beyond its initial compatibility phase.


README

GitHub stars GitHub tag (latest SemVer) gradle workflow GitHub issues License

Sublinks

A decentralized, censorship-resistant, and privacy-preserving social network.

About

Sublinks, crafted using Java Spring Boot, stands as a state-of-the-art link aggregation and microblogging platform, reminiscent yet advanced compared to Lemmy & Kbin. It features a Lemmy compatible API, allowing for seamless integration and migration for existing Lemmy users. Unique to Sublinks are its enhanced moderation tools, tailored to provide a safe and manageable online community space. Embracing the fediverse, it supports the ActivityPub protocol, enabling interoperability with a wide range of social platforms. Sublinks is not just a platform; it’s a community-centric ecosystem, prioritizing user experience, content authenticity, and networked social interaction.

Features

  • Open source, MIT License.
  • Self hostable, easy to deploy.
  • Clean, mobile-friendly interface.
    • Only a minimum of a username and password is required to sign up!
    • User avatar support.
    • Live-updating Comment threads.
    • Full vote scores (+/-) like old Reddit.
    • Themes, including light, dark, and solarized.
    • Emojis with autocomplete support. Start typing :
    • User tagging using @, Community tagging using !.
    • Integrated image uploading in both posts and comments.
    • A post can consist of a title and any combination of self text, a URL, or nothing else.
    • Notifications, on comment replies and when you’re tagged.
      • Notifications can be sent via email.
      • Private messaging support.
    • i18n / internationalization support.
    • RSS / Atom feeds for All, Subscribed, Inbox, User, and Community.
  • Cross-posting support.
    • A similar post search when creating new posts. Great for question / answer communities.
  • Moderation abilities.
    • Public Moderation Logs.
    • Can sticky posts to the top of communities.
    • Both site admins, and community moderators, who can appoint other moderators.
    • Can lock, remove, and restore posts and comments.
    • Can ban and unban users from communities and the site.
    • Can transfer site and communities to others.
  • Can fully erase your data, replacing all posts and comments.
  • NSFW post / community support.
  • High performance.

Contact

Contributing

Support / Donate

Sublinks is free, open-source software, meaning no advertising, monetizing, or venture capital, ever. Your donations directly support full-time development of the project.

  • @[email protected]
    link
    fedilink
    English
    16
    edit-2
    3 months ago

    Rust is rapidly gaining popularity and it’s popular with the type of people who would use Lemmy. There aren’t contributors because there aren’t many users.

    Though like you said, time will tell

    • @RookiMA
      link
      English
      -103 months ago

      For me i dont see any gains in popularity. Java IS popular right now, not in 10 years. Java is mature enough.

      • Nate Cox
        link
        fedilink
        English
        113 months ago

        It’s cool to like Java, I’m not hating on it, but it’s just silly to pretend that Rust isn’t popular today.

        Rust is used in fewer corporate environments, no doubt there, the Java inertia is strong… but a glance at any moderately recent dev survey should indicate pretty clearly that Rust is on a lot of devs minds and is well received.

        • @[email protected]
          link
          fedilink
          English
          13 months ago

          Then how do you explain there is no major contributor to Lemmy besides the two main devs?

          • Nate Cox
            link
            fedilink
            English
            103 months ago

            Well, for one thing federated message boards are incredibly niche to start with, and the pool of people willing to work on one for free in their spare time is bound to be tiny aside from language concerns. I know we all want the fediverse to be the hot thing that everyone uses, but that ain’t reality.

            I’m not exactly seeing a massive contributor pool for sublinks here either.

              • Nate Cox
                link
                fedilink
                English
                113 months ago

                … lemmy has like 100 contributors listed on GitHub. Just looking at the contributors list for the sublinks api vs the Lemmy main project it seems like Lemmy has far, far more contributions.

                I think competition is a good thing, I hope sublinks gets like all the users and contributors and a dozen more projects spin up in all the languages of the rainbow—especially given they should all be contributing to one big pool of shared content— but it’s worth at least staying grounded in reality when making claims about the projects.

                It’s super, super silly to be reactively defensive of one project or the other here. It really feels like what some people actually want is yet another language pissing contest more than anything else. All the languages are fine.

          • @[email protected]
            link
            fedilink
            English
            6
            edit-2
            3 months ago

            At the scale of having a handful of contributors, it’s more likely random variance than due to the language you’ve chosen. The sample size is simply too small.

            I can speak for myself - I know Rust very well but I simply don’t have the time to contribute to Lemmy’s code (I’m also spending some time already being an admin for Feddit.dk and I feel that is all I can muster).

            Getting contributors to open source projects is never easy, regardless of programming language.

            But I mean… there is no problem with competition right. Maybe it’ll turn out that sublinks will have more development with more contributors. But it has yet to be shown, there are also only 1 or 2 developers working on sublinks at the moment, if you check the github contributor stats.

          • @[email protected]
            link
            fedilink
            English
            33 months ago

            Because people only contribute to projects they care about, can get clout from, or use and want to fix something that’s bugging them. Lemmy is just too niche right now.

            If in five years there’s still just the two devs then you may gloat and tell me I was wrong and I will accept the shame

        • @RookiMA
          link
          English
          03 months ago

          Popular? Objective C is still popular and more demanded than Rust.

          • Nate Cox
            link
            fedilink
            English
            103 months ago

            Yep. The job market isn’t as strong for rust, which is what that chart is showing you. Corporate acceptance != popularity.

            Rust is #6 on the Stack Overflow developer survey in popularity. https://survey.stackoverflow.co/2023

            Again, I don’t know why the community is insisting on making this a dick measuring contest for languages. People love rust. People love Java. I know people who still love Perl. I know one guy who really seems to look fondly on his Fortran days. they’re all fine.

            Just be happy that someone is excited enough to write some code to make the fediverse a little more diverse and maybe cool.

            • @[email protected]
              link
              fedilink
              English
              63 months ago

              Just be happy that someone is excited enough to write some code to make the fediverse a little more diverse and maybe cool.

              Sounds like the most positive approach.

              The thread from a month ago was really negative towards Java, it was surprisingly aggressive

              • Nate Cox
                link
                fedilink
                English
                63 months ago

                I remember. It is a very annoying and negative trait that the dev community can’t seem to shake, the insistence on making hating certain tech (or even just like coding styles in general) part of their whole identity.

                I remember thinking Clojure was stupid and people who used it were stupid because all of my peers told me so and made fun of the parenthesis relentlessly. Then I grew up a little, read a Clojure book, and fell in love with it. Plus learning to code in a brand new way made me a better dev overall.

            • @RookiMA
              link
              English
              23 months ago

              Correct. But those accusations that java was a bad choice i just cant have it. This isnt “I love Rust” or “I love XYZ Programming language” it was “F*ck you for using java”.

              • @[email protected]
                link
                fedilink
                English
                23 months ago

                Isn’t it more like the other way around? Lemmy was written in Rust, then this clone is in Java - isn’t that more like “damn you for using Rust”?

                • magic_lobster_party
                  link
                  fedilink
                  33 months ago

                  This thread chain started with:

                  Meh. Java feels like a downgrade.

                  Sublinks using Java is not about Rust hate. They just thought it was the better choice for them.