Skip to content

Jiii-Eun/GlobalNomad

Repository files navigation

🌏 GlobalNomad

일상을 벗어나, 특별한 체험을 예약하다.

GlobalNomad는 다양한 문화 체험 상품을 한눈에 확인하고,

지도 및 달력 SDK를 통해 예약 날짜와 위치를 직관적으로 확인할 수 있는 예약 플랫폼입니다.

사용자는 판매자이자 체험자로서, 체험 등록부터 예약, 후기, 관리 등의 전 과정을 직접 관리할 수 있습니다.

Framework & Language

Next.js React TypeScript

Auth

Kakao OAuth

State & Data

React Query Jotai Zod React Hook Form

Styling & Design System

TailwindCSS

날짜/지도/주소

Day.js Kakao Maps SDK React Datepicker

UI 컴포넌트 & 애니메이션

Embla Carousel Framer Motion Vaul Drawer react-intersection-observer

Deploy & Storage

Vercel AWS S3

협업 도구

GitHub Notion Discord

⏱️ 개발 기간

2025.09.26 ~ 2025.10.29

🧑‍💻 개발자 소개

스크린샷 2025-11-02 오후 6 15 15

🚀 배포 링크

https://global-nomad-henna.vercel.app/


✨ 주요 기능

  • 회원가입 / 로그인

    • 이메일·비밀번호 검증 및 에러 메시지 표시
    • Kakao OAuth를 통한 간편 로그인 지원
  • 마이페이지

    • 닉네임, 비밀번호, 프로필 이미지 수정
    • 이미지 업로드 및 즉시 반영 (React Query 캐시 갱신)
  • 체험 상세

    • 체험 등록, 수정, 삭제
    • 제목, 카테고리, 설명, 가격, 주소, 이미지 입력
    • 등록/수정 시 확인 모달 표시, 중복 시간대 방지
    • 체험 후기 페이지 네이션
  • 예약 기능

    • 예약 신청, 취소, 승인, 거졀, 체험 완료로 분류
    • 캘린더 SDK로 예약 가능한 날짜·시간 표시
    • Kakao 지도 SDK로 체험 위치 확인 및 선택 가능
  • 후기 작성

    • 별점(1~5점) + 텍스트 입력
  • 메인 페이지

    • 카테고리 필터, 가격 정렬(낮은순/높은순)
    • 키워드 검색
    • 인기 체험 무한 스크롤 표시

🙋‍♂️ 유저 플로우

image

📂 폴더 구조

/src
├─ app
│ ├─ login
│ │ ├─ page.tsx # 로그인 페이지
│ │ └─ components/ # 로그인 전용 폼 컴포넌트
│ ├─ page.tsx # 메인 페이지
│ └─ layout.tsx # 전체 레이아웃 구성
├─ components/ # 재사용 가능한 공통 UI 컴포넌트
├─ lib
│ ├─ api/ # API 요청 관련 로직
│ ├─ hooks/ # 전역 훅 (useAuth, useInfiniteScroll 등)
│ └─ utils/ # 공용 유틸리티 함수
└─ styles
└─ globals.css # 전역 스타일 관리

⚙️ 개발 워크플로우

Git Flow

  • main : 배포용
  • develop : 다음 버전 통합용
  • feature/* : 기능 단위 개발 브랜치 ( develop에서 분기 )

About

문화·예술·스포츠 등 여러 카테고리의 체험을 쉽게 등록하고 참여할 수 있는 서비스

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages