CoTrip 是一款为 朋友、家人、小团队 设计的 协同旅行规划平台。 用户可以在地图上规划旅行路线、管理每日行程、估算旅行预算,并使用智能拆账系统自动完成 AA 制费用结算,让每一次出行都更轻松、有序和透明。
- ⚡ Vue 3 (Composition API + TypeScript)
- 🧩 Element Plus(UI 组件库)
- 💨 Vite(极速构建工具)
- 🗺 AMap / 高德地图 JS SDK(路线规划与地图展示)
- 🐍 FastAPI(异步高性能 Python Web 框架)
- 🗄 SQLAlchemy ORM(数据库模型)
- 🔐 JWT Authentication(用户登录与鉴权)
- 🧮 Python Utility Modules(自动拆账算法等)
- 🧱 SQLite(开发阶段)
- 🔄 可平滑迁移至 PostgreSQL / MySQL(部署阶段)
- 在交互式地图上添加目的地
- 调用高德 API 生成驾驶/步行路线
- 显示距离、预计时长
- 路线以 GeoJSON 格式保存
系统支持估算:
- 门票费用
- 酒店住宿
- 餐饮费用
- 路线交通成本(按公里估算)
- 其他旅行开销
- 添加账单(金额、类别、支付人)
- 支持多人参与
- 自动计算每人总支出
- 账单分类管理(餐饮 / 住宿 / 交通等)
- 计算每人应付金额
- 计算每人实际支出
- 生成 最小转账方案(减少转账次数)
- 展示“谁需付给谁多少钱”
- 注册 / 登录 / 注销
- JWT 认证
- 行程与用户绑定
frontend/
src/
api/
assets/
components/
pages/
router/
store/
App.vue
main.ts
vite.config.ts
package.json
backend/
app/
application/
models/
database/
entities/
persistence/
models/
presentation/
utils/
tests/
main.py
requirements.txt
cd backend
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
uvicorn app.main:app --reload
访问:
- API: http://127.0.0.1:8000
- Swagger: http://127.0.0.1:8000/docs
cd frontend
npm install
npm run dev
- 实现邀请链接加入行程
- 添加 Trip 封面上传
- 支持多段路线规划
- 地图搜索地点功能
- 添加多人协作(实时同步)
- 导出 PDF 旅行计划书
- 移动端优化(H5 响应式布局)
MIT License © 2025