프로젝트 소개
Spenddy는 Swiggy 음식 배달 주문 데이터를 브라우저 내에서 풍부하고 상호작용 가능한 분석 대시보드로 변환합니다.
## 기능 개요
Swiggy 주문 내역을 가져온 후 Spenddy는 지출 추이, 레스토랑 선호도, 요리 종류별 분류, 인터랙티브 맵상의 지리적 패턴, 그리고 GitHub 스타일의 주문 히트맵을 표시합니다. 모든 차트와 지표는 로컬에서 렌더링되며 어떠한 데이터도 외부로 전송되지 않습니다.
## 데이터 가져오기
권장 경로는 **Spenddy Link** Chrome 확장자입니다. 이 확장자는 귀하의 Swiggy 계정에 접속하여 주문 데이터를 자동으로 브라우저에 저장합니다. 대안으로, Swiggy에서 데이터 내보내기를 다운로드한 후 `allOrders.json`을 추출해 Spenddy에 드롭할 수도 있습니다.
## 주요 대시보드
- **Overview** — 총 주문 수, 지출 요약, 핵심 통계
- **Spending Analysis** — 월간/연간 추이, 수수료 및 할인 내역, 평균 주문 금액
- **Restaurant Analytics** — 주문 횟수 및 지출 기준 상위 레스토랑, 요리 선호도, 위치 기반 인사이트
- **Location Insights** — 실제 배달 및 레스토랑 좌표를 보여주는 Leaflet 지도
- **Order Activity** — 피크 주문 일, 시간, 빈도를 보여주는 연간 히트맵
## 개인정보 보호 및 아키텍처
Spenddy는 100% 클라이언트 사이드 애플리케이션입니다. 데이터 처리를 위한 외부 서버로의 네트워크 요청을 수행하지 않으며 개인 정보를 전혀 수집하지 않습니다. 이 앱은 교체 가능한 다중 소스 아키텍처(`BaseSource` / `AbstractSource` 패턴)를 사용하므로 새 제공업체(Zomato 등) 추가는 소스 인터페이스 구현만으로 가능합니다.
메모리는 지연 로드와 자동 정리로 관리됩니다: 소스는 첫 방문 시 로드되며 약 10분의 비활성 시간 또는 탐색 후 30초 후 언로드됩니다.
## 기술 스택
React 18 · TypeScript · Vite · Tailwind CSS · Chart.js & Recharts · Leaflet · Framer Motion · Lucide React · date-fns
## 배포
내장 액션을 통한 GitHub Pages 배포가 권장 경로이나, `pnpm build` 출력물은 어떤 정적 호스팅에서도 작동합니다.
## 라이선스
MIT. 풀 리퀘스트를 통한 기여 환영합니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.