Skip to content

traguild/traguild-app

Repository files navigation

모험가 길드 (Traveler Guild)

모험가 길드(Traveler Guild)는 여행과 모험을 사랑하는 사용자들을 위한 커뮤니티 중심의 크로스 플랫폼 모바일 애플리케이션입니다. 사용자들은 여행 정보를 공유하고, 실시간으로 소통하며, 지도 기반의 위치 서비스를 이용할 수 있습니다.

🛠 기술 스택 (Tech Stack)

Core

Category Stack
Framework React Native Expo
Language JavaScript React
Platform Android iOS

Libraries & Tools

Category Stack
Navigation React Navigation
Networking Socket.io
Maps Google Maps
Payment Toss Payments
Build EAS

📂 프로젝트 구조 (Project Structure)

프로젝트의 주요 소스 코드는 src 디렉토리에 위치합니다.

traguild-app/
├── src/
│   ├── components/       # 버튼, 입력 필드 등 재사용 가능한 UI 컴포넌트
│   ├── config/           # 앱 설정 파일 (API URL, 상수 등)
│   ├── hooks/            # 커스텀 React Hooks
│   ├── layouts/          # 내비게이션 및 레이아웃 관련 설정 (Stack, Tab 등)
│   ├── resources/        # 이미지, 테마, HTML 등 정적 리소스
│   └── views/            # 화면(Screen) 페이지 컴포넌트
│       ├── 01-home       # 메인 홈 화면
│       ├── 02-community  # 게시글 작성 및 조회 등 커뮤니티 기능
│       ├── 03-chat       # 실시간 채팅 기능
│       ├── 04-myPage     # 사용자 프로필 및 설정 관리
│       ├── 05-maps       # 지도 및 위치 기반 서비스
│       ├── auth          # 로그인, 회원가입 등 인증 화면
│       ├── common        # 공통 화면 요소
│       └── pg            # 결제 시스템 (Toss Payments) 연동 화면
├── assets/               # 앱 아이콘, 스플래시 스크린 등 애셋
├── App.jsx               # 애플리케이션 진입점 (Entry Point)
├── app.json              # Expo 및 앱 배포 설정 (App Config)
├── eas.json              # EAS Build/Submission 설정
└── package.json          # 프로젝트 의존성 및 스크립트

🚀 시작하기 (Getting Started)

사전 요구사항 (Prerequisites)

이 프로젝트를 실행하기 위해서는 다음 도구들이 설치되어 있어야 합니다. (Node.js v18 이상 권장)

  • Node.js: Download Node.js
  • Yarn 또는 npm: npm install -g yarn
  • Expo Go: 모바일 기기에서 테스트할 경우 App Store/Play Store에서 다운로드
  • Android Studio / Xcode: 에뮬레이터에서 실행할 경우 필요

설치 (Installation)

  1. 리포지토리를 클론합니다.

    git clone <repository-url>
    cd traguild-app
  2. 프로젝트 의존성을 설치합니다.

    yarn install
    # 또는 npm install

실행 (Running the App)

개발 서버를 시작하여 앱을 실행합니다.

yarn start

명령어를 실행하면 터미널에 QR 코드가 표시됩니다.

  • 모바일 기기: Expo Go 앱을 열어 QR 코드를 스캔합니다.
  • Android 에뮬레이터: 터미널에서 a를 누릅니다.
  • iOS 시뮬레이터: 터미널에서 i를 누릅니다. (macOS 필요)

⚙️ 설정 및 환경 변수 (Configuration)

API Endpoints

백엔드 서버와의 통신을 위한 기본 URL은 src/config/fetch.config.js 파일에 정의되어 있습니다.

// src/config/fetch.config.js
const BASE_URL = "https://traguild.kro.kr/api";

개발 환경에 따라 이 URL을 변경하여 로컬 서버 등을 바라보게 할 수 있습니다.

Google Maps

지도 기능을 위해 Google Maps API Key가 사용됩니다. 설정은 app.json 파일의 android.config.googleMaps.apiKey에 위치합니다.

📱 주요 기능 상세 (Feature Details)

  1. 홈 (Home)

    • 앱의 메인 대시보드로, 인기 게시글이나 공지사항 등을 확인할 수 있습니다.
  2. 커뮤니티 (Community)

    • 사용자 간의 여행 정보를 공유하는 게시판 기능입니다.
  3. 채팅 (Chat)

    • Socket.io를 이용한 실시간 채팅 기능을 제공하여 유저 간 소통을 지원합니다.
  4. 지도 (Maps)

    • 사용자의 위치를 표시하고 주변 정보를 탐색합니다.
  5. 마이페이지 (My Page)

    • 내 프로필 정보 수정, 내가 쓴 글 확인 등 개인화된 기능을 제공합니다.
  6. 결제 (Payments)

    • Toss Payments를 연동하여 앱 내 결제 기능을 지원합니다.

Note: 이 문서는 프로젝트 분석을 기반으로 자동 생성되었습니다. 추가적인 설정이나 상세 비즈니스 로직은 소스 코드를 참고하세요.

About

모험가 길드 (모바일 앱)

Topics

Resources

Stars

Watchers

Forks