TimeTagger
一款开源、Web 化的时间追踪工具,主打直观时间线、标签化管理、报表导出和自托管部署。
スマートダウンロード
プロジェクトのホームページへ
インストーラはまだありません — ソースリポジトリをご覧ください
自己搭的时间追踪器,标签化、报表全、还能搞番茄钟。
主な機能
- 交互式时间线,拖拽即可记录或调整时间块
- 用标签代替项目,简洁轻快
- 生成 PDF / CSV 报表,支持每日/周/月目标
- 内置番茄钟(实验性)
- 多设备同步,响应式界面
できないこと
- •多用户模式下密码需要使用 BCrypt 哈希,可直接用官网生成工具 https://timetagger.app/cred;反向代理认证需配置信任 IP 和用户头,否则可能被绕过;实验性番茄钟功能可能不稳定。
使用例
- 自由职业者追踪不同客户/任务用时
- 个人管理日常学习、运动、家务时间
- 小型团队内部轻量时间记录(需配置多用户认证)
詳細説明
TimeTagger 是一款轻量的开源时间追踪工具,专为个人和自由职业者设计。它以 Web 应用形式运行(可在本地或服务器上部署),提供直观的时间线界面,方便记录时间。它放弃复杂的项目概念,改用标签化分类。支持设置每日/每周/每月目标、生成 PDF/CSV 报表,还集成了实验性的番茄钟功能。多设备同步,单用户和多用户模式都支持,认证可通过密码或反向代理。后端基于 Python 异步框架(uvicorn + asgineer),前端使用 Python 编译为 JavaScript 的 PScript,速度快,部署简单(pip 或 Docker)。
トラブルシューティング & FAQ (2)
トラブル対応TimeTaggerをself-hostingする際に、/timetaggerというURL prefixを削除するにはどうすればよいですか?
Caddyのようなリバースプロキシを使用して、ルートリクエストを/timetagger/appにリダイレクトし、TimeTaggerコンテナにプロキシします。Caddyfileの例: 'timetagger.example.com { redir / /timetagger/app/; reverse_proxy localhost:8081 }'。または、__main__.pyに基づいてカスタムメインスクリプトを作成してパスを変更するか、統合後のPR #577の機能である引数'--path_prefix=/ --app-redirect=true'を使用します。
トラブル対応Unixソケットバインディングを使用してTimetaggerをリバースプロキシの背後で使用する場合の「Runtime error because there is no client scope」の修正方法
このエラーは、TimetaggerがUnixソケット(TIMETAGGER_BIND=unix:...)にバインドされ、プロキシ認証が有効になっている場合に発生します。これは、ASGIのrequest.scopeに'client'キーが含まれない可能性があるためです。回避策として、/timetagger/__main__.pyを別の場所にコピーし、157行目付近の信頼チェックブロックをコメントアウトするか変更してください。例えば、以下の記述を:
client = request.scope["client"][0]
if client not in TRUSTED_PROXIES:
return 403, {}, "forbidden: the proxy is not trusted"
次のように置き換えます:
if "client" in request.scope:
client = request.scope["client"][0]
if client not in TRUSTED_PROXIES:
return 403, {}, "forbidden: the proxy is not trusted"
その後、変更したファイルをエントリポイントとしてTimetaggerを起動します。これにより、クライアントIPが利用可能な場合に一部の信頼チェックが保持されます。または、環境が完全に信頼されている場合は、ブロック全体を単にコメントアウトしてください。現在、公式のパッチはまだ利用できません(Timetagger 25.06.1時点)。アップデートについては、イシューを追跡してください。
タグ
はじめ方
ソフトウェアをインストール
ダウンロードしたインストーラをダブルクリックし、指示に従ってください
步骤1:在终端执行 pip install -U timetagger
步骤2:执行 python -m timetagger 启动服务
步骤3:浏览器打开 http://localhost:8080 即可使用
- 步骤1:在终端执行 pip install -U timetagger
- 步骤2:执行 python -m timetagger 启动服务
- 步骤3:浏览器打开 http://localhost:8080 即可使用
チェックサムがありません
このプロジェクトは GitHub Release ページに SHA-256 チェックサムを公開していません
SHA256 チェックサム
チェックサムなし
GitHub Releases から直接ダウンロードし、ファイルの整合性をご自身で確認してください
本プラットフォーム上のすべての SHA-256 チェックサムは、プロジェクトの公式 GitHub Release ページから抽出されたもので、一切の改変はありません。GitHub Releases ページで独自に検証できます。
オープンソースの透明性
GitHub ソースを見るアンインストール情報
执行 pip uninstall timetagger 即可卸载。若使用 Docker 部署,则删除容器和镜像,并清理数据卷(默认挂载目录)。
追加の依存関係なし
ダウンロード後すぐに使用可能。追加のランタイムは不要です。
問題が発生?以下のFAQを確認
2 FAQs