Skip to content

prgrms-aibe-devcourse/AIBE4_Project1_Team5

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 

Repository files navigation

BackpacKOR [ 국내 여행 코스 추천 플랫폼 ]

"Be a Backpacker with backpacKOR!"

BackpacKOR는 배낭여행자(Backpacker)에서 영감을 받아 Backpack과 Korea의 합성어로 탄생한,
국내 여행자를 위한 맞춤형 여행 코스 추천 플랫폼입니다.

AI가 나만의 여행 코스를 자동으로 제안해주며, 버튼 한 번으로 모든 일정을 손쉽게 생성할 수 있습니다.
가고 싶은 지역과 여행 성향만 알려주시면, 복잡한 검색 없이 경로를 한눈에 확인하고 최적 동선을 설정할 수 있어요!

사용자는 추천받은 여행지를 확인하고, 리뷰와 평점을 참고하며 나만의 여행 일정을 쉽게 구성할 수 있습니다.

편리함과 즐거움을 동시에 잡은, 국내 여행의 든든한 동반자 백팩코와 함께 지금 당장 떠나보세요!


개발 기간

2025.09 ~ 2025.10


배포 링크

백팩코 바로가기
백팩코 바로가기


팀원 및 담당 기능

이름 주요 담당 기능
김소명 소셜 로그인/인증, 마이페이지, 카카오맵 경로 시각화, AI 고도화, 페이지네이션/캐싱
박형민 별점·리뷰 시스템
서희수 메인 화면, 여행지, 찜 시스템
승명배 일정 계획 시스템, AI 기반 일정 추천, 내 일정 시스템
장창용 여행지 상세 페이지, 모달, 찜 시스템, 리뷰 도움 시스템

주요 기능

공통

메인 화면 여행지 목록 검색 기능 AI 코스 추천 소셜 로그인

공통 핵심 기능

기능 분류 상세 설명
여행지 검색 / 필터 / 정렬 사용자가 원하는 여행지를 키워드로 검색하고, 지역/카테고리/평점순 등 다양한 기준으로 필터링 및 정렬할 수 있습니다.
피드 형태의 여행지 목록 인스타그램 피드처럼 스크롤하며 다양한 여행지 정보를 한눈에 탐색할 수 있는 UI를 제공합니다.
비로그인 정보 열람 회원가입이나 로그인 없이도 서비스의 핵심 기능인 여행지 정보, 리뷰 등을 자유롭게 열람할 수 있습니다.
회원 전용 기능 (찜, 리뷰) 로그인한 사용자는 마음에 드는 여행지를 **'찜'**하여 보관하거나, 직접 경험한 여행지에 대한 별점과 리뷰를 작성할 수 있습니다.
AI 기반 여행 코스 자동 추천 사용자의 선호도나 트렌드를 기반으로 AI최적의 여행 동선을 포함한 코스를 자동으로 생성하고 추천합니다.

여행지

여행지 목록 여행지 상세 여행지 리뷰 찜하기 카카오맵 경로

여행지 핵심 기능

기능 분류 상세 설명
여행지 상세 정보 여행지의 이름, 지역, 카테고리 등 기본 정보와 운영 시간, 비용 등 방문에 필요한 상세 정보를 제공합니다.
여행지 이미지 갤러리 사용자가 여행지 분위기를 미리 파악할 수 있도록 최대 6장의 이미지를 슬라이드 형태의 갤러리로 제공합니다.
리뷰 (별점 + 댓글) 사용자가 남긴 별점과 댓글을 열람할 수 있으며, 로그인 시 직접 작성도 가능합니다.
찜하기 / 평점 / 조회수 '찜하기', 평점, 조회수기록하고 표시하여 사용자의 반응과 인기 여행지를 직관적으로 파악할 수 있습니다.
카카오맵 API 연동 카카오맵 API를 연동하여 여행지의 정확한 위치를 지도에 표시하고, 경로 시각화 기능을 제공합니다.

내 일정 & 일정 계획

내 일정 목록 일정 상세 AI 일정 추천 직접 일정 계획

일정계획 & 내 일정 기능 상세

