---
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]]
