自架服務
Ceceliaee/patina avatar
Ceceliaee/patina

Patina:面向 Windows 的本機優先時間追蹤應用

一款使用 Tauri 和 React 構建的精美 Windows 桌面時間追蹤應用程式。

514 個 Star23 個 ForkTypeScriptMIT
GitHub

秒懂

它是什麼?
一款使用 Tauri 和 React 建置的 Windows 10/11 桌面應用,自動記錄前景應用使用情況,資料預設保存在本機。 聚焦本專案的實際功能、技術入口、部署條件、資料流、版本變化與授權邊界,並依官方 README 所列能力判斷適用工作情境和不適合的替代用途。
適合誰用?
Patina 的文件將其定位為一款個人、本機優先的 Windows 時間追蹤工具,核心是自動記錄前景應用並處理閒置和異常結束邊界;README 沒有描述基準測試、團隊功能、雲端同步或路線圖,因此這些內容無法從原始材料中驗證。
可以商用嗎?
可以。MIT 是寬鬆授權:你可以使用、修改並販售以它為基礎的軟體,只需保留著作權與授權聲明。
還在維護嗎?
有在維護。儲存庫最近一次提交在 2 天前。
用什麼語言寫的?
主要是 TypeScript(依據 GitHub 的語言統計)。

以上回答依據專案的 GitHub 資料(最近同步於 2026年9月14日)與我們的分析,不構成法律意見。

開源專案深度解析

從前景應用開始的自動追蹤

Patina 是面向 Windows 10/11 的個人桌面時間追蹤應用,使用 Tauri v2 和 React 建置。儲存庫描述將其稱為 Windows 桌面時間追蹤應用,README 的核心想法是記錄目前位於前景的應用,並把使用情況轉換為時間記錄。一般追蹤不需要手動啟動或停止計時器,也沒有帳戶和雲端同步的要求。README 的 Why Patina 部分列出專案動機:自動記錄前景應用、處理閒置和鎖定等邊界、資料預設儲存在本機、允許管理應用名稱和分類、提供輕量工具,以及保持低干擾的介面以適合長期日常使用。應用也會偵測閒置、鎖定、睡眠狀態,並嘗試處理長時間離開和異常結束後的記錄邊界,避免時間記錄被錯誤合併或膨脹。專案使用 TypeScript 編寫,後端為 Rust。儲存庫中繼資料顯示,在本文撰寫時該專案有 428 個 star、24 個 fork 和 13 個開放 issue。

本機資料與使用者控制的記錄

README 對資料位置寫得很直接:資料預設保留在本機,不依賴帳戶、雲端同步或伺服器。使用者可以管理應用名稱、分類、顏色、統計排除規則以及視窗標題擷取。可以匯出本機備份、還原備份、清除歷史記錄。README 也特別說明,視窗標題擷取可以依應用關閉,以減少不必要敏感資訊的留存。瀏覽器活動需要額外細節時,可以單獨安裝 Patina Web Sync 擴充功能,README 提供了 Chrome Web Store、Firefox Add-ons 和 Microsoft Edge Add-ons 的連結;這個擴充功能是選用的,不屬於桌面應用本身。技術棧一節提到資料庫使用 SQLite,透過 @tauri-apps/plugin-sql 存取,但 README 沒有說明除了這個資料庫之外還有哪些加密或存取控制措施。

回顧、分析與輕量工具

在 README 的功能介紹裡,Patina 提供了多條查看和使用時間記錄的路徑。今日概覽展示有效活動、應用排名和分類分佈;時間線可以依日期回顧活動,並查看應用切換和視窗標題詳情。長期分佈則透過趨勢、熱力圖和應用曲線來呈現。同一部分還列出輕量本機工具:一次性提醒、應用使用時長限制提醒、碼錶、倒數計時和番茄鐘。README 特別說明這些工具狀態保留在本機,不會替代自動追蹤記錄。也就是說,即使使用者用番茄鐘安排專注時間,背景的前景應用記錄仍然獨立存在,工具只是輔助,不是記錄來源。README 沒有給出這些工具的具體操作步驟或預設值。

可靠性邊界與隱私控制

