manta 개발 노트 - newlife-js/Wiki GitHub Wiki

개발 항목

1. Auth

  1. login
  2. register
    • register 시에 기본 photo로 업데이트하도록
  3. update profile(displayName, photoURL)
    • 삭제 버튼 만들기
    • photoname 변경(uid)
    • 기본 사진들 선택할 수 있도록 목록 제공
    • 비밀번호 변경
  4. refactoring
    • userVue 따로 빼서 user 정보 관리하기
    • vuex user 따로 빼기
  5. DB 저장

2. Log

  1. register
    • 틀 구성
    • multiple 사진 업로드 및 preview
    • new post button 위치 변경
    • loading 표시
    • 별점(vue-start-rating)
    • map 사용할지 클릭하도록
    • 위치정보 이미지로부터 가져올지 선택(drop-down? -> photo upload칸으로 이동)
    • 생물 엔터시 박스로 만들기
    • 등록 시에 tour document 만들고, collection에 기본 정보만 추가
    • edit 시에 tour collection 수정되도록 해야함
    • edit 시에 log meta, tour divingpoint 업데이트
  2. summary view
    • logbook summary item 구현
    • data load
    • text ellipse
    • datetime filter
    • profile 표시
    • 삭제 버튼
    • 수정 버튼
    • 수정, 삭제시 cloud에서 사진 삭제
    • 좋아요 데이터 저장
    • 별점 안겹치게
    • show more 기능
  3. detail view
    • logbook detail
    • 생물 도감 연동

3. Buddy 기능 구현

  • database: user -> buddyList
  • add 버튼 추가
  • buddy 게시물 보기
  • show, delete 추가
  • add delete시 modal 띄우기
  • buddy page에 검색 넣기

4. photo view 기능 구현

  • spotlight.js 사용
  • hover
  • 삭제 및 view button
  • EXIF 사용해서 이미지 장소 정보 등 가져오기
  • 이름 border 버그 수정
  • 투어 오픈 시 스크롤 기능

5. map 기능 구현

  • google map 가져오기(vue2-google-maps)
  • 검색(GmapAutocomplete)
  • geocoding
  • 컴포넌트화
  • customized marker: diving point 표시(이름, 별점)
  • view 구현
  • handleMapclick, handleMarkerdrag(using google maps api for location picker with vue 2)
  • tour meta 불러와서.. tour별로 보여주기(아이콘 다르게 골라보자)
  • tour 클릭 시 log 보여주기
  • zIndex 설정
  • marker size를 zoom에 reactive하게
  • 위치 정보 있는 tour만 가져오기

6. sidebar 구현

  • 틀 구현
  • 스타일링
  • map / logbook / buddy

7. Profile

  • profile summary(최신 tour 날짜, max 로그수)
  • tour 및 로그북 보여주기
  • tourmeta 10개만 불러오고, load all 버튼
  • 정렬 오름/내림 설정

8. Tour

  • register
  • summary view
  • detail view
  • log -> 추천 기능(별점 평균, log수 등)
  • cascade
  • tour meta정보 저장
  • log 클릭 시 detail 이동 / 없을 시에는 register로
  • tourName 체크
  • 지도 로딩 버튼 만들기
  • log divingpoint 변경시 tour 에도 적용되도록

9. Calendar

  • 들어갈 때 tour meta 다 불러오기(너무 많은가...?)
  • 연도별
    • 연도별 tour meta 불러오기
    • 클릭 시 월별 표시(default는 최신 연도..?)
  • 월별
    • 월별 tour meta 불러오기
    • 클릭 시 tourName 표시(default는 최신 월..?)
  • tourName 목록 표시
    • 클릭 시 tour detail 펼쳐지도록
    • 추가로 log 목록 표시(meta 불러오기)
  • log 목록 표시
    • 클릭 시 log detail 펼쳐지도록(db에서 가져옴)

10. 사진 view

  • 투어 별
  • 투어 선택 시 log 별
  • tourmeta 10개만 불러오고, load all 버튼
  • 정렬 오름/내림 설정

11. refactoring

  • like 공통함수로 만들기
  • upload image 공통함수로 만들기
  • naming 간소화(firebase 용량 위해)
  • image url 간소화(firebase 용량 위해)
  • logbook은 공통, log / tour로 나눠지도록 수정
  • TourLogDetail: tourDetail + logDeteail

기타

  • spinner 추가
  • vuex 적용(어려웠음 ㅜㅜ)
  • git 등록
  • router auth check 기능 추가
  • v-modal 만들기 참고
  • ionic 사용
  • cookie 적용
  • logbook meta 데이터만 관리할 수 있도록..
  • scroll to top(window.scrollTo(0,0))
  • firebase rule 만들기
  • router 정보 store에 저장
  • excel import 기능
  • flaticon attribution 추가
  • 댓글 기능
  • mobile에서 router.back() 안되네...
  • 빈 값이면 0 아닌 null로...

세부 사항 및 참고

1. 환경 세팅

2. Vue

3. UI

4. Firebase