[RAPID] PCC 체크리스트 업데이트 (공정 90%)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,49 +1,49 @@
|
||||
# MSN[체크] 메신저 기능 개발
|
||||
|
||||
## 공정 상태: 0%
|
||||
## 공정 상태: 90% (1차 구현 완료, 2차 테스트 대기)
|
||||
|
||||
---
|
||||
|
||||
## 구현 체크리스트
|
||||
|
||||
### Phase 1: DB & 백엔드 기반
|
||||
- [ ] `db/migrations/messenger_tables.sql` 작성 및 실행
|
||||
- [ ] `backend-node/src/types/messenger.ts` 타입 정의
|
||||
- [ ] `backend-node/src/services/messengerService.ts` 구현
|
||||
- [ ] getRooms (내 채팅방 목록)
|
||||
- [ ] createRoom (DM / 그룹 / 채널)
|
||||
- [ ] getMessages (메시지 히스토리, 페이지네이션)
|
||||
- [ ] sendMessage
|
||||
- [ ] markAsRead
|
||||
- [ ] getCompanyUsers (사용자 목록)
|
||||
- [ ] addReaction / removeReaction
|
||||
- [ ] `backend-node/src/controllers/messengerController.ts` 구현
|
||||
- [ ] `backend-node/src/routes/messengerRoutes.ts` 구현
|
||||
- [ ] `backend-node/src/config/multerMessengerConfig.ts` 구현 (파일 업로드)
|
||||
- [ ] `backend-node/src/socket/messengerSocket.ts` 구현
|
||||
- [ ] JWT 인증 미들웨어
|
||||
- [ ] join_rooms 이벤트
|
||||
- [ ] send_message 이벤트
|
||||
- [ ] message_read 이벤트
|
||||
- [ ] typing_start / typing_stop 이벤트
|
||||
- [ ] add_reaction 이벤트
|
||||
- [ ] 온라인 상태 관리 (connect / disconnect)
|
||||
- [ ] `backend-node/src/app.ts` Socket.IO 초기화 및 라우트 등록
|
||||
- [x] `db/migrations/messenger_tables.sql` 작성 및 실행
|
||||
- [x] `backend-node/src/types/messenger.ts` 타입 정의
|
||||
- [x] `backend-node/src/services/messengerService.ts` 구현
|
||||
- [x] getRooms (내 채팅방 목록)
|
||||
- [x] createRoom (DM / 그룹 / 채널)
|
||||
- [x] getMessages (메시지 히스토리, 페이지네이션)
|
||||
- [x] sendMessage
|
||||
- [x] markAsRead
|
||||
- [x] getCompanyUsers (사용자 목록)
|
||||
- [x] addReaction / removeReaction
|
||||
- [x] `backend-node/src/controllers/messengerController.ts` 구현
|
||||
- [x] `backend-node/src/routes/messengerRoutes.ts` 구현
|
||||
- [x] `backend-node/src/config/multerMessengerConfig.ts` 구현 (파일 업로드)
|
||||
- [x] `backend-node/src/socket/messengerSocket.ts` 구현
|
||||
- [x] JWT 인증 미들웨어
|
||||
- [x] join_rooms 이벤트
|
||||
- [x] send_message 이벤트
|
||||
- [x] message_read 이벤트
|
||||
- [x] typing_start / typing_stop 이벤트
|
||||
- [x] add_reaction 이벤트
|
||||
- [x] 온라인 상태 관리 (connect / disconnect)
|
||||
- [x] `backend-node/src/app.ts` Socket.IO 초기화 및 라우트 등록
|
||||
|
||||
### Phase 2: 프론트엔드 컴포넌트
|
||||
- [ ] `frontend/contexts/MessengerContext.tsx` (전역 상태)
|
||||
- [ ] `frontend/hooks/useMessengerSocket.ts` (Socket.IO 연결 관리)
|
||||
- [ ] `frontend/hooks/useMessenger.ts` (채팅방/메시지 React Query)
|
||||
- [ ] `frontend/components/messenger/UserAvatar.tsx` (프로필 이미지 / 이름 첫 글자)
|
||||
- [ ] `frontend/components/messenger/MessengerFAB.tsx` (플로팅 버튼 + 배지)
|
||||
- [ ] `frontend/components/messenger/MessengerModal.tsx` (메인 모달 컨테이너)
|
||||
- [ ] `frontend/components/messenger/RoomList.tsx` (채팅방 목록 + DM/그룹/채널 탭)
|
||||
- [ ] `frontend/components/messenger/ChatPanel.tsx` (채팅 영역)
|
||||
- [ ] `frontend/components/messenger/MessageItem.tsx` (메시지 + 리액션 + 스레드 버튼)
|
||||
- [ ] `frontend/components/messenger/MessageInput.tsx` (입력창 + 파일 + 이모지 + 멘션)
|
||||
- [ ] `frontend/components/messenger/NewRoomModal.tsx` (방 생성 모달)
|
||||
- [ ] `frontend/components/messenger/MessengerSettings.tsx` (토스트 알림 on/off 등)
|
||||
- [ ] `frontend/app/(main)/layout.tsx` MessengerProvider + MessengerFAB 추가
|
||||
- [x] `frontend/contexts/MessengerContext.tsx` (전역 상태)
|
||||
- [x] `frontend/hooks/useMessengerSocket.ts` (Socket.IO 연결 관리)
|
||||
- [x] `frontend/hooks/useMessenger.ts` (채팅방/메시지 React Query)
|
||||
- [x] `frontend/components/messenger/UserAvatar.tsx` (프로필 이미지 / 이름 첫 글자)
|
||||
- [x] `frontend/components/messenger/MessengerFAB.tsx` (플로팅 버튼 + 배지)
|
||||
- [x] `frontend/components/messenger/MessengerModal.tsx` (메인 모달 컨테이너)
|
||||
- [x] `frontend/components/messenger/RoomList.tsx` (채팅방 목록 + DM/그룹/채널 탭)
|
||||
- [x] `frontend/components/messenger/ChatPanel.tsx` (채팅 영역)
|
||||
- [x] `frontend/components/messenger/MessageItem.tsx` (메시지 + 리액션 + 스레드 버튼)
|
||||
- [x] `frontend/components/messenger/MessageInput.tsx` (입력창 + 파일 + 이모지 + 멘션)
|
||||
- [x] `frontend/components/messenger/NewRoomModal.tsx` (방 생성 모달)
|
||||
- [x] `frontend/components/messenger/MessengerSettings.tsx` (토스트 알림 on/off 등)
|
||||
- [x] `frontend/app/(main)/layout.tsx` MessengerProvider + MessengerFAB 추가
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user