✈️

Trip Ledger (트립 레저)

여행 경비 정산 및 예산 관리 도구

2025-12-10

The Challenge

**1. 오프라인 우선(Offline-First) 아키텍처** 해외여행 특성상 인터넷 연결이 원활하지 않은 상황이 빈번합니다. 네트워크가 끊긴 상태에서도 데이터 입력과 조회가 가능해야 했으며, 추후 네트워크가 복구되었을 때 데이터 충돌 없이 동기화(Sync)하는 로직이 필요했습니다. **2. 영수증 입력의 번거로움** 여행 중에는 영수증을 챙기는 것조차 귀찮은 일입니다. 수기 입력 방식을 고수할 경우 사용자 리텐션이 급격히 떨어지는 문제가 확인되었습니다.

The Solution

**1. Local-First 데이터베이스 설계** React Native의 로컬 데이터베이스(SQLite)를 메인 저장소로 사용하고, Firebase를 백업 및 동기화 용도로 활용하는 'Local-First' 전략을 채택했습니다. CRDT(Conflict-Free Replicated Data Type) 알고리즘을 응용하여 다중 기기에서의 편집 충돌을 우아하게 해결했습니다. **2. 온디바이스 OCR 도입** Google ML Kit의 텍스트 인식 기능을 앱 내에 탑재하여, 영수증을 사진으로 찍기만 하면 날짜, 상호명, 총액을 자동으로 추출합니다. 서버 통신 없이 기기 내부에서 처리되므로 속도가 빠르고 데이터 요금 걱정이 없습니다.

Project Overview

'트립 레저'는 "여행의 마지막 기억이 돈 계산 때문에 흐려져서는 안 된다"는 철학으로 시작된 프로젝트입니다. 복잡한 입력 과정을 극도로 단순화하여, 여행 중에도 3초 만에 지출 내역을 기록할 수 있는 직관적인 가계부 앱입니다. 실시간 환율 API를 연동하여, 달러, 엔화, 유로 등 다양한 통화로 결제한 내역을 즉시 원화 가치로 환산해 보여줍니다. 이를 통해 여행자는 현재 예산 대비 얼마나 사용했는지를 정확하게 파악할 수 있으며, 환율 변동으로 인한 숨은 비용까지 관리할 수 있습니다.

Tech Stack

  • React Native (Expo)
  • Firebase Firestore & Auth
  • Google ML Kit (OCR)
  • Recoil (State Management)
  • TanStack Query

Key Features

  • 실시간 환율 자동 적용 및 150개국 통화 지원
  • 오프라인 모드 지원 (추후 자동 동기화)
  • OCR 영수증 스캔 및 자동 입력 (On-Device AI)
  • 그룹 멤버별 1/N 및 가중치 정산 기능
  • 여행 보고서 PDF/Excel 내보내기

Tags

MobileUtilityTravel