개발자
류준열

캘린다이어리

여자친구가 걷다가 '달력에 그날 그날 저장했던 사진들이 보이면 좋겠다.' 고 했다.

'한시간이면 만들지 뭐~' 라고 했는데 3일정도 걸렸다.

https://www.calendiary.xyz/calendar/me

겪은 문제들

  • 처음엔 구글 로그인으로 만들었는데 카카오 인앱 브라우저는 구글 로그인 호환이 안된다는 걸 나중에 알게 되어서 카카오 로그인으로 바꿨다.
  • 모바일에서 속도가 너무 느려서 프론트 문제인줄 알았다.
    • 처음에는 프론트에서 canvas로 용량 최적화, 서버에서 webp로 변환 저장 시켰다.
    • 개발자도구에서 보니 120px X 120px 짜리 이미지를 1500px X 1500px 가량으로 다운받길래, api params에 imgSize를 추가했다. 서버에서는 요청에 imgSize가 있으면 이미지를 리사이징해서 프론트에 내려주었다.
    • 그런데도 모바일에서 속도 개선이 안되어서 계속 살펴보다 localhost:3000에서는 빠른걸 뒤늦게 알게 되어 render.com으로 올린 서버를 ec2로 바꾸었다. 해결되었다.
  • ec2를 처음으로 사용하면서 https를 사용하기 위해 nginx를 이용했다. 회사에서 이미 만들어놓은 코드 수정 하는 정도로만 nginx를 조정했었는데, 이번에 nginx를 세팅해보는 진귀한 경험을 했다.

유저스토리

  • 유저는 친구를 한명만 맺을 수 있다. (1:1 모델)
  • 유저는 자신의 친구와 캘린더를 공유 할 수 있다.
  • 유저는 캘린더의 각 날짜를 클릭하여 텍스트와 이미지 업로드를 통해 일기를 작성 할 수 있다.
  • 유저는 친구의 캘린더는 수정 할 수 없고 읽기만 가능하다.