From 74e1d96600036d443f9131a414eee9142a2bba52 Mon Sep 17 00:00:00 2001 From: deng Date: Wed, 3 Dec 2025 09:06:10 +0800 Subject: [PATCH] release 1.0.0 --- .gitignore | 3 +- CHANGELOG.md | 134 ++++++++++++++++++++++++++++ Dockerfile | 4 +- hiking_assistant/app.py | 7 +- hiking_assistant/assets/config.yaml | 3 + pyproject.toml | 2 +- uv.lock | 2 +- 7 files changed, 148 insertions(+), 7 deletions(-) create mode 100644 CHANGELOG.md diff --git a/.gitignore b/.gitignore index 6ca5ec0..ac9456d 100644 --- a/.gitignore +++ b/.gitignore @@ -9,4 +9,5 @@ wheels/ # Virtual environments .venv -*.tar \ No newline at end of file +*.tar +RELEASE_CHECKLIST.md \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..cb3241e --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,134 @@ +# 更新紀錄 + +## [1.0.0] - 2025-12-03 + +### 🎉 首次正式發布 + +歡迎使用**山山登山小助手** v1.0.0!這是第一個穩定版本,提供完整的登山路線分析與天氣查詢功能。 + +--- + +## ✨ 新功能 + +### 📊 路線分析 +上傳您的 GPX 檔案,立即獲得詳細的路線資訊: + +- **基本統計** + - 📏 總距離 + - ⬆️ 累積爬升 + - ⬇️ 累積下降 + - 🏔️ 最高/最低海拔 + - ⏱️ 預估行進時間 + +- **智慧計算** + - 自動過濾 GPS 雜訊,提供更準確的爬升/下降數據 + - 根據路線距離與爬升,智慧估算所需時間 + - 支援自訂行進速度參數 + +### 🗺️ 互動式地圖 + +輕鬆查看完整路線與重要地標: + +- **雙地圖切換** + - 🌍 OpenStreetMap - 適合查看周邊設施 + - 🗻 魯地圖 - 等高線地圖,適合登山路線規劃 + +- **清楚標示** + - 🔵 起點終點:顯示座標與海拔 + - 🟠 航點標記:自動顯示 GPX 檔案中的所有航點(如山屋、水源、岔路等) + - 🔴 路線軌跡:完整呈現登山路徑 + +- **互動功能** + - 點擊航點查看名稱與海拔 + - 縮放與拖曳地圖 + - 自由切換地圖圖層 + +### 📈 視覺化圖表 + +一目了然的路線特性: + +- **海拔剖面圖** + - 互動式圖表,滑鼠移動即顯示該點資訊 + - 清楚呈現整段路線的海拔變化 + - 幫助識別陡峭路段與平緩路段 + +- **坡度分析圓餅圖** + - 依坡度分為:平緩、緩坡、陡坡、急坡 + - 快速了解路線難度分布 + +### 🌤️ 天氣預報 + +出發前掌握天氣狀況,避免遇到惡劣天候: + +- **7 天天氣預報** + - 🌡️ 溫度:最高/最低/體感溫度 + - 💧 濕度:相對濕度 + - 🌧️ 降雨:降雨機率與預估雨量 + - 💨 風況:風速與風向(附安全等級指標 🟢🟡🟠🔴) + - ☀️ UV 指數:附等級指標(🟢🟡🟠🔴🟣) + - 🌅 日出/日落時間 + +- **日期選擇** + - 點選任一日期查看詳細天氣 + - 方便規劃多日行程 + +### 🏔️ 安全提醒 + +貼心的登山安全提示: + +- **高山症警示** + - 當路線海拔較高(超過2100公尺)時,提醒登山者注意高山症風險 + - 附上高山症預防資訊連結,幫助登山者提早準備與注意 + +### 🎨 使用體驗 + +簡潔的介面設計: + +- ✨ 臺灣山岳背景(南湖圈谷) +- 📱 響應式設計,支援電腦、手機 +- ⚡ 快速載入 + +--- + +## 💡 使用提示 + +1. **GPX 檔案來源** + - 可從健行筆記、Hikingbook 等網站下載 + - 也可使用登山 GPS App 記錄的航跡 + +2. **最佳使用方式** + - 載入路線 GPX 檔,搭配海拔剖面圖,規劃每日行程與體力分配 + - 出發前一天查看天氣預報,注意溫度、降雨機率與 UV 指數,準備適當裝備 + +3. **注意事項** + - 預估時間僅供參考,請依個人體能調整 + - 山區天氣變化快,仍需隨時注意實際天氣狀況 + - 行經高海拔地區,請留意高山症症狀 + +--- + +## 🙏 感謝使用 + +感謝您使用山山登山小助手!如果有任何建議或問題,歡迎回饋()。 + +祝您登山愉快,平安歸來!🏔️ + +--- + +## 📝 技術資訊 + +**適用環境** +- 瀏覽器:Chrome、Firefox、Safari(建議使用最新版本) +- 裝置:桌機、筆電、平板、手機 + +**檔案限制** +- 支援標準 GPX 格式 +- 檔案大小上限:30 MB + +**資料來源** +- 天氣資料:Open-Meteo API +- 地圖圖層:OpenStreetMap、魯地圖 + +--- + +更新日期:2025-12-03 diff --git a/Dockerfile b/Dockerfile index 0add9bb..0dc7894 100644 --- a/Dockerfile +++ b/Dockerfile @@ -47,5 +47,5 @@ EXPOSE 8800 CMD ["python", "-m", "streamlit", "run", "app.py"] # Build -# docker build --platform=linux/amd64 -t hiking_assistant:latest . -# docker save -o hiking_assistant.tar hiking_assistant:latest \ No newline at end of file +# docker build --platform=linux/amd64 -t hiking_assistant:1.0.0 . +# docker save -o hiking_assistant.tar hiking_assistant:1.0.0 \ No newline at end of file diff --git a/hiking_assistant/app.py b/hiking_assistant/app.py index 55cad1b..277abbb 100644 --- a/hiking_assistant/app.py +++ b/hiking_assistant/app.py @@ -180,7 +180,7 @@ class HikingAssistant: route_map = map_renderer.create_route_map(all_points, start_point, end_point, waypoints) if route_map: - st_folium(route_map, width=None, height=500, key='route_map', returned_objects=[]) + st_folium(route_map, width=None, height=self._config['app']['map']['height'], key='route_map', returned_objects=[]) else: st.error('無法渲染地圖') @@ -336,7 +336,10 @@ class HikingAssistant: # [Block3] # Footer st.divider() - footer_text = f'

