Skip to content

서울시립대학교 컴퓨터종합설계 캡스톤 디자인 프로젝트로 채팅 대화를 기반으로 AI가 동선을 고려한 여행 일정을 자동 생성하고 여행에 필요한 기능이 포함된 올인원 여행 매니저 앱

Notifications You must be signed in to change notification settings

ej9374/2025_CAPSTONE_TRIB_BE

 
 

Repository files navigation

✈️ TriB: AI 올인원 여행 매니저

image

Project Period: 2025.09 ~ 2025.09

📖 Project Overview

트리비(TriB:Buddy)의 핵심 목표는 AI 기반 자동 여행 일정 생성 기능을 중심으로 한 ‘여행 매니저 플랫폼’ 입니다.

  • 대화 기반 일정 생성: 채팅방에서 공유된 장소, 숙소, 북마크 정보를 AI가 분석하여 자동으로 최적의 여행 일정을 생성
  • 효율적 동선 설계: 단순한 장소 나열이 아닌, 지도 상 이동 시간을 최소화하는 동선 제시
  • 부가 기능 연계: 생성된 일정은 지도 위에 시각화되며 길찾기, 예산 관리, 커뮤니티 공유 기능과 유기적으로 연결

나의 역할 및 구현 내용

사용자 인증 및 회원 관리

  • OAuth 2.0 소셜 로그인
  • Redis TTL 이용한 이메일 인증 및 OTT(One Time Ticket) 방식의 보안 아키텍처 설계
  • Spring Security 기반 인증/인가 처리

친구 관리

  • 사용자 ID 기반 친구 요청 및 수락 관리 로직
  • FCM(Firebase Cloud Messaging) 연동을 통한 친구 요청 및 수락 푸시 알림 방솔
  • ApplicationEventPublisher를 이용한 이벤트 기반 알림 시스템 설계

실시간 채팅

  • WebSocket(STOMP) 기반의 1:1 및 1:N 실시간 채팅 구현
  • AI 모델 통신 시 발생할 수 있는 장애 전파 차단을 위한 스레드 풀 격리 및 비동기 처리
  • Redis 분산 락을 활용하여 다중 사용자의 일정 생성 시 데이터 무결성 보장
  • 모델 요청/응답 구조에 최적화된 데이터 저장 및 Batch Fetching을 통한 성능 개선

DevOps

  • GitHub Actions 이용한 CI/CD 파이프라인 구축 및 배포 자동화
  • Docker 기반의 애플리케이션 컨테이너화 및 관리
  • AWS ACM을 이용한 SSL/TLS 보안 인증서 적용 및 HTTPS 통신 환경 구축
  • AWS ALB(Application Load Balancer)를 통한 트래픽 분산 가용성 확보

아키텍처 구조

Image **모놀로식 아키텍처**
AI 모델 추론 부하를 분리하기 위해 별도의 서버를 구성하고 Internal API로 통신

🛠️ Tech Stack

  • Backend: Java, Spring Boot, JPA
  • Database: MySQL, Redis
  • Infra: AWS EC2, Docker, GitHub Actions, FCM(Firebase Cloud Messaging)
  • AI: FastAPI (Python), Google Gemini API

✅ 주요 기능 (Key Features)

🔐 인증 & 사용자 (Auth)

  • 간편 로그인: 카카오, 애플 계정을 연동한 소셜 로그인 (OAuth 2.0)
  • 이메일 인증: Redis를 통한 SMTP 기반의 이메일 인증 프로세스
  • 보안 로그인: JWT 토큰 기반 인증 및 자동 로그인 유지
  • 프로필 관리: 닉네임, 프로필 사진 변경 및 마이페이지

💬 친구 & 채팅 (Social & Chat)

  • 친구 관리: 닉네임 검색을 통한 친구 추가 및 차단
  • 실시간 채팅: 1:1 및 그룹 채팅방 생성, WebSocket 기반의 실시간 메시지 전송 및 FCM 기반 푸시 알림
  • 채팅방 관리: 여행 멤버 초대, 채팅방 나가기

✈️ 여행 & 지도 (Travel & Map)

  • AI 일정 생성: 채팅방 대화 내용을 분석하여 여행 코스 자동 추천
  • 비동기 알림 처리: 생성 시간이 소요되는 AI 작업 완료 시, 사용자를 호출하는 시스템 알림(Push Notification) 발송
  • 일정 관리: 날짜별 여행 동선 시각화 및 세부 일정 수정
  • 길찾기: 지도 API를 활용한 장소 간 이동 경로 및 소요 시간 제공

📝 커뮤니티 (Community)

  • 정보 공유: 여행 후기 및 꿀팁 게시글 작성 (이미지 업로드 포함)
  • 소통: 게시글 좋아요, 댓글 작성 및 조회, 다중 조건 검색(QueryDSL)

About

서울시립대학교 컴퓨터종합설계 캡스톤 디자인 프로젝트로 채팅 대화를 기반으로 AI가 동선을 고려한 여행 일정을 자동 생성하고 여행에 필요한 기능이 포함된 올인원 여행 매니저 앱

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 99.9%
  • Dockerfile 0.1%