SpreadJS, Real-Time Collaboration
JavaScript Excel 동시 편집 기능
JavaScript 동시편집 프레임워크를 통해, 간단하게 실시간 Excel 협업 기능을 SpreadJS에 추가해보세요.
이제 Google Sheets, MS365 Excel처럼 웹 앱에서 여러 사용자가 실시간으로 협업하는 기능을 구현할 수 있습니다.

SpreadJS 동시 편집 프레임워크 핵심 기능
List of Services
SpreadJS 실시간 협업 작업은 여러 사용자가 동시에 동일한 스프레드시트를 편집할 수 있도록 지원합니다.
이제 여러분의 웹 앱에 Google Sheets와 Excel Online과 같은 실시간 다중 사용자 Excel 편집 기능을 구현해보세요.
실시간 동기화
Operational Transformation 엔진이 여러 사용자의 동시 편집을 충돌 없이 지능적으로 지동 병합/편집합니다.
실시간 협업자 트래킹
각 사용자의 커서 위치, 선택 영역, 편집 상태를 실시간으로 표시합니다. 누가 어디서 작업하는 지 한눈에 파악하세요.
권한 제어
사용자별, 셀 별 편집 권한을 세밀하게 제어합니 다. View/Edit 모드와 시트별 접근 제어를 지원 합니다.
기업용 애플리케이션을 위한 강력한 협업 서버(Node.js)
SpreadJS Collaboration Server Node.js 아키텍처를 기반으로 구축된 엔터프라이즈급 실시간 협업 기능을 제공합니다.


사용자 및 권한 관리
JavaScript 기반 공동 작업 스프레드시트 서버로 사용자별 보기·편집 권한과 액세스 모드를 세밀하게 제어할 수 있습니다.

지금 바로 시작하세요!
14일 무료 체험으로 실시간 협업의 모든 것을 경험해보세요.
SpreadJS 실시간 협업 기능 빠른 시작 가이드
아래 가이드를 따라 10분 안에 실시간 협업 스프레드시트를 구축해 보세요!
NPM 및 라이브러리 설치를 통한 프로젝트 초기화
Node.js 프로젝트를 생성하고 필요한 패키지를 설치합니다
# 프로젝트 폴더 생성
mkdir spread-collaboration
cd spread-collaboration
# Node.js 프로젝트 초기화
npm init -y
# 필수 패키지 설치
npm install @mescius/spread-sheets \
@mescius/spread-sheets-collaboration \
@mescius/spread-sheets-collaboration-client \
@mescius/js-collaboration \
@mescius/js-collaboration-client \
express
고성능 실시간 처리를 위한 Node.js 서버 설정
실시간 협업을 위한 Node.js 서버를 구성합니다
import
express from
'express'
;
import
{ Server } from
'@mescius/js-collaboration'
;
import
* as
OT from
'@mescius/js-collaboration-ot'
;
const
app = express();
const
httpServer = http.createServer(app);
const
server = new
Server({ httpServer });
// OT 문서 서비스 초기화
const
documentServices = new
OT.DocumentServices();
server.useFeature(OT.documentFeature(documentServices));
httpServer.listen( 8080
);
JS Spreadsheet 클라이언트 구현
SpreadJS와 협업 기능을 연결합니다
import
* as
GC from
'@mescius/spread-sheets'
;
import
{ Client } from
'@mescius/js-collaboration-client'
;
import
* as
OT from
'@mescius/js-collaboration-ot-client'
;
import
{ bind } from
'@mescius/spread-sheets-collaboration-client'
;
// SpreadJS 워크북 생성
const
workbook = new
GC.Spread.Sheets.Workbook( 'ss'
);
// 서버 연결 및 룸 참여
const
conn = new
Client().connect( 'room1'
);
const
doc = new
OT.SharedDoc(conn);
await
doc.fetch();
// 문서가 없으면 생성
if
(!doc.type) {
await
doc.create(workbook.collaboration.toSnapshot());
}
// 워크북과 문서 바인딩
bind(workbook, doc);
실행 및 테스트
서버를 실행하고 여러 브라우저에서 동시 편집을 확인하세요
# 클라이언트 빌드
npm run build
# 서버 시작
npm run start
# 브라우저에서 접속
http://localhost:8080
http://localhost:8080
열기
강력한 SpreadJS 엔터프라이즈 협업 기능
List of Services
분할 동기화
스냅 샷을 통합 문서의 워크시트별로 하나씩, 더 작고 독립적인 조각으로 분할하여 대용량 문서에 대한 서버 효율성을 향상시킵니다.
데이터베이스(DB) 통합
PostgresQL, SQLite 등 주요 데이터베이스 지원. 커스텀 어댑터로 선택 확장 가능합니다.
자동 재연결
네트워크 끊김 시 자동 재연결하여 데이터 손실 없이 세션 복구
협업 실행 취소/재실행
다중 사용자 환경에서도 각자의 작업을 독립적으로 실행 취소 가능합니다.
미들웨어 & 훅
요청/응답 파이프라인에 커스텀 로직 삽입. 감사, 검증, 변 환 등 자유롭게 확장
커스텀 OT 타입
기본 제공되는 OT 타입 외에도 비즈니스 로직에 맞는 사용자 커스텀 타입 정의가 가능합니다.

