- Môi trường phát triển cộng tác thời gian thực trên nền tảng trình duyệt, được phát triển nhằm khắc phục những giới hạn của các công cụ cộng tác dạng tài liệu hiện có vốn không phù hợp cho lớp học hoặc pair programming
- Phá vỡ định kiến rằng “cộng tác lập trình thời gian thực là phức tạp”, được thiết kế để bất kỳ ai cũng có thể bắt đầu viết code cùng nhau ngay lập tức thông qua Zero Setup, tính thời gian thực đích thực và UI trực quan
- Hỗ trợ xem trước thời gian thực chuẩn từng pixel: ngay khi viết mã HTML/CSS/JS, nội dung sẽ được phản ánh tức thì vào WebView
- Tính năng cộng tác: dựa trên Operational Transformation, nhiều người dùng có thể nhập đồng thời mà không xảy ra xung đột
- Trình soạn thảo phong cách VS Code: cung cấp giao diện quen thuộc cùng tính năng tự động hoàn thành, tô sáng cú pháp và hiển thị lỗi nhờ Monaco Editor
- Bao gồm terminal trong trình duyệt dựa trên Xterm.js để có thể kiểm tra đầu vào/đầu ra
- Chạy không cần cài đặt: chỉ cần có trình duyệt là có thể sử dụng ngay
- Giấy phép GNU AGPL 3.0
Ngăn xếp công nghệ
- Frontend: React, TypeScript, Tailwind CSS, Zustand, Xterm.js, Monaco Editor
- Backend: Java Spring Boot, WebSocket, Jackson
- Đồng bộ thời gian thực: thuật toán Operational Transformation tùy chỉnh
- Xử lý thông điệp: xử lý dữ liệu nguyên tử thông qua Redis + script Lua
- Lưu trữ/triển khai: frontend dùng Vercel, backend dùng AWS EC2, Redis dùng ElastiCache
Operational Transformation (OT)
- OT là công nghệ cốt lõi cho phép chỉnh sửa tài liệu đồng thời theo thời gian thực, và Google Docs cũng dựa trên công nghệ này
- CodeCafé tự triển khai OT để hỗ trợ các khả năng sau:
- Phát hiện và chuyển đổi các thao tác nhập đồng thời
- Bảo toàn ý định và giải quyết xung đột
- Duy trì đồng bộ trạng thái giữa các client
- Nhờ đó, sản phẩm mang lại trải nghiệm người dùng tự nhiên và mượt mà trong môi trường cộng tác thời gian thực
Kế hoạch sắp tới
- Xác thực người dùng và chức năng lưu dự án
- Tích hợp chat thoại/văn bản
- Tính năng phát lại lịch sử lập trình
- Mở rộng hỗ trợ nhiều ngôn ngữ hơn
3 bình luận
Đã có
code serverrồi nên tôi chưa thấy rõ điểm khác biệt, nhưng nếu được bổ sung chat và phát lại lịch sử coding thì có vẻ sẽ rất hay.Nhớ đến tính năng Live Share của VS Code.
Hồi đó có thể vừa chat thời gian thực vừa đặt mã lên để cùng chỉnh sửa.
Nhưng dù dùng để mentoring cho junior, dạy học online hay giới thiệu cho người khác thì mọi người cũng không dùng nhiều lắm.
Zed cũng vậy, tôi không rõ nhu cầu đối với việc cộng tác đồng thời theo thời gian thực thực sự lớn đến mức nào. Có vẻ cũng sẽ có vấn đề là mọi người cùng làm việc đều phải dùng cùng một trình soạn thảo, hơn nữa đây lại là loại phần mềm mà hiệu năng và trải nghiệm người dùng thực sự rất quan trọng..