- IDE 콘텐츠의 실시간 공유를 위한 라이브러리와 도구 모음으로, 오픈 기술로 원격 팀워크 향상을 목표로 함
- 호스트가 협업 세션을 시작하고 다른 사람을 초대하면, IDE 확장 기능이 호스트의 작업 공간 콘텐츠를 배포하고 다른 참가자의 텍스트 선택 및 커서 위치 하이라이트
- 이와 동시에 선호하는 회의/채팅 앱에서 즉각적인 토론 가능
- 참가자들은 서로 무엇을 보고 있는지, 어떤 변경 사항을 실시간으로 제안하는지 확인 가능
첫 릴리즈에 포함된 Open Collaboration Tools의 주요 구성 요소
- VS Code 확장 기능(Open VSX 및 VS Code Marketplace에서 사용 가능)
- Eclipse Theia용 확장 기능
- 인증 및 협업 세션 처리를 위한 서버 애플리케이션(
api.open-collab.tools
공용 인스턴스 제공)
- 다양한 환경에 통합을 용이하게 하는 TypeScript 라이브러리가 있는 개방형 확장 가능 프로토콜
- 처음부터 내장된 엔드투엔드 암호화 및 확장 가능한 사용자 인증
향후 계획
- 곧 Monaco Editor와의 통합 기능 제공 예정
- 이를 통해 웹 애플리케이션 사용자 간 또는 웹사이트와 로컬 IDE 간에 완전히 사용자 지정 가능한 실시간 협업을 가능하게 해줌
- 웹사이트 링크를 열기만 하면 본격적인 개발 환경에서 시작된 라이브 공유 세션에 참여가 가능해짐
- 초기 버전은 모든 프로그래밍 언어의 소스 코드, 마크다운 문서, 스크립팅 언어, 특정 도메인용 언어, Configuration 포맷, HTML 및 기타 마크업 언어 등 일반 텍스트 문서에 초점을 맞추지만, Jupyter Notebook, 다이어그램 편집기 등 다른 종류의 콘텐츠 제작 지원 추가 예정
- 실시간 협업 보기 및 편집이 도움이 될 수 있는 다양한 시나리오에 프로토콜과 인프라 적용 가능
새로운 협업 도구의 필요성
- 기존 제품들은 소비적이고 정보 민감성이 높은 기업 환경에 적합하지 않음
- 필요한 솔루션의 조건:
- 인기 있는 IDE에 플러그인으로 제공, 크로스 IDE 사용 사례 지원
- 확장성을 염두에 둔 설계. 텍스트 이외의 사용자 정의 편집기 추가 용이
- 절대적인 데이터 보안을 위해 구내 실행 가능
- 단일 공급 업체에 구속되지 않음. 도구 제어를 위한 허용 라이센스 선호
Open Collaboration Protocol
- IDE가 협업 서버와 인증하는 방법, 세션을 생성하거나 참여하는 방법, 세션 내 사용자 간에 교환되는 데이터 유형 등을 지정
- 중앙 집중식 P2P 메커니즘을 통해 기술적으로 구현
- 메시지 브로커 역할을 하는 중앙 서버는 메시지 내용에 대해 완전히 모름
- 두 클라이언트가 서로의 메시지를 이해하는 한 함께 작업 가능
- 기본 텍스트 편집기에 대한 기본 제공 지원 포함
큰 그림
- 관대한 오픈 소스 라이선스로 고도로 사용자 정의 가능한 도구와 프레임워크를 제공한다는 TypeFox의 전반적인 전략에 완벽하게 부합
-
api.open-collab.tools
의 공용 인스턴스는 새 프로젝트의 기능을 시연하고 오픈 소스 커뮤니티 지원 의도
- 기업들은 자체 액세스 제한으로 보호된 자체 인스턴스 배포 권장