기능 분류 상세 설명
일정 초기 설정 사용자가 AI 자동 추천 또는 여행지를 직접 추가하는 방식 중 하나를 선택하여 새로운 여행 일정을 생성함. 효율적인 자동 생성과 사용자 선호 기반의 수동 생성을 동시에 제공함.
일정 추천 최적화 카테고리 기반 추천 알고리즘을 활용하여 여행 동선이 가장 효율적인 방향으로 여행지 목록을 AI가 자동으로 구성함. 사용자는 최적화된 동선과 테마에 맞는 여행지 목록을 즉시 제공받음.
일정 관리 여행 기간을 자유롭게 설정하고, 확정된 여행지 목록의 순서를 드래그 앤 드롭(Drag & Drop)으로 간편하게 수정함. 사용자가 일정의 시간적, 지역적 흐름을 유연하게 통제할 수 있게 함.
일정 상세 '내 일정 목록'에서 특정 일정을 선택하면, 해당 일정에 포함된 확정된 모든 여행지 목록, 시간, 그리고 지도 기반의 동선 세부 정보를 직관적으로 재확인하고 수정함.

리뷰 페이지

리뷰 목록 리뷰 필터링 리뷰 도움 시스템 리뷰 작성 내가 쓴 리뷰 조회
(이미지 삽입) (이미지 삽입) (이미지 삽입) (이미지 삽입) (이미지 삽입)

리뷰 기능 상세

기능 분류 상세 설명
리뷰를 통한 작성 사용자가 다녀온 여행지의 경험을 자유롭게 작성합니다.
작성한 리뷰 조회 모든 사용자들의 다녀온 여행지들의 경험들을 자유롭게 조회합니다.
작성한 리뷰 수정 & 관리 사용자가 다녀온 여행지의 리뷰를 수정 또는 삭제 할 수 있습니다.
리뷰 필터링 상세 조회 기능 최신순,별점순 등 다양한 기준으로 리뷰를 정렬하여 사용자가 필요한 리뷰를 쉽게 찾을 수 있게 합니다.
도움됐어요 시스템 기능 우수한 리뷰를 지정하여 사용자들의 좋은 리뷰들을 선정할 수 있습니다.

마이페이지

프로필 관리 찜한 여행지 내 일정 관리 내가 쓴 리뷰 조회

마이페이지 기능 상세

기능 분류 상세 설명
프로필 관리 소셜 로그인을 통해 등록된 계정 정보(닉네임, 프로필 사진 등)를 확인하고 수정하는 기능을 제공함. 사용자의 개인 정보를 최신 상태로 관리함.
찜한 여행지 사용자가 '찜하기'를 눌러 저장한 모든 여행지 목록을 한눈에 조회함. 다시 방문하고 싶거나 관심 있는 여행지를 쉽게 찾아볼 수 있도록 함.
내 일정 관리 사용자가 작성한 모든 여행 일정 목록을 확인하고, 필요에 따라 해당 일정을 수정하거나 완전히 삭제할 수 있도록 함. 계획된 여행 관리를 용이하게 함.
내가 쓴 리뷰 조회 사용자가 작성한 모든 여행지 리뷰 목록을 모아 보여줌. 작성한 리뷰를 확인하고, 내용 수정 및 삭제를 통해 피드백 내용을 관리할 수 있음.

기술 스택

항목 기술
프론트엔드 TypeScript, React, TailwindCSS
백엔드 Next.js, Node.js
데이터베이스 Supabase (PostgreSQL)
인증 Supabase Auth (Google, Kakao 소셜 로그인)
AI 서비스 Gemini 2.5 Flash (AI 기반 일정 추천)
외부 API Kakao 지도 API (경로 시각화)
정적 분석 Prettier, ESLint
배포 Vercel (CI/CD 자동 배포)
협업 GitHub, Notion, Slack

