Initial vault setup
This commit is contained in:
@@ -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é
|
||||
Reference in New Issue
Block a user