Skip to content

문서

  • 경로: /feature/docs
  • 라우트 이름: feature-docs
  • 컴포넌트: apps/web-ui/src/pages/DocsPage.vue
  • 권한: 로그인 필요 (requiresAuth)

개요

조직 내부 문서를 작성·열람·공동편집하는 위키형 페이지입니다. 좌측 폴더 트리에서 문서를 탐색하고, 우측에서 마크다운 읽기/편집을 전환합니다. 편집 모드는 Tiptap + Yjs 기반 공동편집을 지원하며, 다른 사용자의 원격 커서가 함께 표시됩니다.

핵심 기능

폴더 / 문서 관리

  • 폴더 생성·이름 변경·이동·삭제 (DocsFolderTree.vue)
  • 문서 생성·복제·삭제, 휴지통(trash)
  • 문서 검색 및 즐겨찾기

읽기 모드

  • 마크다운 원문을 MarkdownContent.vue에서 렌더링
  • 코드 하이라이트, 표·체크리스트 등 GFM 지원

편집 모드 (공동편집)

  • CollaborativeEditor.vue (Tiptap)
    • 진입 시 마크다운 원문을 HTML로 변환해 Tiptap에 주입
    • Yjs + y-websocket으로 변경 사항 실시간 동기화
    • CollaborationCaret으로 다른 사용자 커서 위치·색상 표시
  • 저장 시 Tiptap → 마크다운으로 변환해 백엔드에 영속화

리비전

  • 문서별 리비전(DocRevision) 이력 조회·되돌리기

환경 변수

VITE_COLLAB_WS_URL=ws://localhost:1234

미설정 시 단독 편집만 가능하며, 다른 클라이언트와 동시 편집이 동기화되지 않습니다.

연계

  • 백엔드: /api/v1/documents/*
  • 스토어: documents, auth, settings
  • 태스크 연동: 태스크의 문서 링크에서 이 페이지로 이동