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
Sublinks
A decentralized, censorship-resistant, and privacy-preserving social network.
- Join Sublinks
- Demo Sublinks
- Documentation
- Matrix Chat
- Report Bug
- Request Feature
- Releases
- Code of Conduct
- Contributing
- Style Guide
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
, andCommunity
.
- 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.
Java is already mature enough and i dont think the current smaller-medium instances experience that lemmy is on 100% cpu allways, so we can expect that it is a bit less optimal, but not before 5% cpu and after it 100% cpu, lemmy is a mess in performance, 0.18 instances gets ddosed by dead 0.19 instances, that retry always failed federation. So lemmy itself is the danger here.
When it comes to servers, memory is often the pricy point. And Java is a lot more memory-hungry than Rust.
Good, then find some guys to develop lemmy faster, reliably and bigger. With lemmys pace of features, it will be taken over by faster developing platforms, where they can have more and more features ready and deployed where the lemmy devs still wait until they get enough donation to implement any crucial feature.
Sublinks decision was based on: How fast and reliably can they build a lemmy backend replacement, java is the only possible option there. There are many devs, Language is mature, reliable and not a hipster language like rust.
Of course if they did that in rust they would be same level, but then would be the question why not contributing to lemmy directly.
If performance and memore is so dramatically NASA rocket computer limited, than why not use assembly. Its the fastest, memory efficient and speaks directly to the computer.
Well, we’ve yet to see that. But I mean if it does then… great? I just don’t believe it will right now. I don’t think just switching the programming language will have such a large effect as you expect.
You really can’t call something hipster when it is being adopted by the largest technology companies in the world and is even being used in the Linux kernel. That’s not what hipster means.
I didn’t say it was “NASA rocket computer limited”, I just said memory matters for price. And it does. This reads to me like you are frustrated and it comes across as a bit snarky and sarcastic. If we are actually to talk about programming language pros and cons, then at least let’s talk about it genuinely.