--- title: Filestash created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, file-management, go, react, s3, sftp, modern-ui] confidence: high contested: false sources: [https://selfh.st/apps/?tag=File+Management, https://github.com/mickael-kerjean/filestash] --- # Filestash 🪣 > File manager web moderne écrit en Go avec frontend React/TypeScript : se connecte à **S3, SFTP, FTP, WebDAV, S3-compatible, Git, LDAP, Google Drive** et expose une UX soignée (drag&drop, preview Office/PDF/images, partage public). L'alternative design aux projets chinois. | Métadonnée | Valeur | | :--- | :--- | | **Site web** | https://www.filestash.app | | **GitHub** | https://github.com/mickael-kerjean/filestash | | **License** | AGPL-3.0 | | **Langage** | Go + React/TypeScript | | **Étoiles** | 984 ⭐ | | **Dernière MAJ** | 2026-05 | | **Catégorie** | [[cat-file-management]] | ## Description Filestash est le projet d'un développeur français (Mickael Kerjean) qui a voulu réconcilier **design moderne** et **gestion de fichiers multi-protocoles**. L'idée est née d'un constat : les file managers classiques sont soit jolis mais mono-backend ([[app-file-browser]]), soit multi-backends mais moches (Alist, OpenList). Filestash vise les deux. L'UI est **clairement la plus aboutie** de la catégorie : sidebar avec treeview, listing en grille ou liste, preview intégrée pour **PDF, images, vidéos, audio, ePub, Office** (via OnlyOffice ou Collabora optionnels), drag&drop natif, partage par lien avec expiration, recherche full-text côté serveur. Le frontend est en **React + TypeScript** avec un build webpack bien fait, et le backend en Go avec plugins par protocole (S3 via AWS SDK, SFTP via pkg/sftp, etc.). Les **backends supportés** sont nombreux : filesystem local, S3, S3-compatible (MinIO, Wasabi, Backblaze B2), FTP, FTPS, SFTP, WebDAV, Git, **Google Drive**, **Dropbox**, **OneDrive**, et via plugins LDAP/AD. L'authentification peut se faire via **plusieurs backends** simultanément : local, LDAP, OAuth2 (Google/GitHub), OIDC, SAML. L'architecture est modulaire : chaque "backend" est un plugin Go, et il existe un système d'**extensions** pour ajouter des viewers (OnlyOffice, Collabora) ou des fonctionnalités. La **version gratuite AGPL** est complète, une offre **Filestash Cloud** (SaaS) existe mais le projet reste 100% open source. ## Installation ### Option 1 : Docker Compose (recommandé) ```yaml services: filestash: image: machines/filestash:latest container_name: filestash restart: unless-stopped ports: - "8334:8334" volumes: - ./data:/app/data environment: - APPLICATION_URL=http://localhost:8334 ``` UI sur `http://localhost:8334`. Créer un compte admin au premier accès (wizard intégré). ### Option 2 : Binaire ```bash wget https://github.com/mickael-kerjean/filestash/releases/latest/download/filestash_linux_amd64.tar.gz tar xf filestash_linux_amd64.tar.gz ./filestash ``` ## Configuration - **Premier accès** : wizard web pour créer l'admin, puis ajouter un "connection" (backend de stockage). - **Plugins** : aller dans Admin → Plugins pour activer OnlyOffice/Collabora, le chiffrement E2E, le partage, etc. - **Auth** : configurer LDAP, OAuth2, ou OIDC dans Admin → Authentication. - **Stockage des sessions** : SQLite par défaut, peut basculer sur PostgreSQL/MySQL pour la prod. - **Reverse proxy** : subpath supporté, configurer `APPLICATION_URL` et `X-Forwarded-*`. - **HTTPS** : en mode natif, Filestash peut gérer les certificats ACME automatiquement. ## Alternatives ### Open Source - [[app-file-browser]] — Plus simple, mono-backend - [[app-openlist]] — Beaucoup plus de backends (chinois) - [[app-filebrowser-quantum]] — File Browser + éditeur de code - [[app-filerun]] — UX riche, PHP commercial - [[app-nextcloud]] — Cloud complet - [[app-cloudreve]] — Cloud self-hosted - [[app-filegator]] — PHP multi-user ### Propriétaires - CloudFuze - MultCloud - Cyberduck (client, pas serveur) - Mountain Duck ## Sécurité - HTTPS obligatoire ([[app-caddy]] / [[app-traefik]] recommandé). - **Chiffrement E2E optionnel** : Filestash supporte un mode "encrypted storage" où les fichiers sont chiffrés côté client (AES-GCM) avant d'être uploadés. - **Auth forte** : brancher LDAP/AD ou OIDC pour les entreprises, sinon OAuth2. - **Backends S3** : utiliser des **IAM roles** ou des clés à scope limité (pas la clé root du compte AWS). - **Rate limiting** : activer dans la config (par défaut 100 req/min par IP). - **CSRF** : Filestash gère les tokens CSRF par session, ne pas désactiver. - **Logs d'audit** : activer dans Admin → Logs pour tracer les accès fichiers. - Mettre à jour régulièrement, le projet a un rythme soutenu (1 release/mois). ## Ressources - [Site officiel](https://www.filestash.app) - [Documentation](https://www.filestash.app/docs/) - [GitHub](https://github.com/mickael-kerjean/filestash) - [Demo](https://demo.filestash.app) - [selfh.st/apps/?tag=File+Management](https://selfh.st/apps/?tag=File+Management) ## Pages Liées - [[cat-file-management]] — Catégorie parente - [[app-file-browser]] — Concurrent plus simple - [[app-openlist]] — Concurrent multi-backends - [[app-onlyoffice]] / [[app-collabora]] — Office viewers intégrés - [[app-caddy]] / [[app-traefik]] — Reverse proxy HTTPS - [[recettes-docker-compose]] — Templates Docker - [[securisation-home-lab]] — Bonnes pratiques