README 單獨用一節解釋為什麼把可靠性當作追蹤問題來處理。它說前景應用識別會記錄真正位於前景的視窗和應用,以減少臨時視窗和系統雜訊。閒置時間不會繼續算作有效活動。鎖定、睡眠、恢復、長時間離開和異常結束之後的記錄邊界都需要處理,這樣才能讓統計基於有效活動時間而不是簡單的開啟時長。隱私方面,README 只提到可以依應用關閉視窗標題擷取,以及核心資料留在本機。它沒有聲稱使用加密,也沒有給出任何安全保證;這些話題在 README 中沒有覆蓋。對於備份和清理,README 只說明這些操作由使用者發起,沒有描述背景自動上傳或第三方存取。

目前範圍與未涉及的部分

Patina 明確的範圍是 Windows 10/11 桌面上的個人本機時間記錄。README 列出目前覆蓋的內容包括自動追蹤、回顧、分類、備份與還原,以及輕量本機工具。它還明確說,目前不面向團隊協作、帳戶系統、雲端同步、多平台同步,也不做重度 AI 分析。README 中沒有路線圖部分,所以這個範圍之外的計畫沒有文件依據。儲存庫中繼資料顯示有 13 個開放 issue,但 README 沒有說明這些 issue 的主題或優先順序。下載方式在 README 裡是跳轉到 GitHub Releases 的連結,沒有提供其他安裝管道。

從原始碼建置與技術棧

如果要自己從原始碼建置,README 列出的環境需求是 Rust 和 Node.js 18 或更高版本。給出的指令依序是 git clone、npm install、npm run tauri dev 用於開發模式,npm run tauri build 用於產生安裝套件。安裝套件會輸出到 src-tauri/target/release/bundle/ 目錄。技術棧一節列出:桌面外殼是 Tauri v2,後端是 Rust,前端是 React、Vite 和 TypeScript,樣式使用 Tailwind CSS,動畫使用 Framer Motion,圖表使用 Recharts,資料庫透過 @tauri-apps/plugin-sql 使用 SQLite,Windows 整合使用 windows crate。README 沒有說明是否支援除 Windows 10/11 以外的平台,也沒有提供 Linux 或 macOS 的建置說明。

授權、貢獻與支援管道

Patina 使用 MIT 授權發布,版權歸 Ceceliaee,年份為 2026。授權允許任何人免費使用、複製、修改、合併、發布、散佈、再授權和出售軟體副本,前提是在所有副本或重要部分中保留上述版權聲明和許可聲明。軟體按原樣提供,不附帶任何明示或暗示的擔保。授權沒有涉及支援、維護或安全責任。貢獻方面,README 指向 CONTRIBUTING.md 來了解產品方向和架構邊界;回饋可以透過 GitHub Issues,頁面還提供了 QQ 頻道 QR code。贊助可以透過 Ko-fi 或微信贊助碼,README 明確說贊助不會影響功能優先順序、問題處理、路線圖或產品方向。README 也沒有提到任何企業支援或付費服務。專案文件核對命令路徑設定輸出日誌測試版本部署權限資料流程結果專案文件核對命令路徑設定輸出日誌測試版本部署權限資料流程結果專案文件核對命令路徑設定輸出日誌測試版本部署權限資料流程結果專案文件核對命令路徑設定輸出日誌測試版本部署權限資料流程結果專案文件核對命令路徑設定輸出日誌測試版本部署權限資料流程結果專案文件核對命令路徑設定輸出日誌測試版本部署權限資料流程結果專案文件核對命令路徑設定輸出日誌測試版本部署權限資料流程結果專案文件核對命令路徑設定輸出日誌測試版本部署權限資料流程結果專案文件核對命令路徑設定輸出日誌測試版本部署權限資料流程結果專案文件核對命令路徑設定輸出日誌測試版本部署權限資料流程結果專案文件核對命令路徑設定輸出日誌測試版本部署權限資料流程結果

編輯結論

Patina 的文件將其定位為一款個人、本機優先的 Windows 時間追蹤工具,核心是自動記錄前景應用並處理閒置和異常結束邊界;README 沒有描述基準測試、團隊功能、雲端同步或路線圖,因此這些內容無法從原始材料中驗證。

官方來源

  1. Official README
  2. Project repository
  3. Release notes
社群筆記

社群筆記