-
Notifications
You must be signed in to change notification settings - Fork 0
Installation
ShareX Manager tourne sur Bun. Deux approches : développement local (Bun) ou production (Docker — voir Déploiement).
- Bun 1.x (le runtime et le gestionnaire de paquets — pas besoin de Node.js)
- Git
- Pour la production : Docker + Docker Compose
git clone https://github.com/pedrokarim/sharex-manager.git
cd sharex-managerbun installCopiez l'exemple puis éditez-le :
cp .env.example .envAu minimum, générez le secret d'authentification :
# génère une valeur pour AUTH_SECRET
openssl rand -base64 32Les 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 nonNEXTAUTH_URL).
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 utilisateursLors de l'ajout, choisissez le rôle Administrateur. Les mots de passe sont hachés (bcrypt) et stockés dans data/users.json.
bun devOuvrez http://localhost:3000 (ou le PORT configuré) et connectez-vous via /login.
| 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.
Démarrage
Utilisation
Intégration bureau
Pour les développeurs
Exploitation