this post was submitted on 15 Mar 2026
167 points (88.8% liked)

Selfhosted

56958 readers
1477 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

  7. No low-effort posts. This is subjective and will largely be determined by the community member reports.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

Since Discord announced they're going to help Petie T collect selfies of us all I've been working on a self hosted alternative mostly for my mates. I had five goals in mind when I started this:

  • Text Channels
  • Voice channels
  • Screen Sharing
  • End to end encrypted DMs
  • Able to run on pretty much any web hosting

I've reached that point now and figured why not slap the GPL on it and send it out into the wild.

I'm sure there'll be lots of bugs and I don't think it will scale well. I never set out to make something that would grow into a behemoth that's used for customer support and all sorts of shit.

The goal was to make something that covers that trifecta of text/voice/screensharing, without relying on P2P connectivity, and able to do it well for small groups of people.

There are more features I have in mind if it gets any interest:

  • Rate limiting on backend requests
  • Quasar app with the ability to add more than one server (the frontend is already built in Quasar and I started writing some code for it but I'm mostly building this for myself + friends where I host my own instance so I've not given it much attention)

So yeah, I'm not a professional dev, this is a hobby for me. Would be cool to see if anyone manages to get it running.

top 50 comments
sorted by: hot top controversial new old
[–] Krafting@lemmy.world 2 points 1 hour ago (1 children)

Should have been a matrix client instead off réinventent the wheel everytime, damn im tired of those discord alternatives that probably have no future...

[–] briffy@lemmy.world 1 points 53 minutes ago

Read my post history here for why I think matrix is a bag of crap. 😅

[–] Decronym@lemmy.decronym.xyz 2 points 21 hours ago* (last edited 48 minutes ago)

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:

Fewer Letters More Letters
CSAM Child Sexual Abuse Material
SSO Single Sign-On
XMPP Extensible Messaging and Presence Protocol ('Jabber') for open instant messaging

3 acronyms in this thread; the most compressed thread commented on today has 6 acronyms.

