> Chatto ships in a compact, self-contained binary
> it uses NATS, a compact message broker that also ships with a built-in stream persistence engine [...] NATS is just as easy to provision as Chatto, and most of our examples will show you how.
> you can also configure an external S3-compatible object storage for Chatto to store your files in, and we strongly recommend doing so...
> The actual calls are powered by LiveKit (Apache-2.0), which you need to deploy alongside Chatto. As with NATS, the deployment examples show the required wiring.
> ...
And kudos for backing it up with real guidance. Great project.
This is super cool. More options is always good. Something that is confusing about the docs though... is there a desktop application? The screenshot implies there is but I couldn't find the docs to download THAT.
There is a Tauri wrapper that I built early on because I wanted the desktop convenience (autostart, separate app, etc) that Firefox+PWA couldn't offer, I use the desktop version as my daily Chatto driver. The mobile build is more of a proof of concept for now. Check it out: https://github.com/teal-bauer/chatto-tauri
I’ve known Hendrik for years, and he is one of the most talented developers I’ve ever met. I’m confident this project will become successful very quickly. Beyond the project itself, what fascinates me most is how he single-handedly developed it by leveraging agentic coding.
I second that. I've personally known him for almost 30 years by now, and he's still one of the smartest, most experienced, and most curious devs I've ever met. All around good guy, would work with him again any day of the week.
Are you sure you read that here? I came back yesterday after a hiatus and I’ve been dismayed how many posts are just “yeah, I just run Claude all day” without a hint of embarrassment or shame.
> But I read here every day that agents can't code. And that "real developers" spend more time fixing AI bugs than producing code, and it slows them down.
This is all correct, though. I haven't tried this, but I can guarantee it's a buggy, incoherent mess, same as every other vibe coded app I've ever tried, no exceptions.
Well that’s just snarky and not very nice. The guy has 30 years experience as a dev according to a sibling comment so it’s not as though it’s some vibe coded junk. Why do you believe a good dev can’t use AI to assist in writing great code?
I would guess that in these cases you would just not allow users to self-delete their accounts? But for most users and providers of Chatto I think automatic right-to-deletion compliance sounds nice :)
I wouldn't know. With the post mentioning teams and slack I just got the feeling it was on the cards, so I thought it was worth posting that in case it hadn't occurred to them.
Can also mean annoying. As a general recommnedation, before naming a project or company something, always search whether it means something bad in the top 10 most spoken languages.
For portuguese/spanish, there is always a high chance of being a slang that is NSFW
This is awesome! Some feedback - I can't tell anywhere from the website if there is mobile support (which is a must-have if I want to consider moving my company or friends over to this)
Note that to send notifications to an iOS app, the app publisher has to send them. This means that they need to run an event forwarding proxy service (this is how Mattermost and Element/Matrix and presumably some/all of the ActivityPub clients do it), or selfhosting your server means you must also selfpublish your client app via the App Store and Apple’s developer program tax.
For Mastodon, each mobile app developer needs to have a "webpush relay server" to receive Mastodon's webpush notifications and transmit them to the platform's push service. For Android, Mastodon recently added support for the latest webpush standard which allows the app developer to directly register Google's webpush endpoint with Mastodon, removing the need for a relay.
In all cases, push notifications are encrypted by the Mastodon server, and decrypted by the Mastodon client, so any intermediaries (relay server, push notification service) can not read their content.
I will keep an eye on this! We’re currently using Mattermost, but their pricing is a bit all over the place and targeted for enterprise so we’re still running on the, now gimped, open source version.
Additionally we’ve been missing video calls, so that’s nice that Chatto has it :)
Backend under AGPL prevents someone hosting it as a service. AGPL specifies that hosting _is_ distribution. Therefore, anyone hosting it must do so with public code. This provides a soft form of exclusivity to run their own Cloud.
A frontend, permitting customizability, white-labeling, and so on, makes more sense to be more permissive.
Grafana is a solid example to illustrate why.
Moved from Apache to AGPLv3 in 2021 specifically so cloud providers couldn't host modified versions without contributing back, while keeping plugins Apache-licensed.
Prohibiting a user of your software from modifying it and using it to run their business goes against both freedoms 0 and 1.
This “users are obligated ‘give back’ the moment they make money with the gift they were given” is nonsense and anyone paying attention knows it. A business making money using free software doesn’t take anything away from the releasing organization.
The anti-commerce bent of a subset of the free software zealots hate business so much that they tried to smuggle a EULA into the free software community. It’s nonsensical. Furthermore, the AGPL has never once been tested in court.
What would be really awesome is some sort of feature where, once self hosted, I can generate a package or link that will download + install + pre-configure the login. Basically a bespoke installer/setup script. that can be linked to a particular person. The goal being to make onboarding as frictionless as possible. This could have some security implications maybe (the link is shared by mistake), but for a small self-hosted instance, that seems like something that could be mitigated fairly easily. Maybe only works with local accounts or something.
That would really make it easy to send a friend a link, "hey come chat with me", without having to worry about a response such as, "I'm already on discord, I don't want to set up all that stuff".
What would you expect that to do beyond a "here's a link to the instance, sign up there"? You can combine it with Discord-like roles and gate channel visibility and rights on that, so even if someone else would sign up you just wouldn't give them the "in-group" role for example. Are you thinking of an "invitation" type link with a one time token or something?
I’m wondering too, the closest thing I can think of is maybe Zoom? It goes from link to opening your meeting *relatively* smoothly when the client needs to be installed.
Very good. I was wondering about this a while ago - lots of companies want something to aggregate notifications and perform simple bot actions, but don't necessarily want to lock into a chat provider. Having this as the frontend to a load of integrations (or even just internal chat) would be really interesting.
Very cool. I don't usually get excited for new chat apps, but I like the idea of having one frontend for multiple servers instead of pushing hard on p2p or federation.
I do also still like irc, but haven't used it much in recent years because most of the people I talk to are using discord now.
One front-end for multiple servers is how you end up reimplementing XMPP (bar federation) before you know it: servers are not guaranteed to run identical/compatible versions -> you bake versioning at capability level in the protocol -> you make clients and servers degrade predictably when that happens -> you write a standard to document it formally -> you invite around the table those authors of alternative client and server implementers and boom, you've got the X in XMPP, and the XEP standardisation process and the XSF to support it.
I bet this does a kind of "iframe" thing, where you're really just pulling in full web UIs, and they can be whatever they want. That's the impression I get from the comment about phone clients wrapping the web UI because there's no guarantee about what they will actually be.
So the UI is a Discord clone, I think that's worth mentioning. It's not a bad thing, quite the opposite: Discord nailed it in that regard.
Now are the chats end-to-end-encrypted? It only says calls are, so that remains ambiguous. I believe that would be a major sell for current Discord users.
What's the point of end-to-end encryption on a group chat where the entire group can decrypt it?
Discord users want end-to-end encryption to prevent Discord employees and outsiders from reading their chats. This doesn't have that risk, because the in-group runs the server.
I joined the chat as well, but if Hendrik is here - we'd love to have you on the channel (https://youtube.com/@WithMultiplesAI). This will make for one hell of an episode, I think.
Yeah, there are definitely valid contexts for hosting chat like this. E2EE has the benefit of not needing to trust the host, which I personally like but I can see this being fine or even wanted for lots of cases.
I've been testing/using chatto since early on and I'd say it's both and neither. It feels much nicer to use than Slack, but as of now it's missing some of the more "Enterprise" features. I would probably say it's a Slack-like Discord? But from the architecture it would be capable of playing as a full Slack replacement.
I also maintain a Chatto bot framework and a Tauri client, need to update those now :)
I mean, people have been asking for alternatives lately, so it's not like there isn't a market for it. There are even entire communities[0] for discovering them.
But considering there are already several dozen alternatives: what makes this one special? What sets it apart from Gamevox, Cinny, Element, Schildi, Echon, Neremity, Fluxer, Faction, Stoat, Guilded, Root, Loqa, Venta, Osmium, and so on and so on? Heck, a handful of vibecoded new ones spring up every week!
If you're going to release Yet Another Clone, you have to make it immediately obvious 1) how it compares feature-wise, and 2) what unique thing makes yours special enough to overcome the extremely powerful network effects of the incumbents. Reading this page Chatto looks neat I guess, but there's nothing convincing me to invest several hours into discovering whether this is truly a Discord killer, or Yet Another Clone. Same with the official website and docs: some techy mumbo-jumbo, but that's about it.
No matter how impressive it is technically and no matter how free and open it may be, without significantly better marketing material it'll have a chance at becoming relevant.
I've been trying to use Matrix for years and I still hate it at least half the time, it feels clunky, slow, cumbersome to use, the clients are hit and miss quality, and people (including myself) keep losing keys or identities for random silly reasons.
Compared to that, Chatto is just easy, nice, and FAST. It's a chat that I actually do like to use - I don't think the landing page is over promising there :)
single executable with its own frontend is the way; I followed the pattern with https://worb.cloud . Nice for users but also extremely easy to have a short debugging feedback loop
I’m wondering about privacy tradeoffs. Looks like they’re similar to Discord where the chats won’t show up in web searches and you can’t read anything without joining. But if anyone can join, it’s not like Signal either and end-to-end encryption wouldn’t make sense.
I'm the developer behind Fluxer – self-hosting is ready to use already [1][2][3], people are using it actively currently, and I'm currently working to make account switching across instances in the desktop app a reality. This, with a big voice update around the corner, will let us move much faster moving forward!
Ah mobile app is not ready yet. I am looking for some alternative to matrix because running it with bots is a bit convoluted, i.e. you have to have limit of edits of message for model streaming or you will kill entire room. Or I never seen robots in matrix sending encrypted messages. Why bother than? Anyway if mobile will be a thing this seems like perfect thing to have for your family and friends.
I created a Tauri based app but IMO it's not ready for prime time on mobile. On desktop, it's my daily driver for Chatto. If anybody wants to contribute, the foundation (desktop & mobile) is at https://github.com/teal-bauer/chatto-tauri
Interesting but could you put few screenshots there? Of both desktop and mobile? It is really hard to invest time into installing something that you cant see anywhere prior, and it will be really easy to do for someone that is using it daily. Sorry for complaining. Seems like nice project.
Does this federate with anything, like Matrix or XMPP? If it is locked into a single software, I fear nobody will ever switch to it (I have too many chat apps already!)
I don't want graphics in my chat. I don't want formatting in my chat. I don't want to see my co-workers pictures in my chat. I don't want this "modern-individual-but-non-the-less-same-y-looking" html and css driven "custom" UI that every of these apps has. I don't want emoji in my chat. I don't want all this other enshitification crap.
Essentially, i just want something like IRC, but without the netsplit and a modern stack. It would be so much nicer for company chat and brighten up my work days.
Many otherwise open-source chat apps are "open-core," they tie certain features to a subscription. Can be things like chat history, voice calls, video calls, but a very popular one is SSO and AD/LDAP integration.
Mattermost's licensing is a little confusing, but from what I understand, you're only really super-restricted if you use the prebuilt binaries (which have a different license than the source code).
IIRC if you build it yourself it's pretty much all AGPL, with few limitations.
I've been running Mattermost for a couple of years now and I'm content with it. It does feel a little bit clunky sometimes, but it's been stable and performant so I can't really complain. It can also feel a bit much sometimes. A bit too complex. A bit too feature-rich. But if I just ignore most of it, then it's good. I will say that Chatto looks nicer, appears to be simpler to setup and also has simpler licensing. Can it auto-update itself? That's something that's bad with Mattermost.
There is an audience for this, and it's me and my friends.
I have a small group of close friends. We are on discord just about every day, but we really don't bother with anyone outside our group, other than the very occasional invitation to another friend/coworker to join for some games.
We don't care about network effect, social media features, engagement, etc. We just want a well made application for private text, voice, and video that we never have to actually think about.
But the point here is that you don't want the network effects. You want a chat server for people you know and explicitly invite, for a specific purpose, under your control. Maybe you want the data to never leave your colocated box and your VPN, and your server to have no public presence at all.
No, you do want the network effects. Nobody wants to install yet another special snowflake chat client for a single community. Unless they are being forced to (like in a work environment) or are getting significant benefits out of joining that community, most people would just prefer not joining at all over installing an additional client.
Discord is winning because it's a dozen different communities in one single convenient client. Want your new chat platform to win? Convince all those communities to switch.
Or, perhaps the asynch chat thing is a distraction and we need something asynchronous that's well proven. Like... email?
Slack should never have been a thing IMHO. I remember first using it at a startup I was CTO of at the behest of the CEO ("everyone is using it"), back in around 2013. Instantly hated it. Just wish we could go back to good old email, TBH.
I’d bet making a slack-compatible client or bridge isn’t hard, we all just instinctively know whoever develops it is going to get sued or taken down.
It feels like we quietly gave up on adversarial interoperability awhile ago, and act like we need a whole separate “open walled garden” when what we actually need are legal protections that prevent companies from suing/banning people who call their APIs. Slack, Facebook, etc, are walled gardens only because they can ban/sue people who compete with their client experience.
I figure that will probably never happen in the US (maybe if someone rich starts it), but eventually someone outside of it will make such an adversarial integration and host it from some region that doesn’t care about US laws. Then, when they get away with it, we’ll all praise them as a genius and wonder how Slack could exist at all. The US has many international agreements keeping this illusion alive, but my guess is that even formerly stable markets like Europe could spawn such work if they decide to stop caring about ~1990s-2010s era contempt-of-business-model US laws.
I don't think network effects affect the vast majority of Slack usage. Slack and Teams are mostly used as internal company communication and that is dictated from above. If a company wants to switch to Chatto their IT department will just tell all employees to do that, and job done.
Matrix seems like a decent enough open protocol for a Slack replacement, with XMPP/IRC/IRCv3 being more useful for bare-bones chat transport.
This Chatto thing unfortunately uses a Protobuf custom API and is explicitly anti-compatibility with other systems. The lack of interoperability may end up killing it, unless the experience is much better than everything else.
I think time will tell, but one of the main things I like about Chatto is just how fast everything feels, and the protocol design is a good part of that I think. Data on the wire is just very small and optimized (last I checked, I didn't look at the latest protocol iteration yet). It was already very fast with the older GraphQL based API but now it's even quicker. With Slack and Discord, every channel switch and scrolls take visible time.
There's space for more than one self-hosted chat app in the world. Also very ignorant comment towards a project someone probably spend a lot of time on.
They have some `curl | bash` type installation, which doesn't really fit my set-up. They say "email us if you have any questions", so I've emailed several months ago and I'm still waiting for a response.
> And it’s really good hosting! Chatto Cloud is launching with fully European and European-owned infrastructure, with more regions slated for launch in early 2027
Chatto aims to be the group chat application that you actually enjoy using. You’re probably familiar with the one that rhymes with “knack”, or the one that rhymes with “beams”, or the one that rhymes with “this gourd”.
> It’s designed to be extremely easy to self-host on your own infrastructure.
Kudos for this. Per the docs: https://docs.chatto.run/,
> Chatto ships in a compact, self-contained binary
> it uses NATS, a compact message broker that also ships with a built-in stream persistence engine [...] NATS is just as easy to provision as Chatto, and most of our examples will show you how.
> you can also configure an external S3-compatible object storage for Chatto to store your files in, and we strongly recommend doing so...
> The actual calls are powered by LiveKit (Apache-2.0), which you need to deploy alongside Chatto. As with NATS, the deployment examples show the required wiring.
> ...
And kudos for backing it up with real guidance. Great project.
This is super cool. More options is always good. Something that is confusing about the docs though... is there a desktop application? The screenshot implies there is but I couldn't find the docs to download THAT.
There is a Tauri wrapper that I built early on because I wanted the desktop convenience (autostart, separate app, etc) that Firefox+PWA couldn't offer, I use the desktop version as my daily Chatto driver. The mobile build is more of a proof of concept for now. Check it out: https://github.com/teal-bauer/chatto-tauri
It's a first-class PWA currently but no native desktop apps yet.
1 reply →
Can it be installed on Cloudflare or Vercel or something else that is easy/cheap/free?
I run something similar with livekit, all on hetzner. its exceedingly affordable for a bunch of people at once to use it.
I’ve known Hendrik for years, and he is one of the most talented developers I’ve ever met. I’m confident this project will become successful very quickly. Beyond the project itself, what fascinates me most is how he single-handedly developed it by leveraging agentic coding.
I second that. I've personally known him for almost 30 years by now, and he's still one of the smartest, most experienced, and most curious devs I've ever met. All around good guy, would work with him again any day of the week.
I've never met Hendrik but the code looks cool :)
Has he made anything else interesting?
20 or so years ago him and czottmann wrote a nice little wiki software that I used, WakkaWiki. Following him/them and their work ever since. Crazy.
[flagged]
These kind of comments just spike the conversation and leave no room for nuanced opinions or discussion.
A lot of garbage is also being produced and a lot of people have to clean it up, right? Hopefully that’s not too controversial of statement?
don't forget "where are all these beautiful apps that supposedly everybody vibe codes now?"
1 reply →
Are you sure you read that here? I came back yesterday after a hiatus and I’ve been dismayed how many posts are just “yeah, I just run Claude all day” without a hint of embarrassment or shame.
11 replies →
It took him a year to build. So yeah, obviously if someone spends a year working on something with an LLM they can produce a good product.
The slop we're seeing from people using AI is because they pump it out in a month or two and then call it a day.
1 reply →
> But I read here every day that agents can't code. And that "real developers" spend more time fixing AI bugs than producing code, and it slows them down.
This is all correct, though. I haven't tried this, but I can guarantee it's a buggy, incoherent mess, same as every other vibe coded app I've ever tried, no exceptions.
3 replies →
Alright, I was vaguely interested for a little, but you convinced me to avoid it.
Well that’s just snarky and not very nice. The guy has 30 years experience as a dev according to a sibling comment so it’s not as though it’s some vibe coded junk. Why do you believe a good dev can’t use AI to assist in writing great code?
14 replies →
Spoilsport
A thought if you want to sell to companies, "with per-user keys that get shredded when a user decides to delete their account."
You'll need soft delete, work messages belong to the employer and not the user.
I would guess that in these cases you would just not allow users to self-delete their accounts? But for most users and providers of Chatto I think automatic right-to-deletion compliance sounds nice :)
Employers may not be the target audience.
I wouldn't know. With the post mentioning teams and slack I just got the feeling it was on the cards, so I thought it was worth posting that in case it hadn't occurred to them.
1 reply →
Couldn't help but smile because "chato" in portuguese means "boring", and this seems very easy to set up and use.
Here's to more boring software! :)
chudo missed opportunity
Can also mean annoying. As a general recommnedation, before naming a project or company something, always search whether it means something bad in the top 10 most spoken languages.
For portuguese/spanish, there is always a high chance of being a slang that is NSFW
There's a Hyundai car whose name literally means "pussy" in Portuguese and Galician x) It's marketed as something else in those territories.
3 replies →
Also annoyed/angry/cross.
This is awesome! Some feedback - I can't tell anywhere from the website if there is mobile support (which is a must-have if I want to consider moving my company or friends over to this)
Looks like it's planned.
https://github.com/orgs/chattocorp/projects/1?pane=issue&ite...
Note that to send notifications to an iOS app, the app publisher has to send them. This means that they need to run an event forwarding proxy service (this is how Mattermost and Element/Matrix and presumably some/all of the ActivityPub clients do it), or selfhosting your server means you must also selfpublish your client app via the App Store and Apple’s developer program tax.
For Mastodon, each mobile app developer needs to have a "webpush relay server" to receive Mastodon's webpush notifications and transmit them to the platform's push service. For Android, Mastodon recently added support for the latest webpush standard which allows the app developer to directly register Google's webpush endpoint with Mastodon, removing the need for a relay. In all cases, push notifications are encrypted by the Mastodon server, and decrypted by the Mastodon client, so any intermediaries (relay server, push notification service) can not read their content.
Safari finally supports Web Push so maybe you can bypass all that nonsense.
I will keep an eye on this! We’re currently using Mattermost, but their pricing is a bit all over the place and targeted for enterprise so we’re still running on the, now gimped, open source version.
Additionally we’ve been missing video calls, so that’s nice that Chatto has it :)
I'd like to know compared to Mattermost, what are the advantages and disadvantages of Chatter?
btw, I'm very happy to see that the Chatter backend is implemented in Go. Go is very good at these.
What's the rationale for the dual licensing? It looks like the Go backend is AGPL but the TypeScript frontend is Apache 2.0.
Why not keep it all AGPL?
Backend under AGPL prevents someone hosting it as a service. AGPL specifies that hosting _is_ distribution. Therefore, anyone hosting it must do so with public code. This provides a soft form of exclusivity to run their own Cloud.
A frontend, permitting customizability, white-labeling, and so on, makes more sense to be more permissive.
Grafana is a solid example to illustrate why.
Moved from Apache to AGPLv3 in 2021 specifically so cloud providers couldn't host modified versions without contributing back, while keeping plugins Apache-licensed.
Prohibiting a user of your software from modifying it and using it to run their business goes against both freedoms 0 and 1.
This “users are obligated ‘give back’ the moment they make money with the gift they were given” is nonsense and anyone paying attention knows it. A business making money using free software doesn’t take anything away from the releasing organization.
The anti-commerce bent of a subset of the free software zealots hate business so much that they tried to smuggle a EULA into the free software community. It’s nonsensical. Furthermore, the AGPL has never once been tested in court.
12 replies →
AGPL stops others from running a competing cloud service using the Go backend. It does nothing for the frontend except scare off enterprise users.
You can totally run AGPL code as a service. You can run it as a service unmodified or if you modify it, you just need to make the source available.
What would be really awesome is some sort of feature where, once self hosted, I can generate a package or link that will download + install + pre-configure the login. Basically a bespoke installer/setup script. that can be linked to a particular person. The goal being to make onboarding as frictionless as possible. This could have some security implications maybe (the link is shared by mistake), but for a small self-hosted instance, that seems like something that could be mitigated fairly easily. Maybe only works with local accounts or something.
That would really make it easy to send a friend a link, "hey come chat with me", without having to worry about a response such as, "I'm already on discord, I don't want to set up all that stuff".
What would you expect that to do beyond a "here's a link to the instance, sign up there"? You can combine it with Discord-like roles and gate channel visibility and rights on that, so even if someone else would sign up you just wouldn't give them the "in-group" role for example. Are you thinking of an "invitation" type link with a one time token or something?
I’m wondering too, the closest thing I can think of is maybe Zoom? It goes from link to opening your meeting *relatively* smoothly when the client needs to be installed.
Very good. I was wondering about this a while ago - lots of companies want something to aggregate notifications and perform simple bot actions, but don't necessarily want to lock into a chat provider. Having this as the frontend to a load of integrations (or even just internal chat) would be really interesting.
Very cool. I don't usually get excited for new chat apps, but I like the idea of having one frontend for multiple servers instead of pushing hard on p2p or federation.
I do also still like irc, but haven't used it much in recent years because most of the people I talk to are using discord now.
One front-end for multiple servers is how you end up reimplementing XMPP (bar federation) before you know it: servers are not guaranteed to run identical/compatible versions -> you bake versioning at capability level in the protocol -> you make clients and servers degrade predictably when that happens -> you write a standard to document it formally -> you invite around the table those authors of alternative client and server implementers and boom, you've got the X in XMPP, and the XEP standardisation process and the XSF to support it.
I bet this does a kind of "iframe" thing, where you're really just pulling in full web UIs, and they can be whatever they want. That's the impression I get from the comment about phone clients wrapping the web UI because there's no guarantee about what they will actually be.
So the UI is a Discord clone, I think that's worth mentioning. It's not a bad thing, quite the opposite: Discord nailed it in that regard.
Now are the chats end-to-end-encrypted? It only says calls are, so that remains ambiguous. I believe that would be a major sell for current Discord users.
Overall looks like a great app to try out.
What's the point of end-to-end encryption on a group chat where the entire group can decrypt it?
Discord users want end-to-end encryption to prevent Discord employees and outsiders from reading their chats. This doesn't have that risk, because the in-group runs the server.
Would love to see mobile support, and a way to import/migrate from Slack. If migration is painless, our org would adopt this.
I joined the chat as well, but if Hendrik is here - we'd love to have you on the channel (https://youtube.com/@WithMultiplesAI). This will make for one hell of an episode, I think.
You asked a number of good questions there on the live call just now! I agree, you having Hendrik on would probably make for quite an ep.
Yep, would be very cool and it was a great live call
So encrypted at rest but no E2EE, did I read that right?
Seems like it, but since you can self host it, you still get a lot more control over the data than using one of the aforementioned hosted offerings
Yeah, there are definitely valid contexts for hosting chat like this. E2EE has the benefit of not needing to trust the host, which I personally like but I can see this being fine or even wanted for lots of cases.
Why are the allusions to discord and slack so coy on the Web page?
You want the actual names so that you rank when those names are searched, no?
Whimsy? ^^
Congratulations. This is really awesome to see. Thank you! :D
I think this is the first sveltte project ive seen, very cool https://app.principal-ade.com/chattocorp/chatto
you would love https://www.windy.com
lol you are correct!
Looks really nice, thank you for open-sourcing. I keep a directory of opensource alternatives. Would you say this is a Discord or Slack alternative?
I've been testing/using chatto since early on and I'd say it's both and neither. It feels much nicer to use than Slack, but as of now it's missing some of the more "Enterprise" features. I would probably say it's a Slack-like Discord? But from the architecture it would be capable of playing as a full Slack replacement.
I also maintain a Chatto bot framework and a Tauri client, need to update those now :)
What makes it nicer to use than Slack?
1 reply →
> You’re probably familiar with the one that rhymes with “knack”, or the one that rhymes with “beams”, or the one that rhymes with “this gourd”.
> Chatto is just like those.
from TFA. Seems yes.
Saw so many open source chats happen behind (or "in") Discord. Will this allow community members to drop in and chat and Google the contents?
Would English speakers pronounce this as "Chat-to"? To a Japanese person, this clearly sounds like "Cha-tto," which simply means "chat."
as an english speaker, i would pronounce it "chat-oh", but i'm open to correction
At least here in colloquial "rolo" spanish people use to call "chato" (which would sound the same as "chatto") someone with a pug, snub nose
I don't know what the "official" pronunciation is, but I would say "Chat-o" is probably right.
Linguist here. It would likely be pronounced with a flap/tap, i.e., it would rhyme with shadow
How does it compare to Mattermost?
Looks great - is there any info on what server resources are actually required per feature or user count?
So, an open-source Discord clone?
I mean, people have been asking for alternatives lately, so it's not like there isn't a market for it. There are even entire communities[0] for discovering them.
But considering there are already several dozen alternatives: what makes this one special? What sets it apart from Gamevox, Cinny, Element, Schildi, Echon, Neremity, Fluxer, Faction, Stoat, Guilded, Root, Loqa, Venta, Osmium, and so on and so on? Heck, a handful of vibecoded new ones spring up every week!
If you're going to release Yet Another Clone, you have to make it immediately obvious 1) how it compares feature-wise, and 2) what unique thing makes yours special enough to overcome the extremely powerful network effects of the incumbents. Reading this page Chatto looks neat I guess, but there's nothing convincing me to invest several hours into discovering whether this is truly a Discord killer, or Yet Another Clone. Same with the official website and docs: some techy mumbo-jumbo, but that's about it.
No matter how impressive it is technically and no matter how free and open it may be, without significantly better marketing material it'll have a chance at becoming relevant.
[0]: https://www.reddit.com/r/DiscordAlternatives/
Looks great! How does it compare to Zulip? we self host zulip and are quite happy with it
This is cool. Will try out soon.
Love that the way you said the rhymes part 'rhymes with “knack”, or the one that rhymes with “beams”, or the one that rhymes with “this gourd”'.
How does it differ to Zulip?
Or matrix
I've been trying to use Matrix for years and I still hate it at least half the time, it feels clunky, slow, cumbersome to use, the clients are hit and miss quality, and people (including myself) keep losing keys or identities for random silly reasons.
Compared to that, Chatto is just easy, nice, and FAST. It's a chat that I actually do like to use - I don't think the landing page is over promising there :)
Super happy to see someone take on slack. We just want a performant chat with simple features.
Slack integrations are overrated. Just give me webhooks.
single executable with its own frontend is the way; I followed the pattern with https://worb.cloud . Nice for users but also extremely easy to have a short debugging feedback loop
Needs drop in voice rooms a la Discord or Slack's Huddle
I’m wondering about privacy tradeoffs. Looks like they’re similar to Discord where the chats won’t show up in web searches and you can’t read anything without joining. But if anyone can join, it’s not like Signal either and end-to-end encryption wouldn’t make sense.
(They do have end-to-end encryption for video.)
I hope they introduce some sort of public read-only view that an admin can enable. Discord has https://www.answeroverflow.com/ and https://www.linen.dev/
Congrats for open sourcing it, looks interesting!
How does this compare to fluxer.gg though?
The part that I really liked about chatto is that it seems to be made very easily to self host which is something that I really appreciate actually.
I have been patiently waiting for fluxer, but honestly I just want to self host and have it available and fluxer has been sitting on that for a while
I'm the developer behind Fluxer – self-hosting is ready to use already [1][2][3], people are using it actively currently, and I'm currently working to make account switching across instances in the desktop app a reality. This, with a big voice update around the corner, will let us move much faster moving forward!
[1]: https://fluxer.app/blog/mobile-clients-and-fluxer-v2
[2]: https://docs.fluxer.app/operator/get-started/
[3]: https://github.com/fluxerapp/fluxer
Ah mobile app is not ready yet. I am looking for some alternative to matrix because running it with bots is a bit convoluted, i.e. you have to have limit of edits of message for model streaming or you will kill entire room. Or I never seen robots in matrix sending encrypted messages. Why bother than? Anyway if mobile will be a thing this seems like perfect thing to have for your family and friends.
I created a Tauri based app but IMO it's not ready for prime time on mobile. On desktop, it's my daily driver for Chatto. If anybody wants to contribute, the foundation (desktop & mobile) is at https://github.com/teal-bauer/chatto-tauri
Interesting but could you put few screenshots there? Of both desktop and mobile? It is really hard to invest time into installing something that you cant see anywhere prior, and it will be really easy to do for someone that is using it daily. Sorry for complaining. Seems like nice project.
1 reply →
Yeah its unfortunate there's an AI app on the apple store with the same name
Amazing. And with SSO out of the box without weird "Oh, SSO is Enterprise only" BS.
Very cool! You should request being added to https://european-alternatives.eu/
How does this compare to [SOME COMPETING THING I WANT TO PROMOTE]?
Does this federate with anything, like Matrix or XMPP? If it is locked into a single software, I fear nobody will ever switch to it (I have too many chat apps already!)
I don't want graphics in my chat. I don't want formatting in my chat. I don't want to see my co-workers pictures in my chat. I don't want this "modern-individual-but-non-the-less-same-y-looking" html and css driven "custom" UI that every of these apps has. I don't want emoji in my chat. I don't want all this other enshitification crap.
Essentially, i just want something like IRC, but without the netsplit and a modern stack. It would be so much nicer for company chat and brighten up my work days.
Seems neat
> "The fastest way to give it a try is through Homebrew"
for the 12 people that own a macbook, perhaps.
Homebrew also runs on Linux, it’s a common way to install minor command line utilities on a immutable/atomic distro
> And you can just self-host it. For free, too! (A weird thing to write, but the OSS chat app space has become very weird in many ways!)
Wait, what? There are open-source chat apps that you have to pay to host yourself? How does that work? Or did I misunderstand?
Many otherwise open-source chat apps are "open-core," they tie certain features to a subscription. Can be things like chat history, voice calls, video calls, but a very popular one is SSO and AD/LDAP integration.
Yeah a lot of them like Mattermost become surprisingly limited unless you pay. It's very annoying.
Mattermost's licensing is a little confusing, but from what I understand, you're only really super-restricted if you use the prebuilt binaries (which have a different license than the source code).
IIRC if you build it yourself it's pretty much all AGPL, with few limitations.
I've been running Mattermost for a couple of years now and I'm content with it. It does feel a little bit clunky sometimes, but it's been stable and performant so I can't really complain. It can also feel a bit much sometimes. A bit too complex. A bit too feature-rich. But if I just ignore most of it, then it's good. I will say that Chatto looks nicer, appears to be simpler to setup and also has simpler licensing. Can it auto-update itself? That's something that's bad with Mattermost.
The fundamental problem with replacing Slack is network effects. Your coworkers and customers already use Slack. It works well enough.
You can choose to switch your company away, maybe, but what do you do when vendors want to connect over Slack?
Imagine if email was owned by a company?
Edit:
W̶e̶ ̶r̶e̶a̶l̶l̶y̶ ̶n̶e̶e̶d̶ ̶a̶n̶ ̶o̶p̶e̶n̶ ̶p̶r̶o̶t̶o̶c̶o̶l̶ ̶t̶o̶ ̶b̶u̶i̶l̶d̶ ̶o̶n̶.̶
We really need an open protocol to win here.
There is an audience for this, and it's me and my friends.
I have a small group of close friends. We are on discord just about every day, but we really don't bother with anyone outside our group, other than the very occasional invitation to another friend/coworker to join for some games.
We don't care about network effect, social media features, engagement, etc. We just want a well made application for private text, voice, and video that we never have to actually think about.
And no, matrix is not that.
But the point here is that you don't want the network effects. You want a chat server for people you know and explicitly invite, for a specific purpose, under your control. Maybe you want the data to never leave your colocated box and your VPN, and your server to have no public presence at all.
There are things that Slack cannot easily offer.
No, you do want the network effects. Nobody wants to install yet another special snowflake chat client for a single community. Unless they are being forced to (like in a work environment) or are getting significant benefits out of joining that community, most people would just prefer not joining at all over installing an additional client.
Discord is winning because it's a dozen different communities in one single convenient client. Want your new chat platform to win? Convince all those communities to switch.
You want the open protocol to have network effects, not a proprietary company's product.
Email worked out pretty well, while IRC failed for reasons that are probably correctable.
2 replies →
Isn't this irc?
Just need a client app to make it look like something else.
Like slack did.
Like XMPP?
Or, perhaps the asynch chat thing is a distraction and we need something asynchronous that's well proven. Like... email?
Slack should never have been a thing IMHO. I remember first using it at a startup I was CTO of at the behest of the CEO ("everyone is using it"), back in around 2013. Instantly hated it. Just wish we could go back to good old email, TBH.
> Or, perhaps the asynch chat thing is a distraction and we need something asynchronous that's well proven. Like... email?
Real-time chat is, in fact, useful, and a separate product from email. The fact that you don't want to use it does not change the fact that others do.
I use Zulip and Signal extensively, and I use email occasionally, and none of them fully replace the use cases of the others.
> We really need an open protocol to build on.
I’d bet making a slack-compatible client or bridge isn’t hard, we all just instinctively know whoever develops it is going to get sued or taken down.
It feels like we quietly gave up on adversarial interoperability awhile ago, and act like we need a whole separate “open walled garden” when what we actually need are legal protections that prevent companies from suing/banning people who call their APIs. Slack, Facebook, etc, are walled gardens only because they can ban/sue people who compete with their client experience.
I figure that will probably never happen in the US (maybe if someone rich starts it), but eventually someone outside of it will make such an adversarial integration and host it from some region that doesn’t care about US laws. Then, when they get away with it, we’ll all praise them as a genius and wonder how Slack could exist at all. The US has many international agreements keeping this illusion alive, but my guess is that even formerly stable markets like Europe could spawn such work if they decide to stop caring about ~1990s-2010s era contempt-of-business-model US laws.
Matrix exists. I wrote this for my own notes: https://docs.zeropolis.net/doku.php/tech:tuwunel
Self hosted voice/video/chatroom server with RBAC, federation capabilities and encryption.
Different topic, who uses federated slack?
I don't think network effects affect the vast majority of Slack usage. Slack and Teams are mostly used as internal company communication and that is dictated from above. If a company wants to switch to Chatto their IT department will just tell all employees to do that, and job done.
Matrix seems like a decent enough open protocol for a Slack replacement, with XMPP/IRC/IRCv3 being more useful for bare-bones chat transport.
This Chatto thing unfortunately uses a Protobuf custom API and is explicitly anti-compatibility with other systems. The lack of interoperability may end up killing it, unless the experience is much better than everything else.
I think time will tell, but one of the main things I like about Chatto is just how fast everything feels, and the protocol design is a good part of that I think. Data on the wire is just very small and optimized (last I checked, I didn't look at the latest protocol iteration yet). It was already very fast with the older GraphQL based API but now it's even quicker. With Slack and Discord, every channel switch and scrolls take visible time.
Oh, and the protobuf based realtime endpoint should make it very easy to build bridges, too.
XMPP exists…
looks super cool.
I’m
[flagged]
> Chatto aims to be the group chat application that you actually enjoy using.
So not like Discord or Slack?
> This is what it looks like:
Discord and Slack?
I mean, OK, it has EU hosting and that is good. But I see nothing obvious here that solves the noise and irritation of Discord and Slack.
most complains i see about the others are performance-related, not looks-related. and chatto is trying to be performant.
It is not looks or performance (I have no idea) I am talking about. It is the shape of the functionality — the intent of it.
All these systems end up with far too much furniture on screen, and this appears no exception.
I will test it, of course. But the promotional material argues against itself.
soooooo campfire then
There's space for more than one self-hosted chat app in the world. Also very ignorant comment towards a project someone probably spend a lot of time on.
They have some `curl | bash` type installation, which doesn't really fit my set-up. They say "email us if you have any questions", so I've emailed several months ago and I'm still waiting for a response.
Off the bat, it seems that campfire doesn't support voice/video calls. So no, not at all
Not knowing what Chatto is, the headline is giving "zendaya is meechee"
> And it’s really good hosting! Chatto Cloud is launching with fully European and European-owned infrastructure, with more regions slated for launch in early 2027
With chat control that may not be so great…
Is e2e encryption supported?
I thought the point of chat control was to give the eu a back door even in e2e?
Chatto aims to be the group chat application that you actually enjoy using. You’re probably familiar with the one that rhymes with “knack”, or the one that rhymes with “beams”, or the one that rhymes with “this gourd”.
Lol I like this