스택 관련
- 서버 → Next.js로 변경 (aws 서버 지원 종료로 인해 next.js로 풀스택 개발)
- prisma로 orm 관리
- db는 postgresql로 (vercel 지원으로 편리성)
- vercel로 배포 (next.js 친화 & 빠르고 간편한 설정)
디렉토리 관련
- 디렉토리 네이밍 변경 (가독성을 위함)
- 카멜케이스 → 케밥케이스
- 디렉토리 구조 변경 (depth 깊어짐 방지)
- src/app
- page.tsx : containers에 있는 것들로 구성된 컴포넌트
- api : api routes
- src/containers : 페이지 별로 폴더 만들어 각 페이지에 쓰이는 컴포넌트 등을 담음
- components : 컴포넌트 단독 파일은 tsx파일로만. 두개 이상의 파일이 필요한 컴포넌트라면 폴더로. (파일, 폴더 네이밍은 모두 컴포넌트 이름)
- constants, types : 쓰이는 컴포넌트의 상단에 위치. 너무 길어질 경우 파일로 따로 뺌
- 공용 : src 바로 밑에 디렉토리 구조(ex. src/containers) → 중간에 shared 추가(ex. src/shared/contianers)
- interview/video, chat → interview/practice/video, chat
기능 관련
삭제
- 새로고침 시 인터뷰를 삭제 하는 것으로 변경 (ft. 경고알림)
⇒ 면접 세팅 값은 전역변수로만 저장하도록, api x
- gpt의 꼬리질문은 질문리스트에 추가하지 x (정제되지 않은 데이터 피하기 위함)
- 질문 북마크 삭제 ⇒ 좋아요로 표현 (혼동방지를 위함)
추가
- 질문 추가 기능
- 북마크한 질문으로만 인터뷰 진행 기능
- 랜덤 기능
- 캐쉬
그 외
- 불필요한 합성 컴포넌트를 일반 컴포넌트로 변경
- 네이밍을 좀 더 구체적이고 직관적이게 변경