- ब्राउज़र-आधारित रियल-टाइम collaborative development environment, जिसे क्लासरूम या pair programming के लिए उपयुक्त न होने वाले मौजूदा document-based collaboration tools की सीमाओं को हल करने के लिए विकसित किया गया है
- "रियल-टाइम collaborative coding जटिल है" जैसी धारणा को तोड़ते हुए, Zero Setup, सच्ची real-time responsiveness, intuitive UI के माध्यम से ऐसा डिज़ाइन किया गया है कि कोई भी तुरंत साथ में coding शुरू कर सके
- pixel-perfect रियल-टाइम preview सपोर्ट: HTML/CSS/JS कोड लिखते ही WebView में तुरंत प्रतिबिंबित
- collaboration features: Operational Transformation आधारित कई उपयोगकर्ता बिना टकराव के एक साथ input कर सकते हैं
- VS Code style editor: Monaco Editor का उपयोग करने वाला परिचित interface, साथ में autocomplete, syntax highlighting, और error indicators
- Xterm.js आधारित ब्राउज़र terminal शामिल, जिससे input/output की जाँच संभव
- बिना इंस्टॉलेशन के चलने वाला: सिर्फ ब्राउज़र हो तो तुरंत उपयोग संभव
- GNU AGPL 3.0 लाइसेंस
तकनीकी स्टैक
- फ्रंटेंड: React, TypeScript, Tailwind CSS, Zustand, Xterm.js, Monaco Editor
- बैकएंड: Java Spring Boot, WebSocket, Jackson
- रियल-टाइम सिंक: custom Operational Transformation algorithm
- message processing: Redis + Lua script के जरिए atomic data processing
- hosting: फ्रंटेंड Vercel पर, बैकएंड AWS EC2 पर, Redis ElastiCache पर
Operational Transformation(OT)
- OT दस्तावेज़ों के रियल-टाइम simultaneous editing को संभव बनाने वाली मुख्य तकनीक है, और Google Docs भी इसी पर आधारित है
- CodeCafé ने OT को सीधे implement करके निम्न का समर्थन किया है:
- simultaneous input detection और transformation
- intent preservation और conflict resolution
- clients के बीच state synchronization बनाए रखना
- इसके कारण रियल-टाइम collaboration environment में स्वाभाविक और smooth user experience मिलता है
आगे की योजना
- user authentication और project save feature
- voice/text chat integration
- coding history replay feature
- विभिन्न भाषाओं के समर्थन का विस्तार
3 टिप्पणियां
code serverपहले से मौजूद है, इसलिए इसका फर्क मुझे ठीक से समझ नहीं आ रहा,लेकिन अगर इसमें chat और coding history replay जुड़ जाएँ, तो यह अच्छा लगेगा।
मुझे vscode की live share फीचर याद आ गई।
उसमें real-time chat के साथ code रखकर एक साथ editing भी हो जाती थी।
जूनियर्स की mentoring करनी हो, online lecture लेना हो, या किसी को introduce करना हो, फिर भी लोग उसे ज़्यादा अच्छी तरह इस्तेमाल नहीं करते थे।
Zed भी ऐसा ही है, और मुझे नहीं पता कि real-time साथ में काम करने की मांग वास्तव में कितनी होगी। यह समस्या भी लगती है कि काम करने वाले सभी लोगों को वही editor इस्तेमाल करना पड़ेगा, और फिर यह ऐसा software है जिसमें performance और user experience वाकई बहुत महत्वपूर्ण होते हैं..