Skip to content

Installation

pedrokarim edited this page Jun 11, 2026 · 1 revision

Installation

ShareX Manager tourne sur Bun. Deux approches : développement local (Bun) ou production (Docker — voir Déploiement).

Prérequis

  • Bun 1.x (le runtime et le gestionnaire de paquets — pas besoin de Node.js)
  • Git
  • Pour la production : Docker + Docker Compose

1. Cloner le dépôt

git clone https://github.com/pedrokarim/sharex-manager.git
cd sharex-manager

2. Installer les dépendances

bun install

3. Variables d'environnement

Copiez l'exemple puis éditez-le :

cp .env.example .env

Au minimum, générez le secret d'authentification :

# génère une valeur pour AUTH_SECRET
openssl rand -base64 32

Les variables principales (détail complet dans Configuration) :

Variable Rôle
AUTH_SECRET Requis — secret NextAuth
AUTH_URL URL de base de l'app (ex. http://localhost:3000)
PORT Port du serveur (défaut 3000)
NEXT_PUBLIC_API_URL URL publique de l'API exposée au client
NEXT_PUBLIC_APP_DOMAIN / NEXT_PUBLIC_IMAGE_DOMAIN Domaines public app / images

ℹ️ NextAuth v5 utilise AUTH_URL (et non NEXTAUTH_URL).

4. Initialiser les données et créer un utilisateur

Le stockage se fait dans des fichiers sous data/ (créés au premier lancement / via le CLI). Créez votre compte admin avec le CLI intégré (lancé par Bun) :

# initialise les fichiers data/ et config/
bun run cli            # menu interactif
# …ou directement :
bun cli users          # ajouter / lister / supprimer des utilisateurs

Lors de l'ajout, choisissez le rôle Administrateur. Les mots de passe sont hachés (bcrypt) et stockés dans data/users.json.

5. Lancer le serveur de développement

bun dev

Ouvrez http://localhost:3000 (ou le PORT configuré) et connectez-vous via /login.

Scripts disponibles

Script Commande Rôle
dev bun dev Serveur de développement
build bun run build Build de production (output: standalone)
start bun start Serveur de production (après build)
lint bun run lint ESLint (Next.js)
test bun test Tests Vitest
test:coverage bun run test:coverage Tests + couverture
cli bun run cli CLI du projet (users, logs, clean, setup…)
deploy:cron bun run deploy:cron Déploiement pull-based par cron (voir Déploiement)

➡️ Étape suivante : Configuration pour régler les types autorisés, limites, domaines et miniatures.

Clone this wiki locally