[Thread #170 for this comm, first seen 16th Mar 2026, 13:20] [FAQ] [Full list] [Contact] [Source code]

[–] insomnia_sufferer@lemmy.ml 12 points 1 day ago (1 children)

Just use signal + matrix.

It's better if we find a way to get people off discord into another platform than just cranking out new platforms.

[–] magic_smoke@lemmy.blahaj.zone 7 points 20 hours ago* (last edited 20 hours ago)

Matrix has lots of metadata issues and signal requires a phone number which is a non-starter.

Self host what makes sense for communities, use simplex for one-to-one IM/VoIP.

Also discord acted as like six different services and we shouldn't continue letting anything do that.

Personal IM, party chat/VoIP, meeting software, inter-office communication, wiki software, and forum software are all different things for a good fucking reason.

[–] Yaky@slrpnk.net 61 points 1 day ago* (last edited 1 day ago) (2 children)

Edit: Author says GenAI was not used for code, see below.

Original comment, observing signs of GenAI project:

What's up with these brand-new "Discord alternatives" being cranked out en masse? Would be easier to contribute to XMPP or Matrix IMO.

Initial commit 14,203 files changed +2872320

AI? Or "i worked on this for 10 years and uploaded just now"? /s

Overabundance of emojis in description. Probably AI.

Would be cool to see if anyone manages to get it running.

Were you able to run it yourself? What.

[–] briffy@lemmy.world 63 points 1 day ago* (last edited 1 day ago) (2 children)

Like I said, I'm not a professional dev, this is a hobby. I fucked up my initial commit and included all the source for the Vue framework. That was me fixing my mistake. You'll find a few more of those in there. If you actually look at the commit instead of just knee jerking you can see for yourself what happened.

To be honest, I've run matrix, it's an absolute headache and to get voice and video is even worse. I don't really care about federation, I've been pretty clear in what this project is.

I used Claude to give me a template for GitHub and generate the logo/favicon because I suck at all things creative. It's open source, if someone wants to make me some images and rewrite the readme then crack on. The actual meat and bones of the project, the code, is all written by me, a real human.

Yes, I have run this myself, it works quite well. Apologies for trying to be a bit candid.

Appreciate the feedback.

[–] Badabinski@kbin.earth 23 points 1 day ago (1 children)

These other responses are annoying. This looks really cool, and I hope that it works well for you and your friends! We definitely need good discord alternatives ASAP, and more options are better imo.

One cool feature would be some sort of official support for interop/bridging to other services. That might help to boost adoption and would make the "why not just contribute to Y" people be quiet.

[–] briffy@lemmy.world 20 points 1 day ago (11 children)

Heh, I've been around a while. I expect people to pick it apart so they can get that kick out of being right or whatever.

It does what I need, thought other people might have found a use for it. I'm always happy for constructive criticism on my code or feature suggestions but people crying because I used Claude to give me a template for the readme can kick stones.

I'm sort of reluctant to add bridging mechanics for a couple of reasons. I don't think my coding ability is up to it and it's not something I'm really interested in or a goal for the project. I set out to make something that can be spun up pretty quickly for a group of people to have voice/text/screenshare when gaming. I never intended for it to be federated or hook into all sorts of services, just a self contained service for mostly private comms that doesn't report back all your activity to Palantir or advertisers.

[–] early_riser@lemmy.world 7 points 1 day ago

And this is exactly what I want, something easy to deploy and host for a small group of friends. It doesn’t need to scale infinitely or federate.

[–] MalReynolds@slrpnk.net 7 points 1 day ago (1 children)

Sensible, limiting scope and knowing your limits are wisdoms all too many lack. Having something that fills the text/sound/vidya needs and is easy to spin up will find uses, doesn't need to do everything.

To the end of being easy to spin up, which is likely to attract other developers in time if that's something you'd like, consider wrapping it up in a docker container. It's not that hard, basically follow your own instructions in a special docker build format.

[–] briffy@lemmy.world 5 points 1 day ago (3 children)

Thank you for your feedback.

Honestly, there are a few more features I want to add like markdown/gif support, image/video uploads and user settings (push to talk, volume leveling, etc. are sorely needed) but outside of that and cleaning up bits of the UI, I'm terrified of creating an unwieldy codebase. I don't want something that requires constant tweaks and updates, just something that focuses on those core features and nails them down. You can just install it and pretty much forget about it.

Docker is definitely on my list, I was going to have a chat with one of my mates that lives in docker land to see if he could give me a hand setting it up properly. I've used docker before but mostly in hacky ways rather than something I'd be comfortable deploying to other people.

I'd be happy to contribute the docker stuff if you want as well. I do it for fun and profit, and I'm gonna be awake for the next three months straight with a newborn so I'd absolutely welcome the opportunity to do something other than feed this poor child.

[–] daychilde@lemmy.world 3 points 1 day ago (1 children)

My only hope is that you include one weird nonstandard Markdown feature so you can come up with a name for your yet-another-almost-markdown-but-not-quite-standard-markdown version. Just because. :)

[–] briffy@lemmy.world 2 points 20 hours ago* (last edited 20 hours ago)

I think we can all agree coming up with names is not one of my key skills. Not following standards, however, is. Hold my beer, I got this.

load more comments (1 replies)
load more comments (9 replies)
[–] Yaky@slrpnk.net 2 points 1 day ago

That is fair, and I appreciate the explanation.

[–] obelisk_complex@piefed.ca 15 points 1 day ago* (last edited 1 day ago) (2 children)

Would be easier to contribute to XMPP or Matrix IMO.

Synapse is in the middle of a rebuild without much compatibility between the legacy and new builds, and it's a pain in the dick to set up at the moment. I know, because I did it.

XMPP I haven't tried to set up yet, but I imagine it to be similarly in-depth.

As to why not contribute: edit: not AI, they just don't have the confidence in their own skills to contribute to anyone else's project.

