# Peritext - Rich Text를 위한 CRDT

> Clean Markdown view of GeekNews topic #5451. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=5451](https://news.hada.io/topic?id=5451)
- GeekNews Markdown: [https://news.hada.io/topic/5451.md](https://news.hada.io/topic/5451.md)
- Type: news
- Author: [xguru](https://news.hada.io/@xguru)
- Published: 2021-11-29T09:47:01+09:00
- Updated: 2021-11-29T09:47:01+09:00
- Original source: [inkandswitch.com](https://www.inkandswitch.com/peritext/)
- Points: 9
- Comments: 1

## Topic Body

- 리치 텍스트 문서의 협업을 위한 CRDT 알고리듬

- 비동기 방식으로 동작도 가능해서 로컬에서 편집 후 머징하는 방법 지원

ㅤ→ 마치 Git과 PR처럼

- 작성자의 의도를 보존

ㅤ→ 서식 편집과 텍스트 삽입이 동시 일어날 때, 새로 삽입된 글자에도 서식 적용

ㅤ→ 동시 서식 편집의 컨플릭 처리

- Peritext 알고리듬

ㅤ→ 기존 플레인 텍스트용 CRDT를 이용해서 리치 텍스트 문서를 표현

ㅤ→ 포맷 변경을 표현하는 CRDT 오퍼레이션 생성

ㅤ→ 이 오퍼레이션을 적용하여 내부 문서 상태(State)를 생성

ㅤ→ 내부 상태를 기반으로 텍스트 편집기에 적합한 문서를 만들기

- Automerge CRDT 라이브러리의 심플 버전을 확장한 TypeScript 오픈소스

ㅤ→ 나중에 Automerge 에 알고리듬을 넣는 것을 기대

ㅤ→ 에디터는 ProseMirror 이용

## Comments



### Comment 7690

- Author: xguru
- Created: 2021-11-29T09:48:01+09:00
- Points: 1

- 제가 틀렸었어요. CRDT가 미래입니다. https://news.hada.io/topic?id=2962

- 더 빠른 CRDT를 위해 최적화 하기 https://news.hada.io/topic?id=4744