{self._config["app"]["page_footer_text"]}

' + footer_text = ( + f'
' + f'

{self._config["app"]["page_footer_text"]}
v{self._config["app"]["version"]}

' + ) st.markdown(footer_text, unsafe_allow_html=True) diff --git a/hiking_assistant/assets/config.yaml b/hiking_assistant/assets/config.yaml index f8797af..bc7efd9 100644 --- a/hiking_assistant/assets/config.yaml +++ b/hiking_assistant/assets/config.yaml @@ -1,4 +1,5 @@ app: + version: 1.0.0 page_title: 山山登山小助手 page_favicon_path: ./assets/new_favicon.webp page_footer_text: ⚠️ 本服務提供之資訊僅供規劃參考,山區氣候瞬息萬變,請務必依據現場狀況與自身能力進行風險評估
Made with ❤️ by deng @@ -11,5 +12,7 @@ app: estimated_time: horizontal_speed: 3 vertical_speed: 400 + map: + height: 550 weather: forecast_days: 7 \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index e0c7878..2b3cec1 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "hiking-assistant" -version = "0.1.0" +version = "1.0.0" description = "This is a web app to analyze gpx for hiking planning" readme = "README.md" requires-python = ">=3.13" diff --git a/uv.lock b/uv.lock index 9e4c913..6ef12b5 100644 --- a/uv.lock +++ b/uv.lock @@ -227,7 +227,7 @@ wheels = [ [[package]] name = "hiking-assistant" -version = "0.1.0" +version = "1.0.0" source = { virtual = "." } dependencies = [ { name = "folium" },