[개인 프로젝트] Notion 클론

alang·2021년 8월 26일
0

프로젝트 개요

  • Notion을 클론코딩한다.

목표 구현 리스트

구현 리스트

  • [x] api.js 작성

    • [x] Root Document 가져오기
    • [x] Document id 로 해당 Document content, 하위 Document 목록 가져오기
    • [x] Document 생성하기
    • [x] 특정 Document 수정하기
    • [x] 특정 Document 삭제하기
  • [x] route.js 작성

    • [x] rootPage
    • [x] documentPage
  • [ ] Component 작성

    • [ ] App
      • [ ] ListPage
        • (Favorites)
        • [ ] Documents
      • [ ] ContentPage
        • [x] Editor
          • [x] Title
          • [x] Content
        • [ ] 하위 Documents
  • 기능 구현

    • [x] Document List에서 Document 클릭시 Content 렌더링
    • [ ] 선택한 Document 하위 Document 있을경우 트리 형태로 아래 목록 렌더링
      • [x] 모든 하위 Document 렌더링
      • [x] 선택했을때만 Document 렌더링
    • [x] Document 생성하고 편집화면으로 넘김
    • [x] 기록할때마다 자동 저장
    • [x] 제목 수정시 ListPage도 state변경, 반영
    • [ ] div , contentEditable을 통해 다양한 기능의 에디터 만들기
    • [ ] 편집기 내에서 하위 Document 링크 렌더링
    • [ ] 편집기 내에서 다른 Document name을 적을 시 자동으로 해당 Document의 편집 페이지로 이동하는 링크 기능 추가
    • [x] document 삭제기능
    • [ ] XSS 공격 방지
    • [ ] 하위 Document 옮기기 기능
  • 다음에 할일

    • [x] Document를 클릭했을때, DocumentsList가 새로 렌더링되며 토글 된 Tree가 사라지는 현상. - 토글을 시켰을때, 토글된 id를 state에서 기억한다. - tree 렌더링을 실행하고, 토글된 id에 한해서 내부 Tree를 렌더링한다.
    • [x] 상위 Document를 삭제했을때, 하위 Document가 삭제 되지 않고 root Document로 이동되는 문제
      • [x] 삭제 진행시, 해당하위 document들을 순회하며 삭제요청
    • [ ] 새로고침시, 선택된 Document 표시 안되는 문제
    • [ ] 커서 올릴때, 하위 문서의 버튼도 보이게 되는 문제 (CSS)
profile
안녕하세요. 개발자 지망생입니다.

0개의 댓글