GitHub宝藏项目!TREK,五一出游必备的智能旅行规划神器

前言
嘿,小伙伴们!五一假期马上就要到了,是不是已经按捺不住想要出去玩的心情了?作为一个爱旅行的”驴友”,每次出行前最头疼的就是做攻略——景点太多不知道怎么安排、路线规划太复杂、预算总是超支…相信很多朋友都有同感吧?
直到最近发现了一个宝藏项目——TREK!这是一个开源的自托管旅行规划工具,简直就是为我们这些爱旅行的人量身打造的。有了它,旅行规划变得超级简单:实时协作让团队旅行更高效,交互式地图让路线规划一目了然,预算追踪帮你控制开支,打包清单再也不会丢三落四。
项目介绍
✨ 核心特性
- 🧭 智能行程规划: 拖拽式规划器,轻松安排每天的行程,支持跨天调整和重新排序
- 🗺️ 交互式地图: 支持 Leaflet 或 Mapbox GL,带3D建筑、地形、照片标记和路线可视化
- 🔍 地点搜索: 支持 Google Places 和 OpenStreetMap,找景点、餐厅、住宿超方便
- 📝 每日笔记: 带时间戳和图标的笔记功能,记录旅行点滴
- 🚗 路线优化: 自动排序地点,支持导出到 Google Maps
- 🌤️ 天气预报: 16天天气预报,提前做好出行准备
- 💰 预算追踪: 分类支出管理,支持多人分摊和多币种
- 🧳 打包清单: 分类模板、成员分配、进度追踪,再也不会漏东西
👥 团队协作功能
- 🔄 实时同步: WebSocket 实时同步,修改即时显示
- 👨👩👧👦 多用户协作: 支持多人共享行程,角色权限管理
- 📧 邀请链接: 一次性或可重复使用的邀请链接,带有效期
- 🔐 SSO 登录: 支持 Google、Apple、Authentik、Keycloak 等多种登录方式
- 💬 团队聊天: 群组聊天、共享笔记、投票、每日签到
📱 移动体验
- 📲 PWA 支持: iOS 和 Android 都能安装,无需应用商店
- 📴 离线支持: 离线缓存地图和数据,旅途中随时查看
- 🎨 原生体验: 全屏独立运行,主题状态栏,启动画面
实战体验
快速开始
TREK 支持多种部署方式,最简单的就是用 Docker:
# 生成加密密钥ENCRYPTION_KEY=$(openssl rand -hex 32)
# 启动容器docker run -d -p 3000:3000 \ -e ENCRYPTION_KEY=$ENCRYPTION_KEY \ -v ./data:/app/data -v ./uploads:/app/uploads mauriceboe/trekDocker Compose 部署
services: app: image: mauriceboe/trek:latest container_name: trek read_only: true security_opt: - no-new-privileges:true cap_drop: - ALL cap_add: - CHOWN - SETUID - SETGID tmpfs: - /tmp:noexec,nosuid,size=64m ports: - "3000:3000" environment: - NODE_ENV=production - PORT=3000 - ENCRYPTION_KEY=${ENCRYPTION_KEY:-} # generate with: openssl rand -hex 32 - TZ=${TZ:-UTC} - LOG_LEVEL=${LOG_LEVEL:-info} - ALLOWED_ORIGINS=${ALLOWED_ORIGINS:-} - APP_URL=${APP_URL:-} # required for OIDC + email links # - FORCE_HTTPS=true # behind a TLS-terminating proxy # - TRUST_PROXY=1 # - OIDC_ISSUER=https://auth.example.com # - OIDC_CLIENT_ID=trek # - OIDC_CLIENT_SECRET=supersecret # - OIDC_DISPLAY_NAME=SSO # - OIDC_ADMIN_CLAIM=groups # - OIDC_ADMIN_VALUE=app-trek-admins volumes: - ./data:/app/data - ./uploads:/app/uploads restart: unless-stopped healthcheck: test: ["CMD", "wget", "-qO-", "http://localhost:3000/api/health"] interval: 30s timeout: 10s retries: 3 start_period: 15s打开浏览器访问 http://localhost:3000 即可使用!

提示:首次登录时,需要从docker log 中获取默认账号密码
docker logs trak。
[DB] Running migration 125/125[DB] Migrations complete - schema version 125TREK - First Run: Admin Account CreatedPassword: XXXXXidJ4HS1创建旅行计划
登录后,点击”新建行程”开始规划你的五一之旅:
- 设置基本信息: 输入行程名称、目的地、日期范围
- 添加成员: 邀请家人或朋友一起协作规划
- 规划每日行程: 拖拽地点到每一天的计划中

搜索地点
使用地点搜索功能查找景点、餐厅、酒店:
# 搜索示例搜索 "北京故宫" → 查看评分、照片、营业时间 → 添加到行程支持 Google Places 和 OpenStreetMap 两种数据源,后者完全免费无需 API 密钥。

查看地图
交互式地图让你的行程一目了然:
- 查看所有计划地点的位置分布
- 可视化路线规划
- 3D 建筑和地形视图
- 照片标记展示
管理预订
记录航班、住宿、餐厅等预订信息:
| 类型 | 信息 |
|---|---|
| 航班 | 航空公司、航班号、确认号 |
| 住宿 | 酒店名称、地址、入住时间 |
| 餐厅 | 名称、时间、人数 |

预算追踪
设置旅行预算,实时追踪支出:
# 预算设置流程设置总预算 → 分类添加支出 → 查看饼图统计 → 多人分摊计算支持多币种和按人/按天拆分,帮你管好旅行经费。

打包清单
创建打包清单,确保出行前万事俱备:
# 打包清单示例衣物: 上衣×3, 裤子×2, 外套×1洗漱用品: 牙刷, 牙膏, 毛巾电子产品: 手机, 充电器, 相机支持模板、成员分配和进度追踪。

团队协作
和朋友一起规划行程:
- 发送邀请链接
- 实时看到对方的修改
- 群聊讨论行程细节
- 投票决定去哪玩

项目资源
GitHub地址: https://github.com/mauriceboe/TREK 体验地址: https://demo-nomad.pakulat.org/
觉得项目不错的话,记得给作者点个 star 支持一下!
项目特色: 自托管的旅行规划工具,支持实时协作、交互式地图、预算管理、打包清单、PWA 离线使用,适合家庭旅行和团队出游。
互动时间
五一假期就要来了,你是不是已经跃跃欲试了?赶紧用 TREK 规划你的完美假期吧!
如果你用了之后有什么有趣的体验,或者有什么旅行规划的好建议,欢迎在评论区和我交流。我会定期分享更多好用的工具和旅行攻略,记得关注我哦!祝大家五一假期玩得开心!🎉
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!
小王的博客