Now... why do the whole thing from scratch instead of forking? Great question. XMPP might just need a nice coat of paint, if it can handle voice and video and screen share; I haven't come away with great impressions of matrix/synapse.

[–] briffy@lemmy.world 13 points 1 day ago (1 children)

I ran synapse for about a year with a STUN server so I could have voice/video and it was painful to set up and painful every time an update came around.

When discord started doing the ID verification thing I looked at alternatives and it seemed to be mumble, Teamspeak and matrix/synapse as the top contenders. None of them quite did the three text/voice/screen share though. Mumble is good at text/voice. Teamspeak 3 does the full package but screen share doesn't work in Linux and requires additional setup/P2P, you also need an account with them so they will eventually go down the same route as discord. Matrix/synapse can do all three but as mentioned, it's a nightmare.

As for why I'd create my own instead of forking an existing project: I just wanted to, it's that simple. I don't think I have the skillset to contribute to major projects, most of my code would get rejected. If I make my own, doesn't matter. If people use it, great, if not, I'm not too bothered. I'll probably end up pulling the whole repo down though if I keep getting called AI, that's fucking infuriating.

[–] obelisk_complex@piefed.ca 8 points 1 day ago (1 children)

I'm right there with you, bud. I tried StoatChat too, and I got a nice email from the German government about using an outdated version of React with RCE vulnerabilities. I think this must be a very difficult problem to properly solve, given the number of different approaches and how all of them have their own issues to contend with. Nextcloud Talk is the most usable option I've found because it does voice, video, and screen sharing and it also has call links you can send for unregistered people to join the calls. But performance is spotty even with the "high performance backend" set up (that may be due to my server being in Germany though 😅).

As to being accused of using AI, don't let it get to you. The people yelling the loudest can't tell the difference between handwritten code and AI, because they can't code. If you pull down your repo, you'll be depriving people who might be able to use your project because of trolls who never would have tried it in the first place.

I do use AI for coding, and I've gotten plenty of hate for it, but also people who don't care and just want the functionality of the tool I built.

And in fact I'm going to check out your project and see if I can get it up and running, so please don't take it down. I'll likely be putting it on my German server so I'll let you know what the performance is like with extreme round trips 😁

[–] briffy@lemmy.world 7 points 1 day ago

Thank you so much. I've run through the setup so many times and got a few instances of it running but I also understand how it's all working under the hood so I have a home field advantage. It would be a massive help to have someone go through the setup and make sure it's actually doable by someone that didn't make the thing because I'm so paranoid I've missed something in the instructions and it just simply doesn't work.

The poll rate on the audio is pretty aggressive, will be interesting to see what happens if your requests take longer than the poll rate of sending/receiving audio. I've accounted for packets arriving out of order so should be okay but... We'll see. 👀

load more comments (1 replies)
[–] ProdigalFrog@slrpnk.net 9 points 1 day ago* (last edited 1 day ago) (2 children)

I’m sure there’ll be lots of bugs and I don’t think it will scale well.

The lack of scaling and even more critically, lack of federation, unfortunately makes this not a viable alternative, at least not for Discord as it is used today. As a smaller self-hosted option that is just for use between a friend group, it'd probably be fine. It just won't be able to replace the exact use-case of Discord, such as allowing for easily bringing new randos you meet into a call without them having to sign up to your specific server.

The Discord-alternative landscape is filled with people vying to take its place, but I think we would be better served rallying behind Movim and XMPP, IMHO. Or Fluxer, if they eventually can enable federation.

[–] briffy@lemmy.world 3 points 21 hours ago* (last edited 21 hours ago) (1 children)

