Initial vault setup

This commit is contained in:
2026-06-09 18:40:21 +02:00
commit bda02d587f
3692 changed files with 402457 additions and 0 deletions
+134
View File
@@ -0,0 +1,134 @@
---
title: xBackBone
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, file-management, php, sharing, sharex, laravel]
confidence: medium
contested: false
sources: [https://selfh.st/apps/?tag=file-management, https://github.com/sergix44/xbackbone]
---
# xBackBone 🗂️
> Gestionnaire de fichiers PHP léger, conçu principalement comme backend de capture et de partage pour l'outil de screenshot **ShareX** sur desktop.
## 📋 Informations Générales
| Champ | Valeur |
| :--- | :--- |
| **Site web** | https://xbackbone.app |
| **GitHub** | https://github.com/sergix44/xbackbone |
| **License** | AGPL-3.0 |
| **Langage** | PHP (Laravel) |
| **Étoiles GitHub** | 95 ⭐ |
| **Dernière MAJ** | 2025 |
| **Catégorie** | [[cat-file-management]] |
## 📝 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é)
```yaml
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)
```bash
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_BUCKET` dans `.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_KEY` long 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).
## 📚 Ressources
- [Site officiel](https://xbackbone.app)
- [Documentation](https://github.com/sergix44/xbackbone/wiki)
- [GitHub sergix44/xbackbone](https://github.com/sergix44/xbackbone)
- [Démo en ligne](https://xbackbone.app/demo)
## Pages Liées
- [[cat-file-management]] — Catégorie File Management
- [[recettes-docker-compose]] — Templates Docker Compose
- [[securisation-home-lab]] — Sécurité
- [[traefik]] — Reverse proxy recommandé