"부모와 자녀 세대 사이 취향의 거리를 좁히고, 가족간 화합을 도모할 수 있는 여행지 추천 서비스"
💞 "동행"은 부모님과 자녀들이 여행지에서 함께 걷는다는 의미입니다.
👨👩👧 설문 조사를 통해 부모님의 취향을 파악하고, 그에 따른 여행지 추천을 해줍니다.
📸 여행지에서 할 수 있는 미션을 제공합니다. 사진을 업로드 하여 미션을 달성하고, 앨범에서 업로드한 사진을 모아 볼 수 있습니다.
기능 소개
메인화면
맨 처음 들어가면 보이는 메인 화면입니다.
상단 네비게이션 바를 통해 여행 일정 생성, 마이페이지, 로그아웃 페이지로 이동합니다.
스크롤을 내리면 현재 진행중인 여행 일정과 미션을 확인할 수 있습니다.
미션은 랜덤으로 3개가 제공됩니다. 마음에 들지 않을 시 새로고침 버튼을 눌러 바꿀 수 있습니다.
부모님과 즐기고 싶은 미션이 있을 경우 직접 추가할 수 있습니다.
가장 하단의 CLICK 버튼을 누르면 부모님에게 설문조사를 보낼 수 있는 페이지로 이동합니다.
설문조사
부모님의 여행 취향에 대한 설문조사입니다.
설문 링크 복사하기를 누르면 랜덤으로 생성된 링크가 복사됩니다.
이 링크를 카카오톡으로 공유하면 부모님이 직접 설문을 합니다.
설문은 총 12개의 질문으로 이루어져있고 부모님을 배려하여 최대한 간단하게 답변할 수 있습니다.
이 결과를 바탕으로 여행 일정 생성 시 부모님이 선호할 만한 여행지를 먼저 띄워줍니다.
마이페이지
마이페이지에서는 크게 내 정보와 지난 여행을 확인할 수 있습니다.
내 정보에서는 회원 정보를 수정하거나 탈퇴합니다.
지난 여행에서는 미션을 위해 업로드한 사진들을 여행 일정별로 모아 앨범처럼 볼 수 있습니다.
또한 지난 여행 일정과 방문했던 여행지 열람 기능을 구현했습니다.
여행 일정 생성
여행 일정 생성을 위해 날짜를 선택합니다.
여행 가고 싶은 지역을 확대한 뒤 추천 받기를 누르면 추천 여행지와 음식점이 뜹니다.
원하는 곳을 골라 추가하거나 순서를 바꿔서 나만의 여행일정을 생성합니다.
아키텍쳐 구조
기술 스택
FRONTEND
Javascript
React
Redux Toolkit
BACKEND
Springboot
MariaDB
redis
S3
JPA
CI/CD
Jenkins
docker
AWS
추천 알고리즘
동행의 여행지 추천은 사용자 기반 협업 필터링을 바탕으로 합니다.
협업 필터링이란 사용자와 비슷한 취향의 사람들을 기반으로 추천해주는 시스템입니다. 동행에서는 더미 데이터를 넣어 가상의 사용자들을 만들고, 많은 사용자로부터 얻은 취향 정보를 활용하였습니다. 축적된 사용자들의 집단 지성을 사용자 기반 협업 필터링에서는 SVD를 활용했습니다. SVD란 Singular Value Decomposition의 약자로, 행렬을 특정한 구조로 분해하는 방식입니다.