Outil de synchronisation ultra-optimisé pour lancement quasi-instantané depuis un partage réseau.
Cette version repose uniquement sur l'application Electron et la ligne de commande. Les anciennes librairies expérimentales ont été retirées du dépÎt.
- Détection automatique des instances déjà ouvertes
- Kill automatique des processus existants (avec message)
- Instance unique garantie (pas de doublons)
- Répertoire cible créé automatiquement s'il manque
- Vérification source avant démarrage
- Messages informatifs pour chaque étape
- config.json externe à l'exe (pas intégré dans la compilation)
- Modification sans recompilation !
- Déploiement flexible avec différentes configs
- Messages colorés selon le statut (succÚs/warning/erreur)
- Animation pulse pour les warnings
- Feedback visuel en temps réel
# 1. Installer les dépendances
npm install
# 2. Créer votre configuration
node config-generator.js
# 3. Tester en mode développement
npm start
# 4. Compiler l'exécutable
.\build.ps1
> **Note** : lancez ce script depuis le dossier `SyncOtter` pour que les chemins soient correctement résolus.
# Build complet
.\build.ps1
# Test développement
npm start
# Lancement direct (gestion auto des processus)
./SyncOtter-Ultra.exe
# Depuis share réseau (copie automatique)
\\server\tools\SyncOtter\SyncOtter-Ultra.exe
- Compression maximale (tous niveaux)
- Portable (pas d'installation)
- Dépendances minimales (fs-extra uniquement)
- Démarrage immédiat (pas d'attente splash)
- Configuration externe (pas intégrée dans l'exe)
- ~15-25 MB au lieu de 100+ MB standard
- Copie temporaire automatique pour accélération
- Nettoyage auto aprĂšs utilisation
- Lancement quasi-instantanĂ© mĂȘme sur rĂ©seau lent
- Détection latence/bande passante et ajustement dynamique
- Transferts intelligents (compression, chunk, parallĂšle)
- Reprise sur erreur avec vérification d'intégrité
- Cache réseau local pour synchronisation différentielle
Important : Le fichier config.json
doit ĂȘtre placĂ© Ă cĂŽtĂ© de l'exe (pas intĂ©grĂ© dans la compilation).
{
"sourceDirectory": "\\\\server\\source",
"targetDirectory": "C:\\Local\\Target",
"excludeDirectories": [".git", "node_modules", ".vs", "bin", "obj"],
"excludePatterns": ["*.tmp", "*.log", "Thumbs.db"],
"executeAfterSync": "C:\\Local\\Target\\app.exe",
"appName": "Mon Application",
"appDescription": "Synchronisation et lancement automatique",
"parallelCopies": 8
}
- â Modification sans recompilation
- â DĂ©ploiement flexible (mĂȘme exe, configs diffĂ©rentes)
- â Facilite la maintenance
- â Partage de configs entre Ă©quipes
- Build une fois :
.\build.ps1
- Copier l'exécutable sur votre partage réseau
- Lancer depuis poste :
\\server\tools\SyncOtter\Indi-Suivi.exe
Version | Taille | Lancement Local | Lancement Share | Config |
---|---|---|---|---|
Standard | ~100MB | 3-5s | 10-15s | Intégrée |
Ultra | ~20MB | <1s | 2-3s | Externe |
# BUILD
.\build.ps1 # Build complet
npm start # Mode développement
# LANCEMENT
Indi-Suivi.exe # Lancement local
\\server\tools\SyncOtter\Indi-Suivi.exe # Lancement depuis share
Une version CLI est disponible dans package-cli.json
. Elle peut ĂȘtre lancĂ©e directement avec Node :
node src/cli-main.js
Ou compilée en exécutable via npm run build
dans ce package.
{
"sourceDirectory": "C:\\Dev\\MonApp",
"targetDirectory": "C:\\Deploy\\MonApp",
"excludeDirectories": [".git", ".vs", "bin\\Debug"],
"executeAfterSync": "C:\\Deploy\\MonApp\\start.bat",
"appName": "MonApp Production",
"appDescription": "Déploiement automatique v1.0",
"parallelCopies": 8
}
{
"sourceDirectory": "\\\\buildserver\\releases\\latest",
"targetDirectory": "C:\\Apps\\MonApp",
"excludePatterns": ["*.pdb", "*.log"],
"executeAfterSync": "C:\\Apps\\MonApp\\app.exe",
"appName": "Client Lourd CRM",
"appDescription": "Version depuis build server"
}
{
"parallelCopies": 16,
"sourceDirectory": "D:\\Source",
"targetDirectory": "C:\\Target",
"appName": "Application Rapide",
"appDescription": "Sync haute performance"
}
- Collecte temps réel des métriques (latence, throughput, erreurs)
- Logs JSON dans le dossier
logs/
avec rotation automatique - Rapports générés dans
reports/
- Rapport santé systÚme au démarrage
\\server\tools\SyncOtter\
âââ SyncOtter-1.0.0-portable.exe # â L'exe compilĂ©
âââ config.json # â Configuration externe
âââ README.txt # â Instructions (optionnel)
- đ "Chargement config: C:\Tools\config.json" â Config externe trouvĂ©e
- đ "Processus prĂ©cĂ©dent fermĂ©..." â Kill automatique rĂ©ussi
- đ "CrĂ©ation du rĂ©pertoire..." â RĂ©pertoire cible créé
â ïž "Aucun fichier Ă synchroniser" â Source vide- â "X fichiers synchronisĂ©s" â Mission accomplie !
La loutre gĂšre tout ! Configuration externe + gestion processus + rĂ©pertoires auto = ZĂ©ro souci ! đŠŠđȘ
config-generator.js
: génération de templates par environnement- Mise à jour automatique pilotée par
version-manager.js