<aside>
✅ 아래의 기능과 아키텍쳐 등은 메인 프로젝트 진행 과정 중 최소로 구현되어야하는 개발 영역입니다.
</aside>
공통
프로젝트 개발 및 협업 환경 구축
- Project Git Flow 구축 (Git, Github)
- 초기 개발 환경 구축 (NPM, CRA 등)
- 모듈 버전 통일
- ESLint, Prettier등을 활용한 코드 컨벤션 통일
페이지 구성 및 기능
최소 페이지 구성
- 기획된 서비스를 표현할 수 있는 핵심 메인 페이지
- 회원가입 : 회원가입 페이지 or 모달
- 로그인 : 로그인 페이지 or 모달
- 로그아웃 : 로그아웃 버튼
- 마이페이지 : 회원 정보 조회 및 수정
회원가입 관련
- 유효성 검사 (이메일, 비밀번호 형식 / 중복된 유저 이름 검사)
- 소셜 아이디로 회원가입하기를 제외한 서비스 자체적인 회원가입 기능
*외부 라이브러리 없이 직접 구현해보세요!
로그인 페이지
- 서비스 자체적 로그인 기능 (비소셜 로그인)
- 소셜 로그인
- 유효성 검사에 따른 안내 메세지
- 쿠키 or 토큰 설정
로그아웃
- 버튼 또는 모달창
- 로그아웃에 따른 페이지 전환
마이페이지
- 비밀번호 수정
- 유저 개인정보 (닉네임, 이미지 등) 수정
⭐️⭐️⭐️ 배포 ⭐️⭐️⭐️
- 기획, 프로젝트 기본 개발 환경 구축이 완료되면 Hello World 만 나오는 배포를 프론트/백엔드 모두 꼭 진행해 주시기 바랍니다.
- 매 Sprint 가 끝날 때마다 배포 환경에서 코드가 잘 작동하는지 확인해주시기 바랍니다.
*개발 종료 후 배포 진행 시, 개발 환경과 배포 환경이 달라 기한에 맞춰 배포를 못 하는 경우가 빈번히 발생합니다.
프론트엔드
컴포넌트 기반의 클라이언트 개발
- 프로토타이핑 툴로 서비스의 전반적인 UI를 디자인할 때, 필요한 모든 컴포넌트를 리스트업합니다.
- CSS 라이브러리를 활용할 컴포넌트와 그렇지 않은 컴포넌트를 구분합니다.
- 생산성을 위해 CSS 라이브러리가 제공하는 컴포넌트를 적절하게 사용하셔도 좋습니다. 하지만, input, form, button, modal과 같은 기본적인 컴포넌트는 직접 개발해보세요.
- 브라우저 내장 api인 alert, prompt, confirm의 사용은 **권장하지 않습니다.
*** 모달을 띄우는 형식으로 개발해보세요.
컴포넌트 |
직접 개발 |
비고 |
auto complete |
O |
|
date time picker |
X |
라이브러리 사용 |
toggle button |
O |
|
tag |
O |
|
modal |
O |
|
백엔드
인증과 권한
- 인증(Authentication) 및 권한 부여(Authorization)에 대한 구현은 필수입니다.
*일반 사용자 뿐만 아니라, 관리자 권한 등을 추가할 수 있습니다
CRUD
- 반드시 CRUD를 처리하는 기능이 반영되어야 합니다.
- API 요청에 사용되는 HTTP 메소드는 목적에 맞게 사용하여야 합니다. (RESTful)
DB 설계 (스키마 구축과 API문서 작성)
- DB의 경우, 의도적으로 다대다 관계를 맺는 테이블을 스키마에 반영해주세요.
- 스키마 작성이 완료되었다면 API 문서 작성을 진행해주세요.