--- title: Traggo created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, tracking, time-tracking, go, minimalist] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Time+Tracking, https://github.com/traggo/server] --- # ⏱️ Traggo > Time tracking minimaliste et rapide : un bouton pour démarrer, un tag, un projet. L'API REST expose tout pour intégration à vos outils. | Métadonnée | Valeur | | :--- | :--- | | **Site web** | [traggo.net](https://traggo.net) | | **GitHub** | [traggo/server](https://github.com/traggo/server) | | **License** | AGPL-3.0 | | **Langage principal** | Go | | **Étoiles GitHub** | 85 ⭐ | | **Dernière MAJ** | 2026-02-14 | | **Catégorie** | [[cat-tracking]] | ## Description **Traggo** est un outil de **time tracking** radicalement simple, écrit en Go. Le principe : un seul bouton « start », on entre un tag ou un projet, et le chrono tourne. On arrête quand on a fini, on passe au suivant. Pas de catégories arborescentes complexes, pas de hiérarchie à six niveaux : du **temps**, des **tags**, des **projets**, c'est tout. L'interface web est ultra-épurée et fonctionne aussi sur mobile (responsive). L'**API REST** complète permet d'intégrer Traggo avec des outils tiers (Zsh prompt, Raycast, scripts Bash, automatisations Home Assistant) pour logger automatiquement. Les **exports CSV** et les **statistiques par tag** facilitent la facturation client ou le suivi personnel. Traggo est l'anti-Toggl : **pas de SaaS, pas de comptes multiples, pas de verrouillage propriétaire**. Pour les freelances et les développeurs qui veulent juste **mesurer leur temps** sans friction, c'est l'une des meilleures options self-hosted. Le projet est stable, peu maintenu récemment (raison du tag `medium` sur la fraîcheur), mais reste pleinement utilisable. ## Installation ### Via Docker (recommandé) ```yaml version: "3.8" services: traggo: image: ghcr.io/traggo/server:latest container_name: traggo restart: unless-stopped ports: - "3030:3030" environment: - TRAGGO_SERVER_LISTEN=:3030 - TRAGGO_DATABASE_DRIVER=sqlite - TRAGGO_DATABASE_SQLITE_PATH=/data/traggo.db - TRAGGO_SECRET=change...es volumes: - traggo_data:/data # optionnel : reverse-proxy Caddy ou Traefik devant caddy: image: caddy:2-alpine container_name: traggo-caddy restart: unless-stopped ports: - "443:443" - "80:80" volumes: - ./Caddyfile:/etc/caddy/Caddyfile - caddy_data:/data depends_on: - traggo volumes: traggo_data: caddy_data: ``` ### Installation manuelle 1. Télécharger la dernière release : `wget https://github.com/traggo/server/releases/latest/download/traggo-linux-amd64.tar.gz` 2. Décompresser : `tar xzf traggo-linux-amd64.tar.gz && sudo mv traggo /usr/local/bin/` 3. Créer `/etc/traggo.env` avec les variables (cf. template) 4. Créer le service systemd (`/etc/systemd/system/traggo.service`) : ```ini [Unit] Description=Traggo After=network.target [Service] EnvironmentFile=/etc/traggo.env ExecStart=/usr/local/bin/traggo Restart=always [Install] WantedBy=multi-user.target ``` 5. `systemctl daemon-reload && systemctl enable --now traggo` 6. Ouvrir le port 3030 derrière un reverse proxy HTTPS (Caddy / Traefik / Nginx) ## Configuration - Créer le **premier utilisateur** depuis l'UI web - Définir un **secret fort** (`TRAGGO_SECRET`) pour signer les sessions - Activer l'**authentification OIDC** (Authentik, Keycloak) en configurant les variables - Configurer les **tags récurrents** dans l'UI (par projet, par client) - Brancher un **reverse proxy HTTPS** (Traefik + Let's Encrypt) - Utiliser l'**API** (token Bearer) depuis vos scripts (Zsh, Raycast, Alfred) - Activer les **exports CSV** depuis l'UI (par jour, par tag) ## Alternatives ### Open source - **Kimai** — time tracking + facturation, plus complet - **Anuko Time Tracker** — PHP, plus ancien - **TimeTagger** — Python, single-user friendly - **Wakapi** — time tracking pour développeurs (WakaTime-like) - **Titra** — time tracking pour équipes ### Propriétaires - **Toggl Track** — référence cloud, freemium - **Harvest** — facturation intégrée, équipes - **Clockify** — freemium très généreux - **RescueTime** — tracking passif de l'activité PC - **WakaTime** — tracking auto pour développeurs ## Sécurité - Changer le **TRAGGO_SECRET** et le garder secret (utilisé pour les sessions) - Activer **HTTPS obligatoire** (Traefik / Caddy / Let's Encrypt) - Activer la **2FA** (TOTP) sur les comptes utilisateurs - Restreindre l'accès à l'**API** par IP source ou via OIDC reverse proxy - Sauvegarder **traggo.db** régulièrement (SQLite = simple `cp` suffit) - Choisir un mot de passe **fort** pour le compte admin - Surveiller l'**espace disque** (SQLite grossit avec l'historique) ## Ressources - [Site officiel](https://traggo.net) - [Documentation](https://docs.traggo.net) - [Code source](https://github.com/traggo/server) - [API Reference](https://docs.traggo.net/api/) - [Issue tracker](https://github.com/traggo/server/issues) ## Pages Liées - [[cat-tracking]] - [[recettes-docker-compose]] - [[cat-time-tracking]]