프론트 - 웹
•
로그인 기능
•
로그인 이후 지도에 내가 저장한 데이터가 표시되는 마커가 찍여있어야 함
•
마커 클릭 시 내가 저장한 데이터 (사진, 제목, 내용, 날짜) 표시
•
마커 클러스터링 기능 필요
+ 도전 과제
•
다크 모드
모바일
•
현재 내가 있는 위치에 마커를 남기고, 사진과 글을 저장할 수 있도록 한다.
•
저장되어야하는 데이터 : 사진, 제목, 내용, 날짜, 위치..
•
저장한 데이터는 수정할 수 있어야 한다.
•
앱을 껐다 켜도 데이터는 유지되어야 한다.
•
이메일로 로그인하여 데이터를 보존할 수 있어야 한다.
•
단위 테스트
•
마커 클러스터링 기능이 필요하다. ex) 네이버 맵
+ 도전 과제
•
SNS 로그인
•
로드맵으로 표시
•
다크 모드 지원
백엔드
•
사용자의 사진 데이터 API (사진 url, 위치, 날짜, 제목, 내용 등)
◦
CRUD
◦
사진 URL은 프론트, 혹은 모바일 단에서 저장 후 경로만 저장한다.(?) - Firebase 사용해야할 듯
•
회원 관련 API
◦
회원가입, 로그인, 로그아웃, 회원탈퇴
◦
로그인은 이메일 + 패스워드로 구성된다. OR 카카오, 구글, 페이스북 등 소셜 로그인으로 만 구성한다.
◦
JWT 토큰을 사용하기 위해서 USER 테이블에 토큰(access, refresh) 관련 속성도 반영한다.
•
oauth 토큰 관리(JWT)
◦
토큰 유효기간
▪
Access Token : 15분
▪
Refresh Token : 14일
+ 도전 과제
•
Java → Kotlin 컨버팅 작업
•
Redis 사용하여 비밀번호 재설정 시 인증번호 이메일 or 문자로 전송하여 인증 후 재설정