- Vérification auto au démarrage (après 5s) via API /releases/latest - Dialog optionnel avec snooze : 1j / 2j / 5j / 1sem / 2sem / indéfiniment - Bouton "Mises à jour" dans la topbar (ignore le snooze) - tools/release.js : script pour publier une release et uploader les binaires Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Farm Tracker — application Linux
Une vraie application de bureau (Electron). Au premier lancement, elle te demande
ton dossier .minecraft, une seule fois. Tu arrives ensuite sur un écran
d'accueil avec une liste d'outils (pour l'instant : Farm Tracker). Ouvrir un outil
ne ferme pas les autres : ils continuent de tourner en arrière-plan, même quand
tu es revenu à l'accueil ou sur un autre outil.
Tout se sauvegarde automatiquement sur le disque : kills, items, cols, prix de vente, et chances de drop — rien à exporter ni recharger toi-même au jour le jour. Au prochain lancement, l'appli retrouve directement ton dossier et reprend exactement où tu en étais.
Où sont stockées les données (et pourquoi en deux fichiers)
Tout est dans ~/.config/farm-tracker/ :
app-state.json— le dossier Minecraft choisi, et l'état de session de chaque outil (kills, xp, items, prix...). Personnel, pas fait pour être partagé.dropstats.json— uniquement les chances de drop cumulées. Volontairement séparé du reste : c'est le fichier fait pour être lu, partagé et fusionné avec celui d'autres joueurs (voir plus bas). Les noms d'items y sont stockés en clair ("name": "Peau de Sanglier") en plus du format coloré du jeu, pour que tu puisses l'ouvrir et le comprendre sans l'appli.
1. Installer et lancer
node -v # si absent : sudo apt install nodejs npm (ou via nvm)
npm install
npm start
2. (Optionnel) Construire un AppImage
npm run dist
Voir la section "entrée de menu" plus bas si tu veux l'épingler à ton menu d'applications.
3. Partager et fusionner les chances de drop entre joueurs
C'est le point important si plusieurs personnes farment le même mob : un seul joueur a un échantillon limité (quelques dizaines de kills), mais en combinant 15 joueurs vous obtenez un échantillon de plusieurs centaines de kills — bien plus fiable pour estimer les drops rares.
Option A — depuis l'appli (le plus simple) :
Dans le panneau "Chance de drop" de Farm Tracker :
- 📤 Exporter mes stats → choisis où sauvegarder ton fichier (clé USB, Discord, dossier partagé...).
- 📥 Importer / fusionner… → sélectionne plusieurs fichiers à la fois (ceux de tous les autres joueurs) : tout est additionné en une seule fois dans tes propres stats.
Option B — en ligne de commande (pratique si quelqu'un centralise les 15 fichiers de tout le monde) :
node tools/merge-dropstats.js fusion.json joueur1.json joueur2.json joueur3.json ...
Ça fusionne tous les fichiers donnés en un seul fusion.json, avec un résumé
affiché (mobs suivis, kills cumulés). Ce script ne nécessite que Node — pas
besoin d'installer Electron juste pour fusionner des fichiers. Le fichier
résultat peut ensuite être réimporté par n'importe qui via l'option A.
4. Utilisation générale
- Accueil : clique sur une tuile pour ouvrir l'outil correspondant.
- 🏠 Accueil (en haut) : revient à la liste d'outils sans rien arrêter.
- Changer de dossier (en haut, global) : repointe tous les outils vers un
autre dossier
.minecraft. Remet à zéro la session de farm en cours, mais ne touche jamais aux chances de drop déjà enregistrées. - Réinitialiser la session (dans Farm Tracker) : remet à zéro kills/xp/items de la session affichée, sans toucher aux chances de drop.
- Réinitialiser (dans le panneau Chance de drop) : efface l'historique cumulé de drop — sépare exprès de la réinitialisation de session, exporte avant si tu veux le garder.
5. Sauvegarder / migrer tes données manuellement
cp -r ~/.config/farm-tracker ~/backup-farm-tracker-$(date +%F)
Pour restaurer (l'appli doit être fermée) :
cp -r ~/backup-farm-tracker-2026-06-28/* ~/.config/farm-tracker/
6. Entrée de menu (AppImage)
Si tu as construit l'AppImage (npm run dist), utilise
install-desktop-entry.sh (fourni séparément) pour créer l'entrée de menu —
il détecte automatiquement le fichier .AppImage dans dist/.
Structure du projet
farm-tracker-app/
├── package.json
├── main.js → process principal : fenêtre, fichiers, persistance
├── preload.js → pont sécurisé entre main.js et l'interface
├── lib/
│ └── dropstats.js → logique de fusion, partagée appli + script CLI
├── tools/
│ └── merge-dropstats.js → fusionne N fichiers dropstats.json en ligne de commande
└── renderer/
└── index.html → écran dossier -> accueil -> outils, toute la logique UI