这个项目能做什么
Spenddy将Swiggy外卖订单数据转化为丰富的交互式分析——全部在浏览器内完成。
## 功能介绍
导入Swiggy订单历史后,Spenddy展示支出趋势、餐厅偏好、菜系分类、地图上的地理分布,以及类似GitHub风格的订单热力图。所有图表和指标均在本地渲染,数据永不离开您的设备。
## 数据来源
首选方式是**Spenddy Link** Chrome扩展,它会自动访问您的Swiggy账户并将订单数据保存至浏览器。作为备选方案,您也可以从Swiggy下载数据导出文件,提取`allOrders.json`并导入Spenddy。
## 主要仪表板
- **概览** — 总订单数、支出汇总及关键统计
- **支出分析** — 月度/年度趋势、费用与折扣明细、平均订单金额
- **餐厅分析** — 按数量和支出排名的顶级餐厅、菜系偏好、基于位置的洞察
- **位置洞察** — 使用Leaflet地图展示真实配送及餐厅坐标
- **订单活动** — 全年热力图,显示高峰下单日、时段和频率
## 隐私与架构
Spenddy 完全为客户端运行。不对任何外部服务器发起数据处理请求,零个人数据收集。应用采用可插拔多源架构(`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协议。欢迎通过Pull Request贡献代码。
评论
0 评分人数达到10人后显示
登录后参与讨论。