ClamAVClient est une interface graphique moderne pour ClamAV, construite avec Tauri et Rust. Elle regroupe dans une application unique le scan, la quarantaine, l'historique des analyses, les mises a jour de signatures et la surveillance temps reel des dossiers.
L'objectif est de proposer une application legere, moderne et facile a distribuer sur Linux, Windows et macOS, sans aucune configuration requise pour l'utilisateur final.
Les builds sont disponibles sur GitHub Releases :
| Plateforme | Format | Lien |
|---|---|---|
| Linux | .deb (Ubuntu/Debian) |
Telecharger |
| Linux | .rpm (Fedora/RHEL) |
Telecharger |
| Linux | .AppImage |
Telecharger |
| macOS | .dmg |
Telecharger |
| Windows | .msi |
Telecharger |
- Dashboard — etat du moteur, statistiques et resume du dernier scan
- Scan rapide, complet ou personnalise avec progression en temps reel
- Quarantaine avec restauration ou suppression des fichiers suspects
- Logs JSON conserves localement pour l'historique complet
- Notifications systeme en cas de menace detectee
- Protection temps reel des dossiers surveilles
- Scan automatique du dossier
Downloads - Support optionnel de
clamdscanpour de meilleures performances - Mises a jour automatiques des signatures (freshclam, intervalle configurable)
- Demarrage automatique de la protection au lancement de l'app
- Elevation de droits automatique sur toutes les plateformes (pkexec, UAC, osascript)
ClamAVClient/
├── index.html # Template HTML de l'app Tauri
├── src/
│ ├── main.js # Logique frontend (Vanilla JS)
│ └── styles.css # Styles (theme sombre rouge)
├── src-tauri/
│ ├── src/
│ │ ├── main.rs # Point d'entree Tauri
│ │ ├── commands.rs # Commandes exposees au frontend
│ │ ├── clamav.rs # Moteur de scan ClamAV
│ │ ├── watcher.rs # Protection temps reel (inotify)
│ │ ├── auto_update.rs # Mise a jour automatique des signatures
│ │ ├── quarantine.rs # Gestion de la quarantaine
│ │ ├── storage.rs # Persistance locale (JSON)
│ │ ├── models.rs # Structures de donnees
│ │ └── paths.rs # Chemins systeme multi-plateforme
│ └── scripts/
│ ├── postinstall-linux.sh # Post-install deb/rpm
│ ├── preremove-linux.sh # Pre-desinstall deb/rpm
│ ├── postinstall-windows.ps1
│ └── preremove-windows.ps1
└── docs/ # Landing page GitHub Pages
sudo apt install clamav clamav-daemon libwebkit2gtk-4.1-dev build-essentialsudo dnf install clamav clamav-freshclam clamd webkit2gtk4.1-develbrew install clamav
xcode-select --installInstaller ClamAV et les Visual Studio C++ Build Tools.
# Installer les dependances
npm install
# Preparer le runtime ClamAV embarque
npm run prepare:clamav
# Lancer en mode developpement
npm run tauri dev
# Lancer avec elevation de droits (Linux/macOS)
npm run dev:elevatednpm install
npm run prepare:clamav
# Build complet (format selon la plateforme)
npm run build:desktop# Creer un tag => declenche le build GitHub Actions et attache les artefacts
git tag v1.2.0
git push origin v1.2.0Le workflow GitHub Actions compile simultanement sur Linux, macOS et Windows et publie les artefacts sur la release.
ClamAVClient necessite des droits eleves pour analyser les fichiers systeme :
- Linux — elevation via
pkexec(graphique) ousudo - macOS — elevation via
osascript - Windows — manifeste UAC integre au bundle MSI
Ce projet est sous licence MIT.
Les contributions sont les bienvenues. Forkez le projet, creez une branche, commitez vos modifications et ouvrez une Pull Request.
Ouvrez une issue GitHub pour tout bug ou question.