Thanks for sharing, that's an interesting read. I hadn't come across this when I was looking (to be fair, it might have been posted after I looked, I've been mostly on stack overflow for a month).

I'm in agreement with many of the author's points (I've ticked all of their requirements except markdown support and the only stretch requirement I don't meet is being able to scale up to thousands of users - but I never wanted to do that anyway).

I am really torn on "everything needs to be federated" though. I feel like credential fatigue/ease of joining a server is largely solved with SSO/SAML or magic links with guest access. I want to love federation, I really do... But my own lived in experience with matrix has soured me on it. It was a pain to maintain and the eventual tipping point was one of my "trusted" federated services (Arch btw) flooding me with CSAM.

I think there are many discord users that use it for voice/text/screen share with a core group and don't really care about all the extra stuff or having these huge servers filled with people they'll never interact with. It's just the only realistic option right now to chat with their friends. Those are the people I'm hoping to attract. I'm not saying what I'm offering is a perfect solution but what I am offering is that core functionality without the gradual enshittification and constant slurping of your data.

[–] Holytimes@sh.itjust.works 3 points 5 hours ago

Federation is just the current gimmick fad of the foss world.

Everyone has a massive boner for it in everything even when it makes no fucking sense or only harms a project.

Is it cool? Yeah. Is it actually important? Not at fucking all. It's at best a secondary feature that's nice to have if it doesn't harm the project.

Getting an actual product that's safe, secure and most importantly functional. Is infinity more important then federation.

End to end encryption is kinda the same problem. Not EVERYTHING needs that level of security. You don't and shouldn't be talking about things that require that level of secure in apps that aren't designed first and foremost for that level of safety.

And you can't expect everything to be secure and user friendly. They go against each other frequently.

Again a nice thing to have, but functional usability comes first.

[–] magic_smoke@lemmy.blahaj.zone 0 points 20 hours ago

The XMPP ecosystem is a mess and matrix has a ton of security and metadata issues.

We shouldn't be using discord-likes anymore, it was a bad idea the first time.

Personal IM/VoIP should be separate from game party chat should be separate from communitt IRC/forums

[–] Entails_rink9o@lemmy.world 8 points 1 day ago (2 children)

I think these smaller scale, single instance Discord alternatives are honestly the way to go for a lot of people. I don't use Discord at all in my personal life, but my family use WhatsApp/Telegram/etc a lot and I see these more as an alternative to those rather than Discord specifically. While I like the idea of NC Talk, it's seems like a real pain to setup if you didn't start out using the Nextcloud AIO container like me. I don't want to link to other instances or have bridging, I want something I can set and forget on a family member's phone and know their stuff isn't going to be fed into alphamicrobook's combine-data-harvester or that they're going to fall victim to a pig-butchering scam. This looks like a great solution, even if it's a little rough around the edges.

[–] douglasg14b@lemmy.world 1 points 21 hours ago* (last edited 21 hours ago) (1 children)

The commit history is 1 day.

Which is incredibly suspicious.

[–] briffy@lemmy.world 2 points 20 hours ago (1 children)

It's a new project that I've been working on locally. My code backups are handled locally (this is /c/selfhosted right?) so I've not had a reason to commit anything to GitHub until I was ready to let other people have a crack at it.

My Github account is 14 years old and has previous projects on it with 40+ stars. I have been actively replying as much as I can in this thread and the project is entirely open source, feel free to review the code and let me know if you find anything suspicious in there.

[–] douglasg14b@lemmy.world 2 points 11 hours ago

Makes sense. I appreciate your replies

[–] HaroldRaoulRockford@lemmy.ml 3 points 1 day ago

Idk, a lot of people aren't really equipped to be the webmaster for their friends and family. Centralization is part of the appeal. Its much easier to talk to friends when I dont need to convince them to make a new account somewhere.

[–] RetroHax@feddit.org 7 points 1 day ago (1 children)

eh while i appreciate this Project i do also think that contributing to Software like Matrix or XMPP would be better as theyre actually used in Production and Companies :P

[–] briffy@lemmy.world 6 points 1 day ago

I'm with you, I love Matrix as a concept but the experience of actually running it was a major headache for me.

I'd love to contribute to those projects but anyone that's read through my repo for this will see I'm not that good. It took me a long ass time to figure out end to end encryption and those projects are built on it. 😅

I also feel like they fit a different niche, at least matrix does, I'm not too familiar with XMPP. I've said in other replies, I'm not looking to make something that's infinitely scalable or federates with other services, just a relatively simple chat app that someone can have running for their group of gamer friends. If it can do text/voice/screen share with minimal setup/fuss/external dependencies then I'm a happy boy. I kinda had this idea in my head that I'd like to get it to the point where you can upload a tar.gz to cheapo web hosting, untar, follow the setup wizard and have comms ready to go without having to mess around in config files and what not.

[–] TrippinMallard@lemmy.ml 6 points 1 day ago* (last edited 1 day ago) (1 children)

Would I be able to sign into multiple servers simultaneously? In case I have 2 friends hosting this on their own separate servers?

I care about that more than federation.

[–] briffy@lemmy.world 7 points 1 day ago (1 children)

This will probably be the first update I release. I've pre emptively built the front end in Quasar and there's even some bits of commented out code in there from where I started looking at storing authentication data per server. The plan as I see it, and I think this makes sense, is to have the web app based front-end be for people that want to run their own contained instance of both the API and front-end but then also have a Quasar desktop based app that has server switching built in. This then allows the server owner to just run the API if they want and let the user worry about how they connect.

It hasn't been a priority for me at the moment because I'm literally the only person running a server. 😅

Now that it's out in the wild, my next focus will be on the multi server side of things and making the text channels a bit more functional than just plaintext.

[–] TrippinMallard@lemmy.ml 3 points 1 day ago

Sounds awesome! No rush, I'm a big believer in taking the time to do it right, not twice.

Just wanted to let you know that I find value in that + feel like it could help adoption especially in the self hosting community.

[–] thinkercharmercoderfarmer@slrpnk.net 8 points 1 day ago (5 children)

Yet Another Discord Alternative would be a better name than Harmony.

[–] Anarki_@lemmy.blahaj.zone 34 points 1 day ago (3 children)

Has the problem of having Discord in the name. Also Harmony is pretty much opposite of Discord. Good name.

[–] briffy@lemmy.world 16 points 1 day ago (2 children)

It was originally going to be Entropy (there might actually still be references to that in the code) but 3 seconds in Google turned up a decentralised messaging app called that so went with a name change. Now it just sounds like an early internet dating site.

[–] Anarki_@lemmy.blahaj.zone 6 points 1 day ago

A little bit, but it's probably okay. Hope it takes off!

load more comments (1 replies)
[–] thinkercharmercoderfarmer@slrpnk.net 8 points 1 day ago (1 children)

That's true, maybe "Yet Another Discourse Alternative"? Discussion Alternative? I just like the idea of a chat platform whose acronym is YADA.

[–] Anarki_@lemmy.blahaj.zone 5 points 1 day ago

Discourse is already a platform, too 😅

YADA is a funny acronym though.

[–] Onomatopoeia@lemmy.cafe 5 points 1 day ago

I'd you just call it YADA without it being an acronym...

[–] briffy@lemmy.world 8 points 1 day ago (1 children)

I thought the same right after I posted. Damnit. :(

[–] thinkercharmercoderfarmer@slrpnk.net 8 points 1 day ago (1 children)

IME, code projects either die or live long enough that you think of a better name for them long after a name change becomes not worth the effort. Naming things is hard 🤷‍♂️

load more comments (1 replies)
load more comments (3 replies)
[–] HelloRoot@lemy.lol 5 points 1 day ago (1 children)
[–] FlowerFan@piefed.blahaj.zone 3 points 1 day ago (2 children)
[–] briffy@lemmy.world 7 points 1 day ago* (last edited 1 day ago)

So the group channels and audio/voice aren't but DMs are. It uses asymmetric signing and per conversation keys. These can be imported/exported so you can see your conversations across devices but by default the keys are never transmitted.

Unless there's an issue with my code I'm missing?

Edit: oh wait, this was a reply about fluxer, I'll leave it up just for info in case anyone is interested. Can you tell this is day one using Lemmy... 🫠

load more comments (1 replies)
load more comments
view more: next ›