- Chatto समूह·टीम चैट के लिए एक ऐप है, जो Slack·Teams·Discord जैसे ग्रुप चैट ऐप्स जैसा है, लेकिन इसका लक्ष्य ज़्यादा कॉम्पैक्ट और तेज़ उपयोग अनुभव देना है
- सिर्फ़ executable फ़ाइल से सर्वर चलाया जा सकता है और यह अपना frontend भी देता है, इसलिए इसे निजी infrastructure पर अपेक्षाकृत आसानी से deploy किया जा सकता है
- हर सर्वर एक ही community को संभालता है, और सर्वरों के बीच federation या third-party tracking·analytics शामिल नहीं हैं
- व्यक्तिगत और चैट डेटा को प्रति-उपयोगकर्ता keys से स्टोरेज के समय encrypt किया जाता है, और account delete होने पर वह key नष्ट कर दी जाती है
- यह लगभग पिछले 1 साल से विकसित किया गया समूह·टीम चैट application है, और अब आधिकारिक तौर पर open source हो गया है ताकि कोई भी इसे खुद चला सके
self-hosting के लिए जारी Chatto
- Chatto लगभग पिछले 1 साल से विकसित किया गया समूह·टीम चैट application है, और अब आधिकारिक तौर पर open source हो गया है ताकि कोई भी इसे खुद चला सके
- इसे सबसे जल्दी चलाने का तरीका Homebrew का उपयोग करना है
brew install chattocorp/tap/chatto
chatto init
chatto run
- installation प्रक्रिया Getting Started Guide में देखी जा सकती है
- इसका उद्देश्य Slack, Teams, Discord जैसे समूह चैट ऐप्स जैसा उपयोग देना है, लेकिन यह ज़्यादा कॉम्पैक्ट और तेज़ उपयोग अनुभव पर ज़ोर देता है
- इसका वास्तविक कामकाज Chatto HQ Community में देखा जा सकता है
सर्वर संरचना और security model
- सबसे बुनियादी रूप में, एक ही executable फ़ाइल से सर्वर चलाया जा सकता है, और सर्वर अपना frontend भी साथ में उपलब्ध कराता है
- resource उपयोग कम है, और व्यक्तिगत तथा चैट डेटा को प्रति-उपयोगकर्ता keys से स्टोरेज के समय पूरी तरह encrypt किया जाता है
- यदि उपयोगकर्ता account delete करता है, तो उस उपयोगकर्ता की key नष्ट कर दी जाती है
- हर Chatto सर्वर एक single community चलाता है
- सर्वरों के बीच data federation नहीं है
- third-party tracking या analytics भी नहीं हैं
- अगर कोई एक साथ कई सर्वरों पर रहना चाहता है, तो client हर सर्वर से सीधे connect करता है
- कई communities host करने के लिए Chatto process की कई instances चलानी होंगी
- voice·video calls और screen sharing का built-in support है
- calls end-to-end encrypted हैं
- participants की संख्या का विस्तार उपयोगकर्ता के infrastructure की क्षमता तक किया जा सकता है
deployment फ़ाइलें और संचालन सामग्री
Chatto Cloud और paid hosting
- Chatto Cloud जल्द public beta में जाएगा और केवल Chatto सर्वरों की paid hosting प्रदान करेगा
- premium subscription, ads, या अन्य अतिरिक्त तत्व नहीं होंगे; केवल hosting दी जाएगी
- launch के समय का infrastructure Europe और Europe-owned infrastructure से बना होगा
- अधिक regions 2027 की शुरुआत में जारी होने की योजना है
- सभी Chatto Cloud सर्वर auto-scaling, हर रात full data backup, और zero-downtime version upgrades प्रदान करेंगे
- Chatto Cloud का लक्ष्य lock-in न बनाना है
- Chatto Cloud पर host किए गए सर्वर self-hosted सर्वरों के साथ 100% compatible हैं
- कभी भी data migrate करके Chatto Cloud के भीतर या बाहर जाया जा सकता है
0.4 स्थिति और 1.0.0 तक की योजना
- अभी Chatto का version 0.4 है
- इसे production उपयोग के लिए काफ़ी stable माना जाता है
- अभी भी कुछ महत्वपूर्ण features गायब हैं
- पूरी योजना Chatto Roadmap में देखी जा सकती है
- Chatto 0.5 का फोकस safety features और client improvements पर है
- इसमें content reporting और moderation features शामिल होंगे
- खास तौर पर multi-server functionality को बेहतर बनाने पर ध्यान है
- Chatto 1.0.0 लगभग 6~12 महीनों में आने की उम्मीद है
- उससे पहले breaking changes हो सकते हैं
- self-hosting उपयोगकर्ताओं को नए version आने पर update के लिए तैयार रहना होगा
- release updates या Chatto Cloud beta शुरू होने की सूचना Chatto announcements newsletter से मिल सकती है, जिसकी frequency लगभग महीने में 1 बार है
2 टिप्पणियां
मैं mattermost इस्तेमाल कर रहा हूँ, लेकिन यह बार-बार enterprise तरफ ले जाने की कोशिश करता है और OSS version की features को कमतर करता जा रहा है.
जब यह काफ़ी mature हो जाए, तो मैं mattermost से migrate करने के लिए एक tool लिखकर देखना चाहूँगा.
Hacker News की राय
मुझे यह बात पसंद आई कि इसे अपने infrastructure पर self-host करना बहुत आसान बनाने के लिए design किया गया है। docs(https://docs.chatto.run/) देखने पर पता चलता है कि Chatto एक छोटे, standalone binary के रूप में deploy होता है, built-in stream persistence engine वाले lightweight message broker NATS का इस्तेमाल करता है, और बाहरी S3-compatible object storage भी configure किया जा सकता है
असली calls LiveKit(Apache-2.0) से powered हैं और उन्हें Chatto के साथ deploy करना पड़ता है, और यह भी अच्छा है कि NATS की तरह deployment examples जरूरी connection configuration दिखाते हैं। सिर्फ बातें नहीं, बल्कि असल guides वाला बढ़िया project है
screenshots से तो लगता है कि है, लेकिन उसे download करने की documentation नहीं मिली
मैं Hendrik को कई सालों से जानता हूं, और वह अब तक मिले developers में सबसे talented लोगों में से एक है। मुझे पूरा भरोसा है कि यह project भी बहुत तेजी से सफल होगा
project अपने-आप में दिलचस्प है, लेकिन यह बात खास तौर पर impressive है कि उन्होंने agentic coding का इस्तेमाल करके इसे अकेले develop किया
कुल मिलाकर अच्छे इंसान हैं, और मैं कभी भी उनके साथ फिर से काम करना चाहूंगा
अगर इसे कंपनियों को बेचने का विचार है, तो “जब user अपना account delete करता है तो user-specific keys destroy कर दी जाती हैं” वाले हिस्से पर सोचना चाहिए। work messages user के नहीं, employer के होते हैं, इसलिए soft delete की जरूरत होगी
Portuguese में “chato” का मतलब “boring” होता है, यह देखकर हंसी आई। लेकिन यह setup और use करने में बहुत आसान लगता है
और ज्यादा boring software का स्वागत है
Portuguese/Spanish में NSFW slang होने की संभावना काफी बार होती है
शानदार। लेकिन website पर कहीं भी यह पता नहीं चलता कि mobile support है या नहीं
कंपनी या दोस्तों को shift कराना है तो mobile support जरूरी है
https://github.com/orgs/chattocorp/projects/1?pane=issue&ite...
Mattermost, Element/Matrix, और शायद कुछ या सभी ActivityPub clients इसी तरह करते लगते हैं। नहीं तो server self-host करने का मतलब यह होगा कि client app को भी App Store और Apple Developer Program की fees के जरिए खुद distribute करना पड़ेगा
इसे देखते रहने का इरादा है। अभी Mattermost इस्तेमाल कर रहा हूं, लेकिन उसकी pricing काफी inconsistent है और enterprise को target करती है, इसलिए फिलहाल feature-limited open source version ही इस्तेमाल कर रहा हूं
ऊपर से video calling कमजोर लगी थी, और अच्छा है कि Chatto में वह feature है
dual licensing रखने की वजह जानना चाहूंगा। Go backend AGPL है, लेकिन TypeScript frontend Apache 2.0 लगता है
जानना चाहता हूं कि सब कुछ AGPL क्यों नहीं रखा गया
इसलिए अपनी Cloud चलाने में एक soft तरह की exclusivity मिलती है। दूसरी तरफ frontend के लिए customization, white-labeling आदि allow करने हैं तो ज्यादा permissive license ज्यादा logical है
Grafana इसका अच्छा example है। 2021 में Apache से AGPLv3 पर जाने की वजह यह थी कि cloud providers modified versions को बिना contribution के host न कर सकें, और plugins Apache license पर ही रखे गए
self-hosting के बाद ऐसा package या link generate कर पाना बहुत अच्छा होगा जो download, install और login pre-configuration तक कर दे। जैसे किसी खास व्यक्ति से जुड़ा custom installer या setup script
लक्ष्य onboarding friction को जितना हो सके कम करना है। link गलती से share हो जाने जैसे security implications हो सकते हैं, लेकिन छोटे self-hosted instance के लिए इसे अपेक्षाकृत आसानी से mitigate किया जा सकता है। इसे local account पर ही काम करने तक सीमित भी किया जा सकता है
इससे दोस्त को “यहां मेरे साथ chat करो” वाला link भेजना आसान हो जाएगा, और “मैं पहले से Discord इस्तेमाल करता हूं, यह सब set up नहीं करना चाहता” जैसी प्रतिक्रिया की चिंता नहीं करनी पड़ेगी
भले ही कोई और sign up कर ले, उदाहरण के लिए उसे “internal group” role न दें। क्या आप one-time token वाले invite link जैसी चीज सोच रहे हैं?
बहुत अच्छा। पहले मेरे मन में भी ऐसा ही विचार आया था: कई कंपनियां notifications इकट्ठा करने और simple bot actions perform करने के लिए कुछ चाहती हैं, लेकिन वे जरूरी नहीं कि किसी खास chat provider से बंधना चाहें
अगर यह कई integrations के frontend के रूप में, या सिर्फ internal chat के लिए भी इस्तेमाल हो सके, तो यह सच में interesting होगा
Mattermost की तुलना में Chatto के pros और cons क्या हैं, यह जानना चाहूंगा
साथ ही, यह देखकर बहुत खुशी हुई कि Chatto backend Go में implemented है। Go इस तरह के use case के लिए बहुत well-suited है