Files
wiki/Catalogue-Self-Hosted/apps/app-warracker.md
T
2026-06-09 18:40:21 +02:00

5.8 KiB

title, created, updated, type, tags, confidence, contested, sources
title created updated type tags confidence contested sources
Warracker 2026-06-07 2026-06-07 app
catalogue
tracking
garanties
warranties
receipts
flask
postgresql
high false
https://selfh.st/apps/warracker
https://github.com/sassanix/warracker

Warracker

Un tracker de garanties produits qui centralise dates d'expiration, reçus et documents, avec alertes proactives et gestion complète des réclamations.

Métadonnée Valeur
Site web https://warracker.com/
GitHub https://github.com/sassanix/warracker
License AGPL-3.0
Langage principal Python (Flask) + JavaScript
Étoiles GitHub 1.4k
Dernière MAJ 2025-10-30 (v1.0.2)
Catégorie cat-tracking

Description

Warracker est né d'un constat personnel de son créateur : après que la garantie d'un lave-vaisselle familial ait expiré de quelques mois seulement, la facture inutilement payée a inspiré l'outil. Inspiré de Wallos (tracker d'abonnements), Warracker apporte la même rigueur au suivi des garanties produits. L'objectif est simple : ne plus jamais perdre une facture, être prévenu à temps d'une expiration, et pouvoir documenter une réclamation en un clic.

Chaque garantie enregistrée peut contenir : nom du produit, marque, modèle, numéro(s) de série multiples, vendeur, date d'achat, durée de garantie, prix, tags personnalisés, photo avec miniature, et tous les documents associés (reçus, factures, manuels) stockés en pièce jointe. Les numéros de série multiples sont particulièrement utiles pour les produits composés (par exemple un PC avec son écran et ses accessoires). Les statuts (active, expirée, archivée) permettent de garder un historique propre.

L'écosystème de notifications est très complet : email natif, et Apprise (100+ services : Discord, Slack, Telegram, ntfy, Gotify, Pushover…). Les rappels sont entièrement personnalisables en nombre de jours avant expiration. Le support multi-utilisateurs avec rôles, permissions, et vue globale pour les administrateurs est adapté aussi bien à un usage familial qu'à un petit commerce. L'intégration optionnelle avec Paperless-ngx permet de centraliser tous les documents scannés au même endroit, et l'OIDC SSO (Google, GitHub, Keycloak) facilite l'authentification.

Installation

Via Docker (recommandé)

services:
  warracker:
    image: ghcr.io/sassanix/warracker/main:latest
    container_name: warracker
    restart: unless-stopped
    ports:
      - "8005:80"
    volumes:
      - warracker-uploads:/data/uploads
    env_file:
      - .env
    depends_on:
      warrackerdb:
        condition: service_healthy

  warrackerdb:
    image: postgres:16-alpine
    restart: unless-stopped
    environment:
      - POSTGRES_DB=warracker
      - POSTGRES_USER=warracker
      - POSTGRES_PASSWORD=***    volumes:
      - warracker-db:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U warracker"]
      interval: 10s
      timeout: 5s
      retries: 5

volumes:
  warracker-uploads:
  warracker-db:

Créer un fichier .env à partir de env.example avec vos paramètres (SECRET_KEY, MAIL_*, APPRISE_URL…).

Installation manuelle

  1. Cloner : git clone https://github.com/sassanix/warracker.git
  2. Installer Python 3.11+ : pip install -r requirements.txt
  3. Préparer une base PostgreSQL et configurer l'URL de connexion
  4. Lancer les migrations Flask et démarrer Gunicorn + Nginx
  5. Se référer à la documentation officielle pour le détail des variables d'environnement

Configuration

  • Créer le premier compte via l'écran d'inscription : il dispose automatiquement des droits administrateur.
  • Configurer l'envoi d'emails (SMTP) ou une URL Apprise pour recevoir les alertes d'expiration.
  • Définir le délai de rappel par défaut (par exemple : 30, 7, 1 jours avant expiration).
  • Configurer la devise et le format de date selon votre localisation.
  • Activer l'OIDC SSO si vous avez déjà un fournisseur d'identité (Authentik, Keycloak, Google).
  • Brancher Paperless-ngx via les paramètres d'intégration pour la gestion documentaire avancée.

Alternatives

Open source

  • app-dumbassets — inventaire d'objets généraliste avec suivi de garantie basique
  • Wallos (même auteur conceptuel) — pour les abonnements, même approche épurée
  • HomeZada (non open source mais existe en SaaS) — gestion patrimoniale complète
  • Grocy — gestion d'inventaire domestique, pas spécifiquement conçu pour les garanties

Propriétaires

  • Sortly — inventaire visuel avec module garantie mais freemium limité
  • Warranty Life — service commercial dédié aux garanties, sans auto-hébergement

Sécurité

  • Authentification par email/password avec token de réinitialisation sécurisé, et option OIDC SSO.
  • HTTPS obligatoire en production, idéalement via reverse proxy (Traefik, Caddy) avec Let's Encrypt automatique.
  • Les uploads de documents sont stockés sur un volume dédié : sauvegarder régulièrement ce volume ET la base PostgreSQL.
  • Le SECRET_KEY Flask doit être une valeur aléatoire forte unique par instance.
  • En multi-utilisateurs, définir attentivement les rôles pour ne pas exposer la vue globale à des utilisateurs non-admin.
  • Ne pas exposer le port PostgreSQL sur l'interface réseau hôte.

Ressources

Pages Liées