> 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.
Wow, it's using NATS! I used NATS extensively 10+ years ago, and I'm happy to hear it's still around. Our infrastructure had hiccups across our fleet of machines, but one part that always remained up and running without complaining on some dinky machine was NATS. Well, that and Redis. No complaints ever.
NATS and its built-in Jetstream stream persistence engine are a miracle. I love them both so much. And if your app is itself written in Go, you can just embed them for simple deployment scenarios (like Chatto does.)
We are building something B2B expected to have good enough scale ... we had to choose between kafka, nats, redpanda and rabbitMQ .... We went ahead with NATS .... don't know why, but, when we went through all the docs, including setup and operational, NATS just felt right.
Excellent. We already tested at okayish scale of 5 million messages per minute, with each message being less than 1KiB. Do note that NATS can easily handle 100x this scale. It's just what we had tested during initial days.
I have a stupid question - as I understand NATS works very well as a “message” pipe/bus. Anyway to get Redis type cache functionality as well ? Is it something possible ?
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.
There is a difference between vibe coding (asking an agent to generate an app from specifications) and leveraging agents to go faster on your vision. You can still decide to control the technical architecture and decisions and just let agents type on your behalf.
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.
I run Claude all day, and produced some good shit, but I'll admit to being thoroughly embarrassed that I haven't looked at it all, won't make it public, won't put my name on it, won't pick a license. I'm depressed about the whole thing and might take it up with a therapist.
My eyes are still rolling from GP's comment:
> he single-handedly developed it by leveraging agentic coding
Why would I do that? I'm not a domain expert in chat apps, and I've already got my own projects and software to fix. If I'm going to take on the maintenance of some chat app, why wouldn't I just build the whole ass thing myself from the beginning? Or, more prudently, why wouldn't I just skip over this one and find a chat app that's got a track record of continuing support so I don't give myself a headache down the road?
If you can find or build something better, nobody's tryin' to stop you from doin' it. To the contrary, the world could certainly use more decent options in this space. Having choices is a good thing. :)
"why would you need features on the thing on which the vast majority of your company's interactions and unofficial note keeping and knowledge building is happening" is a fun question to ask, when the project in question doesn't have bot actions or webhooks.
I agree with this sentiment so much but before I could figure I turned into it. I'm feeling torn - it's helping me write and ship good code as I couldn't before, but it feels like I don't understand the real price of using it non-stop.
Yes. Every day. Look at the replies for crying out loud. Including yours.
Why should anyone be embarrassed? You should be embarrassed that you think you are morally superior for not using Claude. Let me guess, you don't own a tv either? So cool.
Claude is regularly finding bugs and security issues people like you slop coded into widely used tools.
The big question is: how do we tell the difference?
If 99.9% of LLM-smelling projects is vibecoded garbage, why should anyone assume that your LLM-smelling project is the 0.1%? If I spend all day digging through dogshit to find the one diamond, I'll just end up going home empty-handed smelling of dogshit.
AI tells are a giant red flag indicating to potential users not to waste time on it. Want people to take your new pet project seriously? Don't use AI! And yes, that does include even the genius 100x engineers who can use LLMs responsibly.
Who says this? "Beautiful" vibecoded apps are a dime a dozen. Getting support or continued feature development for those beautiful apps after the developer's AIDHD moves on to their next half-baked idea is usually the differentiator between a good vibecoded app and a bad one.
> 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?
You tell me he has 30 years of experience, then you tell me that he developed the chat app in a way that negates those 30 years of experience.
Like, either the 30 years matter or they don't. If you're using agentic coding, while copying the two most popular chat applications (Discord and Matrix/Element), you'll need 5 years of development experience at most.
The big thing about AI is that it lets you explore a new domain outside your expertise almost effortlessly.
I'm not interested supporting in anyone who is willing to build on stolen property just so that we can accelerate enshittification and damage the environment. When the AI companies pay artists for their training material, stop building gas pipelines directly to data centers, and work on putting UBI in place before they try to replace all white collar labour, it may be worth revisiting.
There's a reason that believing AI is bringing a better world is a more fringe position than believing in telekinesis. The AI companies are strip-mining the commons, and leaving the world worse off for it.
Edit: it's interesting watching the votes on this bounce up and down between the people inside and outside of the pro-ai fringe react.
Are you sure about "rms types" specifically? Stallman is very ineffective in his proselytization, owing to his complete refusal of any kind of compromise or concession to dissenting positions. This stance may keep your soul pure and righteous, but it won't bring you one millimeter closer to your objectives.
You're convincing me to side with this ori_b here.
I knee-jerked downvoted their initial take because it reads as ineffective. boycotts just concentrate the energy of the other side even more. If anything we need more participation across the spectrum to shape what isn't going away.
But reading the discussion, deliberate advocacy and taking a stance counts too. Um yeah, there is a problem with profiting from real-estate-go-up willful-ignorance.
Exactly. As long as they benefit in the short term, who cares about the damage done? Who knows, maybe you'll end up making enough money to avoid any future consequences, too. Good luck with that.
Glad to see people trying to talk sense in this community but the AI chill here is very strong. Reminds me of the proud "we should go back to our military-industrial root".
Also funny how it's always about "the smartest guy I ever met" impliyng other dev aren't that smart. There are easily tens of thousands of devs who are way above anyone's here level but there are coding OS module, GNU tooling or other less shining stuff, or there are not American enough.
It's tiring to see the usual corp slop : github, twitter or blue sky, vibe coding, etc. Then see the complain years latter than the product was "enshitified", all was there from the beginning. Think about the real FOSS software (GNU tooling, ffmpeg, Godot, codeberg/forgejo) to see long term software than work and carry all this money-makimg mess.
As for chatto the dependency mountain is a red flag to me, this is asking for problem in my opinion, were talking primarily about sending text here.
I'm not aware of any advanced models with full training data available, let alone available with paid licenses for the training data.
The process of training and using them is also not likely to be any better than commercial models. 23% of Ireland's power is going to data centers, spreading that among less efficient hardware in less efficient setups is unlikely to be better, unless the models are so bad nobody uses them.
And I'm also not aware of anyone working on these models trying to reduce the social damage they are going to do.
> trying to reduce the social damage they are going to do.
I'm worried about that in particular because when I started using AI I often felt I wanted to say something nice to it, like just "thanks" after I got someting working with its help. But then I started thinking I'm crazy, that's a waste of typing, what does it matter if I tell AI "thanks" or not.
So I don't thank AI any more, do you?
But that means we get used to this style of conversation and soon enough we don't tell humans thanks either. We dont' put in the energy to lubricate our social interactions. I'm worried that interacting with AI will make us all rude.
Also worth looking at EleutherAI, LLM360, SmolLM, Apertus. Apterus even respects opt-out notices in their collection of the dataset they distribute. KL3M from Kelvin Legal is even trained on a 100% copyright-free legal/governmental corpus.
>23% of Ireland's power is going to data centers
This isn't even a rounding error in terms of global energy usage. Besides, renewable energy is cheaper than non-renewable energy now. Energy demand itself directly drives the deployment of renewable energy. Needing more electricity in a capitalist country literally causes the energy mix to become more green over time.
>And I'm also not aware of anyone working on these models trying to reduce the social damage they are going to do.
Is it fair to account for the social damage without accounting for the social good, like the unprecedented democratization not just of mere information, but knowledge and understanding itself, around the world? Think about how many deaths will be avoided, how many billions or trillions of years of human life will be gained over time, all of the people that gain access to a personalized, individually tailored tutor for any subject on earth, all of the medical and legal advances, etc.
Is this a joke of just blatant publicity for this Billionaire "philanthropist"? This olmo uses random data of totally infringing license database such a StackEdu (https://huggingface.co/datasets/HuggingFaceTB/stack-edu).
I took this first dataset from what olmo claim to use and check a random used data -> https://github.com/rodriguescarina/URI . Boom MIT licensed (where is the credit?), 0 opt-in for AI training as far as I see.
Across all cases, servers alone accounted for an estimated 7% of commercial sector electricity consumption in 2025. Data center server electricity use grows to 22%–33% of commercial building electricity use by 2050 across our cases.
Distributing that outside of special purpose, optimized data centers isn't going to bring that number down.
> Apterus even respects opt-out notices in their collection of the dataset they distribute.
> anyone who is willing to build on stolen property just so that we can accelerate enshittification and damage the environment
Others have made solid arguments(Stackoverflow, open weight models, and fully open source models) - but I encourage you to study the ecosystem post War II and the 1970's Silicon Valley, especially how the semiconductor companies "innovated".
The tiny little MOSFETs you're employing to read this are all built on stolen IP.
As someone famous said, good artists copy; great artists steal.
> The tiny little MOSFETs you're employing to read this are all built on stolen IP.
The alternative to an LLM typing code is a human typing the code. What is the alternative to microchips?
> As someone famous said, good artists copy; great artists steal.
And people who could not be further from artists, or even art enjoyers, think stealing makes them artists, too. Because they're that far removed from art, or any grace, really.
Which doesn't go against OP or the project, which I find delightful. Although I generally share many reservations of "AI critics", I'm also a starved: if it's snappier and uses less resources than something humans coded, come right in! At least if it's a neat thing like this seems to be, and not some sprawling trojan horse with code that "works" but looks terrible... machine optimized stuff that is opaque to and not made for humans need not apply.
I'd bet 99% of overall token usage has nothing lasting to show for it, and of the 1% that actually compound into anything 99% are nothing like this. So just like a broken clock can be right twice a day, a super correct soldier of Butler can hold fire twice a day, no?
There are different ways to answer this. One person gave a literal answer - Vacuum Tubes. My, alternate answer is, humans. Computers are machines that automate human processes. If we didn't have a digital domain, we would just be doing what we were doing before it, printing and writing.
> I'd bet 99% of overall token usage has nothing lasting to show for it, and of the 1% that actually compound into anything 99% are nothing like this
What you're betting with?
LLMs have changed to game on velocity of knowledge work. The future has changed and "nothing lasting to show for it" is a very limited take on the matter.
The idea that "the future is changed now, so you can't change it again" is the language of abuse, not the language of wisdom. We'll just change it again by draconically punishing thieves. Then we can have the best of both worlds: cool tech, and no Eloi/Morlock bs.
Anyway, I simply meant that most vibe coded stuff doesn't seem to get maintained, and that most token usage doesn't produce any artifacts to begin with.
Stealing ideas, intellectual property (IP), etc are happening throughout the age of the human civilization, that does not prevent us as human moving forward.
That's why there's little to no credit given to Muslim scholars (Arabic, Persian, Moorish Spain, etc) by the western scholars, by conveniently dismissing the Muslim golden era as "Dark Ages" but at the same time stealing the knowledge (idea, equations design, tools, etc) for most of the prior inventions by the Muslim scholars, for example the telescope.
Even worse not only the knowledge (ideas, design, equations, tools, etc) in science, engineering and technology were blatantly copied and stolen, no credit is properly given to these Muslim scholars contributions by saying that the Muslim scholars at best were just merely translating the Greek scholars works and ideas [1]. I suspect that Newton also blatantly copied the many great works by al-Haitham (Alhazen) but not giving him proper credits [2].
Firstly, there is a difference between a telescope and the prior advances that led to a telescope being invented. The telescope was not invented by a muslim scholar, hence that being why no one gives credit to one of them for that.
Secondly, to this claim:
> That's why there's little to no credit given to Muslim scholars (Arabic, Persian, Moorish Spain, etc) by the western scholars, by conveniently dismissing the Muslim golden era as "Dark Ages" but at the same time stealing the knowledge (idea, equations design, tools, etc) for most of the prior inventions by the Muslim scholars, for example the telescope.
From the link you provided, in the very first paragraph:
> The works of Alhazen were frequently cited during the Scientific Revolution by Galileo Galilei, René Descartes, Johannes Kepler, and Christiaan Huygens.
Different users (operators of Chatto servers) will have different requirements for this, so it's pretty much "configurable" in the sense that eg. a business that's hosting a Chatto server for their employees can disable shredding account deletion and just deactivate accounts instead, leaving their data intact.
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
Wow! I've tried (and failed) to implement a chat application which parries slack and it sounds like the direction you're going in with Chatto is precisely what I was envisioning.
I'll give Chatto a shot, but one of the things I'd love to have is interop with Slack and Discord. Is that on the roadmap or no? I saw that there's a Slack -> Chatto migration tool, but the unfortunate reality is that Slack is used by customers, so even if we internally use Chatto, compatibility with Slack is a must.
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)
It is indeed planned, but in the meantime it does also have first-class PWA support, so you can easily install the webapp as a mobile app on mobile devices. Works great on Android.
Chatto currently commits to providing a strong PWA experience that also works great on mobile (including full support for voice and video calls, push notifications, the works.)
I am aware though that a lot of people would prefer an app that they can install, so this will be coming at some point -- just not a huge priority at the current point in the project's timeline.
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.
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.
Right, I'm thinking along the same lines as what Zoom offers. Except with the additional feature that the link is custom tailored to a known, pre-configured user. So you also skip the "log in as guest or create an account" step.
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.
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.
You receive permission to use and modify a piece of software under conditions set by the creator. It is a license, not a gift. If you don’t like the conditions, use something else or create your own thing.
I will never understand these complaints. Not only do you want stuff for free, you also want to impose your preferred usage conditions on the creator. Where does this entitlement come from?
You’re confused. The author chooses to gift their software to the world when they choose a free software license.
Presumably people who choose the AGPL choose it because they believe it is a free software license. Either they should use an actual coherent free software license instead of one that is trying (and probably failing) to also be a EULA, or they should stop pretending that they are releasing free software.
> Prohibiting a user of your software from modifying it and using it to run their business goes against both freedoms 0 and 1.
It does not prohibit modifications - it just demands that those who exercise the freedoms share their modifications under the same license, and most businesses balk at that.
> The anti-commerce bent of a subset of the free software zealots hate business so much...
The root of the problem is actually the anti-free-software bent that business zealots have, because they want to be able take code for free and make money off of it without giving any of their changes back under the same terms; open-source contributors are not suckers to be exploited. Things would be so much better if the moochers weren't trying to capture all of the value downstream of other people's work, but just some or even most of it.
I'm not sure what you are complaining about, AGPL is doing nothing against commerce and you are free to fork and sell a service using that fork. Just make sure to provide the code source of your fork to your user so they can also make their own forks, potentially making their own commercial services with them. It might be to most pro commerce licence I know.
That’s simply not true, and you know it. Violating my privacy with a EULA is the issue there. It’s ok to put a EULA on software, but to pretend it’s still free software is the dishonest part.
Please don't take this as a personal dig because it's not meant that way, but this has such berating a girl for not being into you energy. You want something from them, and they just want you to go away, basically. You offer nothing they want, you want what they have.
AGPL gives you the same FSF freedoms as GPL or as any other free license, but it does come with an additional responsibility to the end users, not from the end users. AGPL is not in any way uniquely qualifiable as "a EULA". Every single software license, of course, requires you to agree to the license, hence the name. If you put nothing private in the code, AGPL will not impact your privacy. If anything, AGPL helps assure end users that their privacy is being respected.
GPL and AGPL don't even prohibit for-profit businesses from using software with those licenses, they just say you don't get to pretend it's your own intellectual property and privatize it.
It's not anti-commerce or anti-business to contractually prohibit selfish entities from absconding with public goods for private gain and refusing to contribute any public good back in the process.
Similar idea to public roads - if you want to use public roads that the rest of us enjoy, pay taxes like the rest of us do. Using public roads without paying taxes doesn't make you a savvy businessman, it makes you an amoral freeloader.
If you want an intellectual property moat, fund the labor to build it yourself. The world doesn't owe you a penny.
> Prohibiting a user of your software from modifying it and using it to run their business goes against both freedoms 0 and 1.
Then it's good that it allows both modification and using it to run a business?
> This “users are obligated ‘give back’ the moment they make money with the gift they were given” is nonsense
But they are under no such obligation! They can make all the money they want and give nothing back. They can even modify the software to better serve their business. The only restriction is that if they do so, they have to make their modifications available. Which means they're way ahead of where they were before being given the initial software; why do you feel a software developer who decides to give the world a gift should be restricted in what gift they're giving? "Thanks for the chocolate, but the bar was too small so I didn't have enough left over for my kid to try some. Why do you hate my kid?"
> A business making money using free software doesn’t take anything away from the releasing organization.
First, that is false. They could damage the market for the original software. (And if they don't modify the software, then there's no problem in the first place.)
Second, why are you so hung up on the "making money" part, when that is explicitly allowed by the AGPL? It's just kind of bizarre -- it's a license that says over and over that you can charge for everything related to it, and you're complaining about it being hostile to people who want to charge money for things.
Thinking about it, I'm wondering if this is genuine confusion and you don't know what the AGPL is? If so, maybe start by searching for "charge" in https://www.gnu.org/licenses/agpl-3.0.en.html . It has nothing against "using it to run [a] business". There is no "moment they make money with the gift" that changes anything: you are explicitly allowed to charge for anything you like -- distribution, usage of the service, support, whatever.
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.
Yeah, Chatto should be relatively straight forward to use in "headless mode". I've seen a few users working on integrating it into their own applications as a chat backend.
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 :)
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.
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.
I didn't really check the code, but I'd be interested to know if it uses quic and if the connections are eliminated based on registered encryption keys.
The killer feature of Discord for me is being able to jump between communities without logging in to each of them. Open source alternatives never provide that. Does this one?
Matrix is the obvious exception but the UX has always been terrible for me. I don't need e2ee for group messages and it brings too much complexity with it.
Each Chatto server by design is entirely isolated, including user accounts. But I'm aware that having to email-signup on every server you want to hang out in would eventually be too annoying. I'm exploring some lightweight identity federation ideas that I hope to ship with 0.5 where you can use your Chatto account on one server to log into another server (if it's configured to allow this.)
But tbf, both face the same issue: those communities that you want to switch between need to exist. :/ (But of course not an issue if you're the one creating them and you have users who are down to join them.)
felt the same way so I've built one for myself that I've been using with friends and family - not (yet) open source but self-hostable https://github.com/bogpad/meepachat
I wonder how they'll handle APNS, which will have to happen eventually.
Doing it costs money, and it's not a cost you can simply shift to the end user (because only the original app developer has the required Apple certificates, and you don't want every server owner to sign up for the Apple Developer program)
Yeah, I'm working on a communications platform as a side-project, architecturally providing reliable communications is exceedingly difficult to self-host.
* Mobile calls are another form of push notification, Apple/iOS requires setting up APNS and Google/Android requires FCM, there is no self-hosted option for that at all and, for battery life reasons, no independent replacement is supported. Genuine ownership / independence from the main project requires, iirc, basically compiling from source to register different IDs against APNS/FCM.
* Trying to get into telephony, integrating with SIP is a huge pain. Nobody wants to deal with this.
* Nobody supports high availability for the underlying calls. None of the cloud L7 load balancers support media protocols - you're dropping down to L3 UDP load balancing. All of the available solutions (including LiveKit) depend on stateful services that, at best, place ceilings on call lifetimes (e.g. 5 hours) to allow for graceful draining, but "calls" in Discord-style settings where people connect to a room and stay connected will easily outlast those ceilings. Not supporting high-availability, IMO, is a huge ask for self-hosters - the price isn't in the maintenance window itself, but in deferring updates until the maintenance window, which can leave you vulnerable, particularly if you decide to leave the firewall open to ingress from 0.0.0.0/0 for ease of use. And of course, as a self-hoster, you rarely have a full follow-the-sun ops team, so either you schedule maintenance when everybody else is off (and you should be off too) or when everybody is on (and it's disruptive).
I'm assuming you're talking about Apple Push Notification Service.
Chatto so far commits to a fully fleshed out PWA experience. Push Notifications are delivered through Web Push (and Apple's Declarative Web Push additions). Web Push uses the browser vendors' own push gateways.
There are some missing bits currently in Chatto's multi-server story; when you add another server within the UI, its push notifications won't work because the other server can't make its service worker known to your device. One of the next versions of Chatto will improve this significantly, eg. with Chatto servers being able to act as push relays for others.
Eventually there's going to be mobile apps operated and provided by ChattoCorp, who will also set up and pay for the required push services.
Yes, Chatto's core system does not use e2ee. This is by design; if there ever are e2ee features -- and chances are good they will, in some shape -- the encryption will be layered on top of that (encrypted message payloads and such.)
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 :)
For me, primarily the performance tbh. Chatto just flies and Slack feels incredibly sluggish. And from the "vibes" it just feels better designed, I like the overall user experience, it feels technologically solid but also looks nice and works how I feel it should. Hard to put my finger on it exactly.
In terms of inspiration and also the market that I want to go after with Chatto Cloud, this is definitely aiming to be an alternative to Slack, Teams, Mattermost et al. I've tried to make it friendly and casual enough to _also_ work as a Discord alternative, though.
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 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.
it would be interesting if instead of making migration tools - one shot - you could do a migration then sync.
Easier said than done, but changing peoples chat app from under them in an org is a stressful thought. If they could run side by side in sync until a critical mass has moved over, then sunset the old one, or not.
There are plans for making individual rooms public, allowing unauthenticated users to access them (or allowing crawlers to index the content), but so far those plans do not include any sort of write access.
Chatto does have full SSO support (OIDC and some selected providers like Google, GitHub, and, ironically, Discord, with more coming in the next releases.)
Curious. Most places needing SSO also have legal retention requirements, making E2E a hard nonstarter. And most E2E users wouldn't want to rely on a SSO that could likely revoke their keys. What's your environment?
Still figuring out the numbers, so very hard to answer at the moment. Chatto is quite lightweight though; a fresh instance will run at tens of MB of RAM usage. RAM usage then scales with activity and CCU; on the Chatto HQ server, I'm currently seeing around 10 MB per additional connected user. I want this to be less, there's probably lots of room for optimization.
(You can scale Chatto horizontally across as many processes and servers as you need, so communities with tens of thousands of CCU should be perfectly feasible. But as you can imagine, there's precious little real-world proof for this yet :b)
Chatto going open source means we can finally have an AI that reads our messages and judges us silently, but at least now we can read the source code to confirm it is judging us
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!
Great work! Imo the most promising Discord alternative so far.
But I have a question, and maybe it is answered somewhere and I just couldn't find it, but is there currently a way to move a created community from e.g. the official hosting to self-hosted? I saw the mention about possible federation in the future, which would solve that (kind of), but currently it's not possible, I guess?
Thanks! And you're right, the future federation work is what will make it possible to implement support for transferring communities across instances natively.
I love Fluxer! Hampus is cool and what he's built is super impressive.
I would say the primary difference is that Chatto doesn't squarely aim for being a _Discord_ alternative. There are no plans for providing a Discord-compatible API (which I think Fluxer does.)
The other main difference is that Chatto is designed, on purpose, to serve individual communities from tiny deployments, instead of large mega-instances that power many communities. Chatto deliberately avoids content federation to remain compatible with business use cases, and also to stay simple enough so it can run from a single binary.
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”.
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.
For now it's just a Tauri wrapper, so it looks more or less like the mobile web / PWA except it might be easier to handle notifications and share intents etc. compared to a pure PWA play. Now that the API is settled, it might make sense to go pure native.
The Tauri wrapper was originally just for desktop convenience and the Android target was more of a proof of concept initially.
Sure I understand though, I have honestly no idea what tauri is really. Sure there is a link and it looks like some kind of web framework. Looks nice but it is hard to picture how chat application written with that would look like. I am not trying to force you to do want I want. I just think it is in a good taste to put some screenshots or even a gif. But I understand your reluctance.
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 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 :)
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'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.
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.
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.
Open protocols are great. The software in question is OSS.
But this software is not for expanding the audience, it's for limiting it, and their exposure. Much like Tailscale is not for extending your network with more nodes that can freely join, but for limiting it to a private subset you trust.
This project looks great and I wish them luck. I'm just lamenting the fact that we still haven't solved the really big problem with Slack-like chat apps.
The Tailscale analogy isn't quite right because there are no real network effects involved. Most of Tailscale's utility exists even if no one else uses it.
Slack is only useful if your friends, coworkers, or partners use it. Same with Discord, and even open source alternatives for the most part.
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 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
Yes, at least with the 2.0 version (which is the "really bad one"), on-device scanning would be the big issue. But then it also doesn't matter where you're hosted, unless you only allow users with some custom OS that doesn't support it on your server.
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.
NATS and its built-in Jetstream stream persistence engine are a miracle. I love them both so much. And if your app is itself written in Go, you can just embed them for simple deployment scenarios (like Chatto does.)
Did NATS eventually worked well?
I have a stupid question - as I understand NATS works very well as a “message” pipe/bus. Anyway to get Redis type cache functionality as well ? Is it something possible ?
someone did some benchmarks in 2025:
I have personally not used this though.Chatto so far fully commits to providing a great PWA experience. The screenshot you're seeing is of the PWA.
I'm aware that a lot of people want desktop and mobile apps. These will be coming at some point, at least as wrappers around the PWA.
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?
It's a 20-something day old account.
My eyes are still rolling from GP's comment:
> he single-handedly developed it by leveraging agentic coding
so, unmaintained in a year because the sole developer got bored/didn't make money from it/burned out ?
Great, I'll run my entire company on it!
Why should anyone be embarrassed? You should be embarrassed that you think you are morally superior for not using Claude. Let me guess, you don't own a tv either? So cool.
Claude is regularly finding bugs and security issues people like you slop coded into widely used tools.
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.
If 99.9% of LLM-smelling projects is vibecoded garbage, why should anyone assume that your LLM-smelling project is the 0.1%? If I spend all day digging through dogshit to find the one diamond, I'll just end up going home empty-handed smelling of dogshit.
AI tells are a giant red flag indicating to potential users not to waste time on it. Want people to take your new pet project seriously? Don't use AI! And yes, that does include even the genius 100x engineers who can use LLMs responsibly.
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.
Like, either the 30 years matter or they don't. If you're using agentic coding, while copying the two most popular chat applications (Discord and Matrix/Element), you'll need 5 years of development experience at most.
The big thing about AI is that it lets you explore a new domain outside your expertise almost effortlessly.
There's a reason that believing AI is bringing a better world is a more fringe position than believing in telekinesis. The AI companies are strip-mining the commons, and leaving the world worse off for it.
Edit: it's interesting watching the votes on this bounce up and down between the people inside and outside of the pro-ai fringe react.
I'm no fan of AI companies, but I fail to see how people using it to build open-source software is a bad thing.
I knee-jerked downvoted their initial take because it reads as ineffective. boycotts just concentrate the energy of the other side even more. If anything we need more participation across the spectrum to shape what isn't going away.
But reading the discussion, deliberate advocacy and taking a stance counts too. Um yeah, there is a problem with profiting from real-estate-go-up willful-ignorance.
Also funny how it's always about "the smartest guy I ever met" impliyng other dev aren't that smart. There are easily tens of thousands of devs who are way above anyone's here level but there are coding OS module, GNU tooling or other less shining stuff, or there are not American enough.
It's tiring to see the usual corp slop : github, twitter or blue sky, vibe coding, etc. Then see the complain years latter than the product was "enshitified", all was there from the beginning. Think about the real FOSS software (GNU tooling, ffmpeg, Godot, codeberg/forgejo) to see long term software than work and carry all this money-makimg mess.
As for chatto the dependency mountain is a red flag to me, this is asking for problem in my opinion, were talking primarily about sending text here.
The process of training and using them is also not likely to be any better than commercial models. 23% of Ireland's power is going to data centers, spreading that among less efficient hardware in less efficient setups is unlikely to be better, unless the models are so bad nobody uses them.
And I'm also not aware of anyone working on these models trying to reduce the social damage they are going to do.
I'm worried about that in particular because when I started using AI I often felt I wanted to say something nice to it, like just "thanks" after I got someting working with its help. But then I started thinking I'm crazy, that's a waste of typing, what does it matter if I tell AI "thanks" or not.
So I don't thank AI any more, do you?
But that means we get used to this style of conversation and soon enough we don't tell humans thanks either. We dont' put in the energy to lubricate our social interactions. I'm worried that interacting with AI will make us all rude.
Check out the OLMo family from the Allen Institute for AI: https://allenai.org/blog/olmo3
Also worth looking at EleutherAI, LLM360, SmolLM, Apertus. Apterus even respects opt-out notices in their collection of the dataset they distribute. KL3M from Kelvin Legal is even trained on a 100% copyright-free legal/governmental corpus.
>23% of Ireland's power is going to data centers
This isn't even a rounding error in terms of global energy usage. Besides, renewable energy is cheaper than non-renewable energy now. Energy demand itself directly drives the deployment of renewable energy. Needing more electricity in a capitalist country literally causes the energy mix to become more green over time.
>And I'm also not aware of anyone working on these models trying to reduce the social damage they are going to do.
Is it fair to account for the social damage without accounting for the social good, like the unprecedented democratization not just of mere information, but knowledge and understanding itself, around the world? Think about how many deaths will be avoided, how many billions or trillions of years of human life will be gained over time, all of the people that gain access to a personalized, individually tailored tutor for any subject on earth, all of the medical and legal advances, etc.
Perhaps true, but meaningless except as a vanity metric if fossil fuel usage rises as well.
Is this a joke of just blatant publicity for this Billionaire "philanthropist"? This olmo uses random data of totally infringing license database such a StackEdu (https://huggingface.co/datasets/HuggingFaceTB/stack-edu).
I took this first dataset from what olmo claim to use and check a random used data -> https://github.com/rodriguescarina/URI . Boom MIT licensed (where is the credit?), 0 opt-in for AI training as far as I see.
https://www.eia.gov/todayinenergy/detail.php?id=67704
Across all cases, servers alone accounted for an estimated 7% of commercial sector electricity consumption in 2025. Data center server electricity use grows to 22%–33% of commercial building electricity use by 2050 across our cases.
Distributing that outside of special purpose, optimized data centers isn't going to bring that number down.
> Apterus even respects opt-out notices in their collection of the dataset they distribute.
Yeah. Uh. That's the bare minimum.
Others have made solid arguments(Stackoverflow, open weight models, and fully open source models) - but I encourage you to study the ecosystem post War II and the 1970's Silicon Valley, especially how the semiconductor companies "innovated".
The tiny little MOSFETs you're employing to read this are all built on stolen IP.
As someone famous said, good artists copy; great artists steal.
The alternative to an LLM typing code is a human typing the code. What is the alternative to microchips?
> As someone famous said, good artists copy; great artists steal.
And people who could not be further from artists, or even art enjoyers, think stealing makes them artists, too. Because they're that far removed from art, or any grace, really.
Which doesn't go against OP or the project, which I find delightful. Although I generally share many reservations of "AI critics", I'm also a starved: if it's snappier and uses less resources than something humans coded, come right in! At least if it's a neat thing like this seems to be, and not some sprawling trojan horse with code that "works" but looks terrible... machine optimized stuff that is opaque to and not made for humans need not apply.
I'd bet 99% of overall token usage has nothing lasting to show for it, and of the 1% that actually compound into anything 99% are nothing like this. So just like a broken clock can be right twice a day, a super correct soldier of Butler can hold fire twice a day, no?
There are different ways to answer this. One person gave a literal answer - Vacuum Tubes. My, alternate answer is, humans. Computers are machines that automate human processes. If we didn't have a digital domain, we would just be doing what we were doing before it, printing and writing.
> I'd bet 99% of overall token usage has nothing lasting to show for it, and of the 1% that actually compound into anything 99% are nothing like this
What you're betting with?
LLMs have changed to game on velocity of knowledge work. The future has changed and "nothing lasting to show for it" is a very limited take on the matter.
LLMs have democratized knowledge.
The idea that "the future is changed now, so you can't change it again" is the language of abuse, not the language of wisdom. We'll just change it again by draconically punishing thieves. Then we can have the best of both worlds: cool tech, and no Eloi/Morlock bs.
Anyway, I simply meant that most vibe coded stuff doesn't seem to get maintained, and that most token usage doesn't produce any artifacts to begin with.
That's why there's little to no credit given to Muslim scholars (Arabic, Persian, Moorish Spain, etc) by the western scholars, by conveniently dismissing the Muslim golden era as "Dark Ages" but at the same time stealing the knowledge (idea, equations design, tools, etc) for most of the prior inventions by the Muslim scholars, for example the telescope.
Even worse not only the knowledge (ideas, design, equations, tools, etc) in science, engineering and technology were blatantly copied and stolen, no credit is properly given to these Muslim scholars contributions by saying that the Muslim scholars at best were just merely translating the Greek scholars works and ideas [1]. I suspect that Newton also blatantly copied the many great works by al-Haitham (Alhazen) but not giving him proper credits [2].
C'est la vie, and life goes on.
[1] Islamic Astronomy and Copernicus:
https://www.tuba.gov.tr/files/yayinlar/bilim-ve-dusun/TUBA-9...
[2] Ibn al-Haytham (Alhazen):
https://en.wikipedia.org/wiki/Ibn_al-Haytham
Secondly, to this claim:
> That's why there's little to no credit given to Muslim scholars (Arabic, Persian, Moorish Spain, etc) by the western scholars, by conveniently dismissing the Muslim golden era as "Dark Ages" but at the same time stealing the knowledge (idea, equations design, tools, etc) for most of the prior inventions by the Muslim scholars, for example the telescope.
From the link you provided, in the very first paragraph:
> The works of Alhazen were frequently cited during the Scientific Revolution by Galileo Galilei, René Descartes, Johannes Kepler, and Christiaan Huygens.
No credit or frequent credit - which is it?
>>there's little to no credit given to Muslim scholars
You'll need soft delete, work messages belong to the employer and not the user.
For some you need legal holds on employee messages and in other cases you will want to un-delete messages for investigations etc.
For just random online communities, which is the niche discord is in, I agree it does sound nice.
Sure, the docs tell you exactly what to do to start a server, but not how to sign in to it. Or how to sign up (email is disabled).
There's an `operator` command which is supposed to let you create users, but it can't find the operator API.
You were that close to a perfect onboarding experience...
Here's to more boring software! :)
For portuguese/spanish, there is always a high chance of being a slang that is NSFW
https://en.wikipedia.org/wiki/Hyundai_Kona
I'll give Chatto a shot, but one of the things I'd love to have is interop with Slack and Discord. Is that on the roadmap or no? I saw that there's a Slack -> Chatto migration tool, but the unfortunate reality is that Slack is used by customers, so even if we internally use Chatto, compatibility with Slack is a must.
Why did it fail?
https://github.com/orgs/chattocorp/projects/1?pane=issue&ite...
I am aware though that a lot of people would prefer an app that they can install, so this will be coming at some point -- just not a huge priority at the current point in the project's timeline.
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".
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.
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.
Why not keep it all AGPL?
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.
I will never understand these complaints. Not only do you want stuff for free, you also want to impose your preferred usage conditions on the creator. Where does this entitlement come from?
Presumably people who choose the AGPL choose it because they believe it is a free software license. Either they should use an actual coherent free software license instead of one that is trying (and probably failing) to also be a EULA, or they should stop pretending that they are releasing free software.
It does not prohibit modifications - it just demands that those who exercise the freedoms share their modifications under the same license, and most businesses balk at that.
> The anti-commerce bent of a subset of the free software zealots hate business so much...
The root of the problem is actually the anti-free-software bent that business zealots have, because they want to be able take code for free and make money off of it without giving any of their changes back under the same terms; open-source contributors are not suckers to be exploited. Things would be so much better if the moochers weren't trying to capture all of the value downstream of other people's work, but just some or even most of it.
The trigger happens when someone interacts with your code over a network, such as in the context of a SaaS product.
The line is when you try to profit off of someone else's work that it becomes "not free".
Also, not free simply means it needs to be in public.
This is so that any additive features that you construct can be taken back by the original maintainers. Thus, you have no competitive advantage.
If you wanted to, through marketing or similar, compete with them, you are more than welcome, but it would be with feature parity.
I'm not so sure this very fair compromise warrants your rhetoric.
I don't think it does that, it prohibits them from modifying it and then using that mod to fork users away from the original software, aka https://en.wikipedia.org/wiki/Embrace,_extend,_and_extinguis...
It's not anti-commerce or anti-business to contractually prohibit selfish entities from absconding with public goods for private gain and refusing to contribute any public good back in the process.
Similar idea to public roads - if you want to use public roads that the rest of us enjoy, pay taxes like the rest of us do. Using public roads without paying taxes doesn't make you a savvy businessman, it makes you an amoral freeloader.
If you want an intellectual property moat, fund the labor to build it yourself. The world doesn't owe you a penny.
Then it's good that it allows both modification and using it to run a business?
> This “users are obligated ‘give back’ the moment they make money with the gift they were given” is nonsense
But they are under no such obligation! They can make all the money they want and give nothing back. They can even modify the software to better serve their business. The only restriction is that if they do so, they have to make their modifications available. Which means they're way ahead of where they were before being given the initial software; why do you feel a software developer who decides to give the world a gift should be restricted in what gift they're giving? "Thanks for the chocolate, but the bar was too small so I didn't have enough left over for my kid to try some. Why do you hate my kid?"
> A business making money using free software doesn’t take anything away from the releasing organization.
First, that is false. They could damage the market for the original software. (And if they don't modify the software, then there's no problem in the first place.)
Second, why are you so hung up on the "making money" part, when that is explicitly allowed by the AGPL? It's just kind of bizarre -- it's a license that says over and over that you can charge for everything related to it, and you're complaining about it being hostile to people who want to charge money for things.
Thinking about it, I'm wondering if this is genuine confusion and you don't know what the AGPL is? If so, maybe start by searching for "charge" in https://www.gnu.org/licenses/agpl-3.0.en.html . It has nothing against "using it to run [a] business". There is no "moment they make money with the gift" that changes anything: you are explicitly allowed to charge for anything you like -- distribution, usage of the service, support, whatever.
Additionally we’ve been missing video calls, so that’s nice that Chatto has it :)
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.
btw, I'm very happy to see that the Chatter backend is implemented in Go. Go is very good at these.
this way it might be a bit easier to self host
Matrix is the obvious exception but the UX has always been terrible for me. I don't need e2ee for group messages and it brings too much complexity with it.
Another alternative that does have it would be https://fluxer.app.
But tbf, both face the same issue: those communities that you want to switch between need to exist. :/ (But of course not an issue if you're the one creating them and you have users who are down to join them.)
Doing it costs money, and it's not a cost you can simply shift to the end user (because only the original app developer has the required Apple certificates, and you don't want every server owner to sign up for the Apple Developer program)
* Mobile calls are another form of push notification, Apple/iOS requires setting up APNS and Google/Android requires FCM, there is no self-hosted option for that at all and, for battery life reasons, no independent replacement is supported. Genuine ownership / independence from the main project requires, iirc, basically compiling from source to register different IDs against APNS/FCM.
* Trying to get into telephony, integrating with SIP is a huge pain. Nobody wants to deal with this.
* Nobody supports high availability for the underlying calls. None of the cloud L7 load balancers support media protocols - you're dropping down to L3 UDP load balancing. All of the available solutions (including LiveKit) depend on stateful services that, at best, place ceilings on call lifetimes (e.g. 5 hours) to allow for graceful draining, but "calls" in Discord-style settings where people connect to a room and stay connected will easily outlast those ceilings. Not supporting high-availability, IMO, is a huge ask for self-hosters - the price isn't in the maintenance window itself, but in deferring updates until the maintenance window, which can leave you vulnerable, particularly if you decide to leave the firewall open to ingress from 0.0.0.0/0 for ease of use. And of course, as a self-hoster, you rarely have a full follow-the-sun ops team, so either you schedule maintenance when everybody else is off (and you should be off too) or when everybody is on (and it's disruptive).
Chatto so far commits to a fully fleshed out PWA experience. Push Notifications are delivered through Web Push (and Apple's Declarative Web Push additions). Web Push uses the browser vendors' own push gateways.
There are some missing bits currently in Chatto's multi-server story; when you add another server within the UI, its push notifications won't work because the other server can't make its service worker known to your device. One of the next versions of Chatto will improve this significantly, eg. with Chatto servers being able to act as push relays for others.
Eventually there's going to be mobile apps operated and provided by ChattoCorp, who will also set up and pay for the required push services.
I tried the HQ community, the UI is indeed very snappy!
anyone tried to join lke 50+ communities with heavy updates?
Looking at adding it to the malmo.network store for self-hosters
You want the actual names so that you rank when those names are searched, no?
I also maintain a Chatto bot framework and a Tauri client, need to update those now :)
> Chatto is just like those.
from TFA. Seems yes.
- what kind of system design components are needed
- how is networking handled at scale? do you start the project thinking about 100 users or 10000 users or more?
- how are the components derived UMLwise
- is there a website you are aware of that does the requirements breakdown of projects like these?
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/
Easier said than done, but changing peoples chat app from under them in an org is a stressful thought. If they could run side by side in sync until a critical mass has moved over, then sunset the old one, or not.
Slack integrations are overrated. Just give me webhooks.
(You can scale Chatto horizontally across as many processes and servers as you need, so communities with tens of thousands of CCU should be perfectly feasible. But as you can imagine, there's precious little real-world proof for this yet :b)
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”'.
(They do have end-to-end encryption for video.)
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.
[1]: https://fluxer.app/blog/mobile-clients-and-fluxer-v2
[2]: https://docs.fluxer.app/operator/get-started/
[3]: https://github.com/fluxerapp/fluxer
But I have a question, and maybe it is answered somewhere and I just couldn't find it, but is there currently a way to move a created community from e.g. the official hosting to self-hosted? I saw the mention about possible federation in the future, which would solve that (kind of), but currently it's not possible, I guess?
I would say the primary difference is that Chatto doesn't squarely aim for being a _Discord_ alternative. There are no plans for providing a Discord-compatible API (which I think Fluxer does.)
The other main difference is that Chatto is designed, on purpose, to serve individual communities from tiny deployments, instead of large mega-instances that power many communities. Chatto deliberately avoids content federation to remain compatible with business use cases, and also to stay simple enough so it can run from a single binary.
Lol I like this
The Tauri wrapper was originally just for desktop convenience and the Android target was more of a proof of concept initially.
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.
Wait, what? There are open-source chat apps that you have to pay to host yourself? How does that work? Or did I misunderstand?
IIRC if you build it yourself it's pretty much all AGPL, with few limitations.
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 :)
for the 12 people that own a macbook, perhaps.
You can download the binaries from the GitHub release pages.
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.
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.
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.
There are things that Slack cannot easily offer.
Email worked out pretty well, while IRC failed for reasons that are probably correctable.
But this software is not for expanding the audience, it's for limiting it, and their exposure. Much like Tailscale is not for extending your network with more nodes that can freely join, but for limiting it to a private subset you trust.
The Tailscale analogy isn't quite right because there are no real network effects involved. Most of Tailscale's utility exists even if no one else uses it.
Slack is only useful if your friends, coworkers, or partners use it. Same with Discord, and even open source alternatives for the most part.
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.
Just need a client app to make it look like something else.
Like slack did.
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.
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.
Self hosted voice/video/chatroom server with RBAC, federation capabilities and encryption.
Different topic, who uses federated slack?
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.
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.
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.
With chat control that may not be so great…