-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Sang Yoon Lee (이상윤) edited this page Sep 2, 2025
·
6 revisions
- 프로젝트 초기 세팅
- HTML/CSS 기본 레이아웃,
src디렉토리 구조 세팅 - ESLint, Prettier 설정 (선택)
- HTML/CSS 기본 레이아웃,
- API 모듈
- API 호출 공통 래퍼 (
fetchJSON) -
getRootDocuments,getDocument,createDocument,updateDocument,deleteDocument구현 - 모든 요청에
x-usernameheader 추가
- API 호출 공통 래퍼 (
- History API 라우터
-
pushState,popstate이벤트 처리 - URL → 화면 전환(
/,/documents/:id)
-
- 라우팅 연동
- 트리 클릭 → URL 변경
- URL 직접 입력 → 문서 로드
- 문서 트리 렌더링
-
/documentsAPI로 Root Documents 불러오기 - 트리 구조 재귀 렌더링
-
- 문서 선택
- 트리에서 문서 클릭 → 해당 문서 내용 오른쪽 편집기에 표시
- 현재 선택 문서 하이라이트 처리
- 하위 문서 생성
- 각 문서 옆 ➕ 버튼
- 클릭 시
createDocument→ 트리 갱신 & 새 문서 선택
- 문서 삭제
- 삭제 버튼/메뉴
-
deleteDocument호출 후 트리 갱신 - 삭제한 문서가 현재 선택 상태면 라우팅 보정
- 문서 로드
-
/documents/{id}API로 특정 문서 불러오기 - 제목 + 본문 표시
-
- 문서 수정 & 자동 저장
- 입력 시 디바운스 후
updateDocument호출 - 저장 중 상태 표시 / 실패 시 재시도
- 입력 시 디바운스 후
- 하위 문서 링크
- 현재 문서의 하위 문서 목록을 편집기 하단에 표시
- 클릭 → 해당 문서로 이동
- 리치 에디터
- textarea →
contentEditablediv 교체 - Bold/Italic 단축키 적용
- textarea →
- 문서명 자동 링크
- 편집 중 다른 Document name 감지 → 자동 링크 변환
- 문서 블록 삽입
- 하위 문서 내용을 카드/링크 형태로 본문에 삽입
- 에러/로딩 처리
- API 로딩 시 스켈레톤 표시
- 오류 발생 시 사용자에게 알림(토스트/모달)
- 빈 상태 UI
- 문서 없음 → 안내 메시지
- 권한/헤더 누락 → 안내 메시지
- 배포 & README
- GitHub Pages/Vercel 배포
- 실행 방법, API 설명, 기능 목록 문서화