📁 프로젝트 파일 구조

  AIBE4_Project1_Team5/
  ├── backpackor/
  │   ├── app/                      # Next.js App Router
  │   │   ├── page.tsx              # 메인 페이지
  │   │   ├── login/                # 로그인
  │   │   ├── place/                # 여행지
  │   │   │   └── [placeId]/        # 여행지 상세
  │   │   ├── planner/              # 일정 계획
  │   │   ├── my-planner/           # 내 일정
  │   │   │   └── [tripId]/         
  │   │   ├── my-page/              # 마이페이지
  │   │   ├── review/               # 리뷰
  │   │   └── apis/                 # 서버 API 라우트
  │   │
  │   ├── components/               # React 컴포넌트
  │   │   ├── auth/                 # 인증
  │   │   ├── map/                  # 지도(Kakao Maps)
  │   │   ├── place/                # 여행지
  │   │   ├── planner/              # 일정 계획
  │   │   ├── my-planner/           # 내 일정
  │   │   ├── common/               # 공통 컴포넌트
  │   │   ├── navbar/
  │   │   └── profile/
  │   │
  │   ├── apis/                     # 클라이언트 API 함수
  │   ├── hooks/                    # 커스텀 React 훅
  │   ├── types/                    # TypeScript 타입 정의
  │   ├── utils/                    # 유틸리티
  │   ├── lib/                      # 라이브러리
  │   │   └── supabaseClient.ts     # Supabase 클라이언트
  │   └── constants/                # 상수 정의


ERD

(ERD 이미지를 삽입해주세요) ERD 전체 보기 (ERD 링크를 입력해주세요)

주요 테이블 구조:

  • users: 사용자 프로필 정보 (auth.users 확장)
  • places: 여행지 정보 (이름, 지역, 카테고리, 운영시간, 비용 등)
  • schedules: 여행 일정 (제목, 날짜, 여행지 목록 등)
  • schedule_places: 일정과 여행지 연결 테이블 (M:N 관계)
  • reviews: 리뷰 및 별점 (여행지별)
  • favorites: 찜하기 (사용자별)
  • view_logs: 조회수 기록

시스템 아키텍처

개발 & 배포 서비스 구성
Image Image

팀 협업 방식

Git 브랜치 전략

GitHub Flow 전략 사용

  1. 브랜치 생성 (규칙 준수)
  2. 기능 개발
  3. PR 작성 (PR 템플릿 기반)
  4. 코드 리뷰 및 승인
  5. main 브랜치로 merge → Vercel 자동 배포

커밋 컨벤션

커밋 메시지 유형

유형 의미
FEAT 새로운 기능 추가
FIX 버그 수정
DOCS 문서 수정
STYLE 코드 formatting, 세미콜론 누락 등
REFACTOR 코드 리팩토링
TEST 테스트 코드 추가
CHORE 패키지 매니저 수정, 기타 수정
DESIGN CSS 등 UI 디자인 변경
COMMENT 주석 추가 및 변경
RENAME 파일/폴더명 수정 또는 이동
REMOVE 파일 삭제
!BREAKING CHANGE 커다란 API 변경
!HOTFIX 급한 버그 수정
ASSETS 에셋 파일 추가

커밋 메시지 형식

제목:

[YYMMDD] TYPE: 커밋메시지

내용:

### 작업 내용
- 작업 내용 1
- 작업 내용 2
- 작업 내용 3

PR 템플릿

제목:

[YYMMDD] PR메시지

내용:

## 이슈 번호
#이슈번호

## 작업 내용
- 작업 내용 1
- 작업 내용 2
- 작업 내용 3

로컬 실행 방법

# 저장소 클론
git clone https://github.com/your-repo/backpackor.git

# 디렉토리 이동
cd backpackor

# 패키지 설치
npm install

# 개발 서버 실행
npm run dev

환경 변수 설정: .env.local 파일을 생성하고 아래 내용을 입력해주세요.

# Supabase Configuration
NEXT_PUBLIC_SUPABASE_URL=https://your_project_id.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
NEXT_PUBLIC_SITE_URL=http://localhost:3000

# Kakao Map API Key
NEXT_PUBLIC_KAKAO_MAP_API_KEY=your_kakao_map_api_key

# Gemini API Key
GEMINI_API_KEY=your_gemini_api_key

# Tour API Service Key
TOUR_API_SERVICE_KEY=your_tour_api_service_key

참고자료 및 관련 링크

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5