Description
xBackBone est une application PHP qui fait office de « récepteur » pour les screenshots et fichiers envoyés depuis des postes clients. Sa cible principale est ShareX (Windows) : il suffit de configurer l'URL de destination dans ShareX pour que chaque capture écran soit uploadée, retaillée, et получи un lien court partageable.
L'application supporte plusieurs backends de stockage (local, S3, Imgur, FTP) et propose un explorateur web minimaliste pour gérer, organiser, partager et supprimer les uploads. Elle embarque un système d'utilisateurs, de tags, d'API REST, et un redimensionnement automatique des images.
Idéal pour les créateurs de contenu, les développeurs qui partagent fréquemment des logs/screenshots, ou les équipes qui veulent un imgur-like privé. C'est l'une des rares solutions à offrir une intégration ShareX aussi aboutie.
Installation
Option 1 : Docker Compose (recommandé)
version: '3.8'
services:
xbackbone:
image: sergix44/xbackbone:latest
container_name: xbackbone
restart: unless-stopped
ports:
- "8090:80"
environment:
- APP_URL=http://localhost:8090
- APP_KEY=base64:VOTRE_CLE_32_CHARS=
- DB_CONNECTION=sqlite
- DB_DATABASE=/var/www/html/database/database.sqlite
- LOG_CHANNEL=daily
- STORAGE_DISK=local
- ADMIN_USERNAME=admin
- ADMIN_PASSWORD=***
volumes:
- xbackbone-data:/var/www/html/storage
- xbackbone-db:/var/www/html/database
labels:
- "traefik.enable=true"
- "traefik.http.routers.xbackbone.rule=Host(`share.example.com`)"
- "traefik.http.routers.xbackbone.entrypoints=websecure"
- "traefik.http.routers.xbackbone.tls.certresolver=letsencrypt"
- "traefik.http.services.xbackbone.loadbalancer.server.port=80"
networks:
- proxy
volumes:
xbackbone-data:
xbackbone-db:
networks:
proxy:
external: true
Option 2 : Installation manuelle (LAMP)
git clone https://github.com/sergix44/xbackbone.git cd xbackbone composer install --no-dev --optimize-autoloader cp .env.example .env php artisan key:generate php artisan migrate --seed php artisan storage:link # Configurer Apache/Nginx pour pointer sur /public
Configuration
- Premier lancement : suivre le wizard pour créer l'admin et configurer le storage.
- Pour intégrer ShareX : menu « Custom uploader » → type
xBackBone→ URL/api/upload+ clé API. - Stockage S3 : renseigner
AWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEY,AWS_DEFAULT_REGION,AWS_BUCKETdans.env. - Activer le redimensionnement auto des images pour économiser de la bande passante.
Alternatives
Open Source
- [[app-zipline]] — Moderne, TypeScript/Go, partage éphémère
- [[app-papermark]] — Ciblé partage de documents pro
- [[app-filebrowser]] — File manager généraliste Go
- [[app-copyparty]] — Polyvalent Python (45k⭐)
- [[app-picoshare]] — Minimaliste Go
Propriétaires
- Imgur (modèle direct remplacé)
- CloudApp
- Gyazo (capture + partage)
- Lightshot (upload public)
Sécurité
- HTTPS obligatoire : sans TLS, les clés API ShareX circulent en clair.
- Générer un
APP_KEYlong et le garder secret (compromet les sessions). - Restreindre l'inscription ou la désactiver après création du compte admin.
- Sauvegarder
./storage(uploads) et./database(SQLite ou MySQL). - Limiter la taille max d'upload via
php.ini(upload_max_filesize,post_max_size). - Mettre à jour régulièrement (sécurité Laravel + dépendances Composer).
