Skip to content

Latest commit

 

History

29 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PackMom 旅遊打包檢查器

image

一個為我媽設計的旅行打包清單 PWA,純靜態網頁,不需後端、不需帳號,打開就能用。


緣起

每次出門旅遊,東西總是少帶、忘帶。這個小工具原本只是給自己家人用的,後來覺得也許對其他人有用,就整理成這個樣子放上來。


功能

  • 勾選清單:點一下物品即可標記「已放入行李」,勾選後自動沉到底部,讓沒打包的東西一直保持在視線最上方

  • 分類群組:物品以分類區塊呈現,整組全部打包完後,整個群組會自動淡出,視覺上更清爽

  • 多模板管理:可以建立多份清單(例如短途旅行、長途旅行),切換模板時清單狀態互不干擾

  • 複製模板:不用每次從頭建,直接複製現有模板來改,複製時所有勾選狀態會自動重置

  • 編輯模式:點「編輯清單」可新增、刪除、修改項目名稱,完成後再點一次關閉

  • 離線可用(PWA):第一次載入後即使沒網路也能正常使用,可安裝到手機主畫面

  • 本地儲存:所有資料存在瀏覽器的 localStorage,清空快取才會消失,不會上傳到任何伺服器


技術細節

項目 說明
架構 純 HTML + Vanilla JS(無框架)
樣式 Tailwind CSS(CDN)
動畫 FLIP 技術,勾選時滑動位移自然流暢
離線 Service Worker,Network First 策略
儲存 localStorage
安裝 Web App Manifest,支援 Android / iOS 加入主畫面

快速開始

不需要 Node、不需要打包工具,直接用瀏覽器打開 index.html 就能跑。

git clone https://github.com/你的帳號/PackMom.git
cd PackMom
# 用任意靜態伺服器起服務(Service Worker 需要 http/https,不能直接用 file://)
npx serve .

然後開 http://localhost:3000 就好了。


專案結構

PackMom/
├── index.html      # 主程式,所有邏輯都在這裡
├── manifest.json   # PWA 設定
├── sw.js           # Service Worker
├── icon-192.png    # App 圖示(小)
└── icon-512.png    # App 圖示(大)

預設清單內容

初次使用會載入一份基礎模板,分三個分類:

  • 醫療與身體防護:脖圍、電解質粉、暈車藥、過敏咳藥、氧木斯、蘆薈
  • 個人護理:乳液、修護霜/精華液、卸妝面紙
  • 生活雜項:洗衣袋、拖鞋、行李確認、VPN 帳號截圖

這份清單可以自由修改,改動會自動存到瀏覽器,重新整理也不會消失。


已知限制

  • 資料存在 localStorage,換瀏覽器或清除快取後需重新設定
  • 目前沒有匯出/匯入功能,多裝置之間的同步要手動複製
  • 手機版 Safari 加入主畫面後,Service Worker 的快取行為與 Android 略有不同

License

MIT

About

A personalized travel preparation assistant built to help my mom never forget an essential item.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages