Projet open source
agalwood/Motrix avatar
agalwood/Motrix

Motrix : gestionnaire de téléchargement multiplateforme avec support BitTorrent et plugin

Motrix est un gestionnaire de téléchargements complet à l'interface épurée, qui prend en charge HTTP, FTP, BitTorrent et les liens Magnet sous Windows, macOS et Linux.

55 549 étoiles5 030 forksJavaScriptMIT

En bref

De quoi s’agit-il ?
Application de téléchargement Electron/React/TypeScript supportant HTTP, FTP, BitTorrent et magnets, avec serveur sans interface, extensions navigateur et architecture de plugin sandboxée.
À qui s’adresse-t-il ?
Motrix Turbo (v2) convient aux utilisateurs gérant téléchargements multiples sur desktop ou serveur NAS, disposant de navigateurs Chrome/Firefox pour intégration extension, ou d'environnements shell pour utilisation CLI. Avant adoption, vérifier : version v2 stable (actuellement beta 28), compatibilité du plugin SDK avec vos besoins d'extension, et configuration Docker requise pour déploiement headless (pairing device-code, storage volume).
Puis-je l’utiliser commercialement ?
À vérifier. La licence de ce dépôt n’entre pas dans les catégories que nous classons automatiquement : lisez son fichier LICENSE avant tout usage commercial.
Est-il encore maintenu ?
Oui. Les derniers commits datent d’il y a 1 jour.
En quel langage est-il écrit ?
Principalement JavaScript, d’après les statistiques de langage de GitHub.

Ces réponses reposent sur les données GitHub du projet (dernière synchronisation le 16 septembre 2026) et sur notre analyse. Elles ne constituent pas un avis juridique.

ANALYSE OPEN SOURCE APPROFONDIE

Architecture modulaire : Motrix Turbo v2 et protocole MDXP

Motrix Turbo (v2) reconstruit le gestionnaire depuis zéro en Electron, React et TypeScript, maintenant l'interface épurée v1 tandis que refactorisé complètement le noyau de téléchargement. Le projet expose deux modèles de déploiement : application desktop (macOS, Windows, Linux) et serveur headless (Node.js ou Docker avec interface web). Les composants communiquent via MDXP (Motrix Download eXchange Protocol), protocol ouvert basé JSON-RPC 2.0. Extensions navigateur et clients CLI interagissent au serveur via MDXP ; plugins opèrent en sandbox isolés sans accès direct réseau ou fichiers système.

La version courante 2.0.0-beta.28 (août 2026) indique une phase de stabilisation advanced (28 beta releases depuis juillet). Le README avertit explicitement : migration v1 vers v2 n'a pas encore été validée ; backup données v1 et tester v2 sur compte/machine séparé. Cette prudence signale que le projet priorise robustesse avant sortie stable.

Le noyau de téléchargement indépendant de l'UI permet réutilisation across desktop et serveur headless. La base SQLite persiste sessions permettant restauration après redémarrage. Tracker management automatisé inclut updates quotidiennes et health checks intégrés. Support UPnP et NAT-PMP mappage de port pour environnements firewalled.

Fonctionnalités et limites de connexion simultanée

L'interface énumère capacités support protocole : HTTP (vanilla + redirects), FTP, BitTorrent avec sélection par-fichier, liens magnet. Dashboard personnalisable affiche statistiques de transfert, activité live et tuiles de tâche. Notifications système signalent fin téléchargement ; notification center in-app archive alertes. Dark mode intégré avec toggle preference. System tray integration et launch-at-startup disponibles.

Les limites dimensionnelles sont énoncées : jusqu'à 10 tâches de téléchargement simultanées, jusqu'à 64 threads par tâche, contrôle de limite de vitesse upload/download avec profils multiples. Ces chiffres représentent hard limits du README, non pas recommandations ou defaults. La troncature liste de features du README (« and more ») suggère développement continu ; détails exacts non documentés.

Écosystème : CLI, extensions navigateur et SDK plugin

L'écosystème Motrix s'étend au-delà du desktop via quatre composants distribués : packet npm `@motrix/mdxp` définissant schemas JSON-RPC 2.0 et types Zod pour MDXP ; packet npm `@motrix/cli` fournissant commande `motrix` avec découverte auto du desktop et pairing remote. Extensions navigateur (Chrome et Firefox, Manifest V3) capturent téléchargements et les confient à Motrix avec pairing sécurisé via native messaging. Plugin SDK (quatre packets npm) inclut manifest schema, runtime API, CLI toolchain, et scaffolder create-motrix-plugin.

CLI quick start : `npm install -g @motrix/cli` (Node.js 22+), puis `motrix add https://example.com/file.iso --save-dir ~/Downloads`, `motrix list`, `motrix watch --stats` (stream NDJSON), `motrix pair --name my-nas` (pairing remote/headless).

Builtin plugins (signed `.moext` packages) incluent : Filename Template (renaming pré-sauvegarde), Page Scraper (extraction liens directs HTML), URL Resolver (fondation résolution site-spécifique).

Plugin SDK et sandbox QuickJS

Plugin SDK expose TypeScript API, manifest schema, project scaffolder et CLI pour workflow complet développement plugin. Commandes : `pnpm create motrix-plugin my-plugin`, `cd my-plugin && pnpm install`, `pnpm dev` (watch-build + launch Motrix avec plugin), `pnpm exec motrix-plugin validate`, `pnpm run pack` (create `.moext`), `pnpm exec motrix-plugin lint`.

Le scaffold par défaut commence avec URL resolver `beforeCreate` ; option `post-action` démarre avec notification plugin `afterComplete`. Plugins peuvent décrocher sur `beforeCreate`, `beforeFinalize`, `afterComplete`, `onError`, contribuer commandes/settings appelables, et accéder runtime via module virtuel `motrix:plugin-api`. Bundling : single ES2020 module tournant dans sandbox QuickJS sans Node.js APIs, accès réseau direct, ou file I/O. Déclaration manifest : activation events, required capabilities, URL-scoped host permissions. Motrix affiche demandes permissions avant grant utilisateur.

Documentation SDK GitHub inclut templates, manifest+runtime API references, localization patterns, sandbox constraints, packaging, distribution guidance.

Installation desktop et déploiement headless

Download desktop : motrix.app sélectionne package par OS. macOS : Apple Silicon-native (`arm64`) recommandé ; Intel aussi supporté. Windows : installer Motrix-Setup vs. portable `.zip` choice. Ligne de commande : Homebrew macOS (`brew install motrix`), Chocolatey/Scoop Windows, AppImage/snap/AUR/Flatpak Linux. AppImage requiert intégration desktop manuelle ; AppImageLauncher suggéré. Ancienne snap : astuce icon tray workaround documentée. Build depuis source : `yarn` (install), `yarn run dev` (dev mode), `yarn run build` (release build) ; Apple Silicon : `yarn run build:applesilicon` séparé. Binaires release : répertoire `release/` post-build.

Headless deployment : Docker-ready, inclut web UI NAS/home server. Device-code pairing sécurisé pour remote CLI et agent clients (credentials non-transmis). Data directory volume mapping required pour persistence cross-container.

Stack technologique et dépendances build

Stack : Electron (UI desktop), React (frontend logic), TypeScript (type-safe codebase), JSON-RPC 2.0 (protocol), QuickJS (plugin sandbox). Le README énumère dépendances sans version précise minimale Node.js ou yarn. Erreur build connue : Electron installation fails ; solution `rm -rf node_modules/electron && yarn install`.

Migration v1 à v2 : session SQLite restore automatique, mais validation migration données complète non finalisée. Test Beta : backup v1 d'abord, tester v2 sur OS/machine séparé, vérifier release notes v2.0.0-beta.28 complets avant prod deployment.

Internationalisation et maintenance communautaire

Support linguistique : 27 locales (arabe, bulgare, catalan, allemand, grec, anglais, espagnol, persan, français, hongrois, indonésien, italien, japonais, coréen, norvégien bokmål, néerlandais, polonais, portugais Brésil, roumain, russe, thaï, turc, ukrainien, vietnamien, chinois simplifié, chinois traditionnel). Anglais et chinois simplifié maintenus par projet. Autres locales listing contributeurs mainteneurs. Nouveau contributors invités lire translation guide avant PR. Locale selection mechanism non documenté (system default assumed).

Licence MIT (2018-present Dr_rOot) octroie utilisation, modification, distribution commerciale/personnelle. Logiciel fourni « tel quel » sans garantie. README n'énumère pas engagement support, cycle release stabilité, ou posture sécurité spécifique.

Conclusion éditoriale

Motrix Turbo (v2) convient aux utilisateurs gérant téléchargements multiples sur desktop ou serveur NAS, disposant de navigateurs Chrome/Firefox pour intégration extension, ou d'environnements shell pour utilisation CLI. Avant adoption, vérifier : version v2 stable (actuellement beta 28), compatibilité du plugin SDK avec vos besoins d'extension, et configuration Docker requise pour déploiement headless (pairing device-code, storage volume).

Sources officielles

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Notes de la communauté

Notes de la communauté