Came across this on the r/selfhosted community. Still very much in the alpha stages, but it's already got a Docker image you can try out for yourself, or try out the demo server.

Tried it earlier today, couldn't get the voice/video chat to work right away on my self-hosted setup but the real-time chat was very snappy. Looks promising.

all 74 comments

sorted by: hot top controversial new old
[–] 40 points 9 months ago* (4 children)

Keep in mind that this project is likely vibe coded, or at least seems very AI assisted. (Copilot is mentioned in the .gitignore file and this was built by a single person in about 4 months) A bunch of security issues have already been opened.

Edit: @just_another_person@lemmy.world already mentioned this, my bad. 😄

  • source
  • hideshow 4 child comments
  • [–] 40 points 9 months ago* (last edited 9 months ago) (21 children)

    No E2E-encryption? Can't find any info about it. Unencrypted = big nope. Looks good otherwise :)

  • source
  • hideshow 21 child comments
  • [–] 62 points 9 months ago* (18 children)

    Don’t let perfect be the enemy of good. Discord isn’t E2EE either. Having data under your control even if not encrypted is a big win.

  • source
  • parent
  • hideshow 18 child comments
  • [–] 14 points 9 months ago (16 children)

    why use this over the hundreds of messaging platforms that can be self hosted and have e2ee

  • source
  • parent
  • hideshow 16 child comments
  • [–] 20 points 9 months ago (12 children)
  • [–] -1 points 9 months ago (11 children)
  • [–] 21 points 9 months ago (9 children)

    Can you? Can I? Best I understand it's a world of pain. If there was a clear winner in the discord-a-like OSS race all these alternatives wouldn't be coming out of the woodwork. Maybe it's matrix (with an actually good client, proper decentralization, easy containers), maybe stoat, maybe ... I've always hated discord anyway and have little need currently, I can wait.

  • source
  • parent
  • hideshow 9 child comments
  • [–] 9 points 9 months ago (4 children)

    The problem is that there are very few people who are familiar enough with both Discord and Matrix to give a meaningful answer.

    Personally, I use both, but for completely different use cases. I do not understand how one could be used as a substitute for the other. Perhaps I'm missing something, or perhaps everyone who thinks Matrix is a good substitute for Discord just don't use Discord very much.

    If you have a small group of friends who occasionally hang out in chat, sure, Matrix is fine. If you're in dozens of Discord servers, each with dozens (or even hundreds) of channels, and hundreds or thousands of users, no. At least, not with Element. Perhaps there's a better client out there for that?

  • source
  • parent
  • hideshow 4 child comments
  • [–] 5 points 9 months ago

    This is spot on. Discord and Matrix are, IMO, quite different. Matrix is more like Slack or Teams. You can do voice and video calls, if you configure it to do so, but it isn't like Discord in that regard at all. If you don't use Discord for that and mostly just chat with your friends then sure, but you have a lot of choices in that case.

  • source
  • parent
  • [–] 2 points 9 months ago (2 children)

    Perhaps I’m missing something, or perhaps everyone who thinks Matrix is a good substitute for Discord just don’t use Discord very much.

    Seems likely, certainly Matrix has some pretty evangelical supporters. I think you nailed it with discord being more useful for mid sized numbers and having a client that handles it pretty well. I'd also add pretty painless onboarding. An OSS offering that matched it's primary features (and has E2EE) or has a good framework, roadmap and people to get there would come in pretty clutch as discord goes public and starts monetizing everything in sight. A million (or thousands) independent FOSS 'discords' in the night would be a sweet sight.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 2 points 9 months ago (1 child)

    (and has E2EE)

    Normally my policy is "E2EE or GTFO", but the concept only applies to a subset of Discord use cases. A good Discord alternative needs to handle the same variety of use cases as Discord.

    E2EE for a public forum makes no sense. Lemmy doesn't have E2EE either, obviously. That's an absurd idea.

    Discord is mostly used for public or semi-public spaces. I'm in Discord servers for some of my favorite games and game studios, for example. The only barrier to entry is clicking a link, which is usually publicly advertised. I'm also in some semi-public Discords that are locked behind a membership of some sort (like Patreon), but those are still full of an arbitrary number of people I do not know. It's not a private space. E2EE would be counterproductive.

    That said, I have a few friends who habitually DM me on Discord, and I'm like "dude, I know you have Signal. Use it FFS". One thing I like about Lemmy is that when you go to send a DM, it literally warns you against using it for DMs:

    Warning: Private messages in Lemmy are not secure. Please create an account on Element.io for secure messaging.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 2 points 9 months ago

    Normally my policy is “E2EE or GTFO”, but the concept only applies to a subset of Discord use cases. A good Discord alternative needs to handle the same variety of use cases as Discord.

    E2EE for a public forum makes no sense.

    Totally valid point, especially w.r.t. ease of onboarding for public usecases. Sure would be nice if it functioned (optionally) as a private forum as well. Seems like a lot of commonality there and covers the DM case and the 'semi-public' but discord is totally logging everything case. One can hope, but I agree, first things first.

  • source
  • parent
  • [–] 2 points 9 months ago* (last edited 9 months ago) (3 children)

    I admit i mostly use matrix as an instant messenger, but it works fine for when i need comms with my friends while gaming or when i want to share my screen for something. My university also has its own deployment so all the people around me automatically have an account anyway, which makes it easy to set up groupchats.

    Sure it still has some jank to it, but if you look at how janky it used to be even just a year ago, the trajectory is pretty clear to me. Its a very ambitious project that arguably tried to do too much at once in its early days, but i think its here to stay and its only gonna get better. If its not good enough for you today, then just wait another year or two until it is. Its not going away because its being used basically everywhere at this point. Government, healthcare, military, university, private industry, schools, etc.

  • source
  • parent
  • hideshow 3 child comments
  • [–] 2 points 9 months ago (2 children)

    Fair cop, sounds useful, and I have used it in the past for similar. I was however looking at it in the context of Selfhosted.

    its being used basically everywhere at this point. Government, healthcare, military, university, private industry, schools, etc.

    True, and I have good hopes for it, partly because of the adoption, you will however note the scale of your examples, basically it's an IT department project rather than a set and forget selfhosted container (I recognize there'll always be moderation to do). We shall see, I'm in no hurry.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 2 points 9 months ago

    I have, and am, selfhosting Matrix, and it isn't that big of a deal if you're someone that, you know , self hosts things. That is just outside of what most people can or are willing to do. That's totally fine, but finding a FOSS platform that will host a VoIP/video server for you and not try to monetize you is almost certainly going to be rare or short lived.

  • source
  • parent
  • [–] 1 point 9 months ago* (last edited 9 months ago)

    I see. I havent selfhosted any matrix servers yet, so i havent looked into it too much. But yeah its kind of an intimidating process to set these up when i look at the guides. I know that there are a few server implementations besides synapse that are mature and stable (and supposedly much more resource efficient) and they do support docker deployment. All of these including synapse can however be run on a raspberry pi so there isnt really any big requirements other than keeping it up to date and doing backups of your databases.

    https://forgejo.ellis.link/continuwuation/continuwuity

    https://github.com/matrix-construct/tuwunel

  • source
  • parent
  • [–] 1 point 9 months ago (2 children)

    I'm in a Discord server with 2000 members. You really want to encrypt and decrypt all incoming and outgoing messages 2000 times? There's a reason why most E2EE messaging apps don't really do that for group chats.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 1 point 8 months ago

    Depends on the usecase. If you don’t need chat history for new-joiners, you can work with a single key per group, rotating it whenever someone joins or leaves. Since the server broadcasts a „so-and-so has left/joined“ it might as well include the new key. That key is then used by everyone in the group, so you can still broadcast all messages and don’t have to encrypt them individually.

  • source
  • parent
  • [+] 22 points 9 months ago* (3 children)
  • [–] 3 points 8 months ago*

    Reminds me of the guy in that show Silicon Valley who was basically a plant / spy (Jianyang?), and his grand visions for all his apps were creatively named:

    "Chinese Facebook, Chinese Instagram, Chinese Twitter. . ."

    Lol

  • source
  • parent
  • [–] 10 points 9 months ago (3 children)

    Aside from

    • iso27002 violations
    • FHS violation

    It looks good!

  • source
  • hideshow 3 child comments
  • [–] 5 points 9 months ago

    I honestly didn’t know what these were.

    These are very simplistic but iso27002 violations are security procedures not being documented properly. The FHS one refers to not following the Filesystem Hierarchy Standard on Unix‑like systems.

    Why does the second one bother me more?

  • source
  • parent
  • [–] 9 points 9 months ago (1 child)

    Haven't had a chance to really look into it, but there's also spacebar chat which is an open source selfhosted reimplementation of the discord backend that can be used with existing discord clients and bots and stuff. Which depending on how solid the rest of if is, could really help existing discord people move with less effort.

  • source
  • hideshow 1 child comment
  • [–] 10 points 9 months ago (6 children)
  • [–] [S] 13 points 9 months ago (1 child)

    As much as I want to love matrix, it is a huuuuge pain to set up & maintain.

  • source
  • parent
  • hideshow 1 child comment
  • load more comments (-1 replies)
  • [–] 9 points 9 months ago (2 children)

    Drop-in voice channels are a requirement for a discord alternative, Matrix does not have them. AFAIK you still need to call an entire channel to start a voice chat.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 5 points 9 months ago (1 child)

    Im surprised as how many people discount this feature. Sometimes I sit in voice chat in my small Discord server alone for hours because nobody would show up if nobody was around.

    We're all adults with jobs and responsibilities and shit, we don't want to have to dial people in to shoot the shit late at night. That would feel like a chore.

    An alternative with no drop in voice chat is a non starter for my group.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 4 points 9 months ago

    I think it comes from the fact that a lot of communities and projects use Discord basically like they would with IRC, with voice chats often not even existing in some servers. I have to assume the people who recommend Matrix are only ever in that kind of server.

    I'm in 2 or 3 servers with different friend groups and of course each one is full of friends of friends of friends. Even the smallest is over 30 people, but I only regularly join VC with 3-4. If I had to call all of them to be in a voice call I would literally never do it.

    Same goes for chats, in Matrix the closest things to channels and servers is rooms and spaces. The difference is that you don't join a space, you just view rooms in the space and join them. Most of my servers have a ton of different channels for different things, I want to be able to see what happens in all of them without having to join each one, announcing to them that I've joined.

    I like Matrix for FOSS project discussions, but I don't think it'll ever be the right pick for just hanging out with friends.

  • source
  • parent
  • [–] 17 points 9 months ago

    The user experience for matrix is absolutely dog shit. Anyone who says otherwise is huffing copium.

    I have been setting up matrix servers and testing every desktop and mobile client. I cannot present this to my discord group as an alternative.

  • source
  • parent
  • [–] 15 points 9 months ago (7 children)
  • [–] 10 points 9 months ago (3 children)

    Tried a few months ago, the documentation for self hosting was lacking lots of info and now I can't even find it...

  • source
  • parent
  • hideshow 3 child comments
  • [–] 1 point 9 months ago

    Yeah, I lade my acc a year ago and iirc they didnt have voice chat then. Now they seem to have better permissions for channels, vc and video/screen sharing around the corner. Only thing Im lacking is fediverse type of instances so we can only pray that will be developed one day. As of now idk what the status on self-hosting is but ive seen the devs link alot about it in their official server

  • source
  • parent
  • [–] 8 points 9 months ago (1 child)

    Their registration process is currently hugged to death. Can't receive verification emails.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 1 point 9 months ago

    Yup, saw some stats from screenshots on there, their mail service had a cap of 300 mails monthly and it blew up to over 50 000. Verification/mail servers went up again yesterday at 4am CET but still seems like the authentication servers are pretty overrun.

  • source
  • parent
  • [–] 2 points 9 months ago

    Thank you for sharing, this looks like it has potential and its brand new. Love you FOSS nerds.

  • source
  • [–] 6 points 9 months ago (19 children)

    This is so vibecoded 🤣 Nawthx

  • source
  • hideshow 19 child comments
  • [–] 6 points 9 months ago (7 children)

    Based on what? A quick peek and I didn't see any of the stuff I expect from LLMs

  • source
  • parent
  • hideshow 7 child comments
  • [–] 8 points 9 months ago (5 children)

    Less than a 4 month commit history and one dev. Not impossible maybe, but sure is suspect.

  • source
  • parent
  • hideshow 5 child comments
  • [–] 7 points 9 months ago (3 children)

    Absolutely not impossible for a skilled dev with lots of free time. This is still an Alpha after all.

  • source
  • parent
  • hideshow 3 child comments
  • [–] 4 points 9 months ago (1 child)

    Building the full stack of a functional real-time voice and video comms system as a lone dev is not a trivial undertaking.

    Even if they put 40/wk or more into it, I'd still be impressed. Like I said, not impossible but these people are rare.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 3 points 9 months ago

    WebRTC is a thing. You don't have to build all that from scratch. It's very reasonable to piece together a lot of standard technologies to make this progress much quicker. I haven't looked into this project, so I don't know, but I know it was pretty trivial to setup a WebRTC app 10 years ago, which would appear to be a fully functioning video app.

  • source
  • parent
  • [–] 2 points 8 months ago

    Completely agree. If this is a skilled Dev who's built products like this before and you can build something like this in your afternoons and weekends in like 6 months without LLM tool assistance.

    With basic assistance you can definitely cut that time down to 4 months or less easily.

    And if this is a full-time project, you can probably get it out the door in 1 to 2 months with llm assistance. (Not vibe coding, two very different things)

  • source
  • parent
  • [–] 2 points 8 months ago*

    I've built projects of the size in 5-7 months before we had LLM or ML coding tools.

    With tabbed completion (Which most devs enjoy), and before full LLM code gen, 4-6 months.

    With llm assistance, not vibe coding, it's possible to build projects like this in 1 to 2 months without sacrificing quality or safety. If you are an experienced engineer and have built projects like this before. A lot of these are boring, boilerplate, stuff.

    So the time spent doesn't necessarily say that it's vibe coded but if this is an inexperienced engineer then it very well might be and may be full of holes and issues.

  • source
  • parent
  • [–] 3 points 9 months ago (10 children)
  • [+] -10 points 9 months ago (9 children)
  • [–] 3 points 9 months ago (8 children)

    I took a look. Didn't seem vibe coded to me. Is there a specific area you looked at that looks vibe coded?

  • source
  • parent
  • hideshow 8 child comments
  • [+] -11 points 9 months ago* (7 children)

    Here's a very simple list of issues that any Node dev would immediately say is generated and has not been cleaned up:

    I mean I can keep going, but if you even glanced at this and didn't IMMEDIATELY get it, you are bad at your job.

    Edit: This one is fucking hilarous

  • source
  • parent
  • hideshow 7 child comments
  • [–] 18 points 9 months ago (5 children)

    Your hostility confuses me. I'm not a node dev.

    I skimmed some of the server files and didn't see the normal vibe coded slop I normally see in other languages and was genuinely curious what you saw.

    Thank you for your examples.

  • source
  • parent
  • hideshow 5 child comments
  • [–] 7 points 9 months ago

    It's okay. I've got a few side projects in node and I also don't see anything too out of the ordinary here. If anything this looks more like someone's first project with some "make it work" rather than being perfect and pretty.

    I don't understand the hostility. Even the bits that this guy talks about (duplicated code?) nothing looked duplicated - sure the names of the folders are the same but that's more of a naming convention problem when you have a client that needs to connect to servers (or in this case has screens and functionality to connect to servers).

    And now I've probably spent more time and brainpower on this than I should have just because I was confused.

  • source
  • parent
  • [+] -33 points 9 months ago (3 children)

    Then why if you aren't familiar would you make a comment you didn't see anything?

    Do you randomly walk into other people's jobs with zero proficiency and speak to how they're doing at it?

  • source
  • parent
  • hideshow 3 child comments
  • [–] 0 points 8 months ago

    Dude, my team members put out code that's like this or worse on a regular basis that gets caught in PR review without using AI tooling...

    I've supported legacy projects that of course were built without tooling that didn't exist. That are structured and written in ways that are far far worse than this.

    Nothing here screams vibe coated.

  • source
  • parent