Initial vault setup
This commit is contained in:
@@ -0,0 +1,148 @@
|
||||
---
|
||||
title: WhoDB
|
||||
created: 2026-06-07
|
||||
updated: 2026-06-07
|
||||
type: app
|
||||
tags: [catalogue, database, go, typescript, multi-database, explorateur, moderne, apache]
|
||||
confidence: high
|
||||
contested: false
|
||||
sources: [https://selfh.st/apps/?tag=Database, https://github.com/clidey/whodb]
|
||||
---
|
||||
|
||||
# 🗄️ WhoDB
|
||||
|
||||
> **L'explorateur de bases nouvelle génération** : léger (Go + React), rapide, ergonomique. La réponse moderne à phpMyAdmin pour qui veut un outil frais et multi-SGBD.
|
||||
|
||||
## 📋 Informations Générales
|
||||
|
||||
| Champ | Valeur |
|
||||
| :--- | :--- |
|
||||
| **Site web** | [whodb.com](https://whodb.com/) |
|
||||
| **GitHub** | [clidey/whodb](https://github.com/clidey/whodb) |
|
||||
| **License** | Apache-2.0 |
|
||||
| **Langage** | Go (backend) + TypeScript/React (frontend) |
|
||||
| **Étoiles GitHub** | 4,8k ⭐ |
|
||||
| **Dernière MAJ** | 2026-05-26 |
|
||||
| **Catégorie** | [[cat-database\|Database]] |
|
||||
|
||||
## 📝 Description
|
||||
|
||||
**WhoDB** est un **explorateur de bases de données** qui se veut **léger, rapide et moderne**, à contre-courant des clients SQL historiques souvent lourds ou vieillissants. Le projet est écrit en **Go** côté backend (compilé, binaire unique, faible empreinte mémoire) avec un frontend **React/TypeScript** soigné. C'est une alternative récente (projet jeune, 2023+) qui a rapidement attiré l'attention par sa simplicité de déploiement et son expérience utilisateur fluide.
|
||||
|
||||
L'objectif de WhoDB est de proposer l'**essentiel** d'un client SQL — navigation de schémas, exécution de requêtes, visualisation de données — sans la complexité ni le poids des concurrents. Il supporte les SGBD les plus courants : **PostgreSQL, MySQL/MariaDB, SQLite, MongoDB, Redis, ClickHouse**, avec une roadmap active pour élargir la couverture. L'UI est volontairement minimaliste : pas de designers ERD complexes ni de fonctionnalités enterprise, juste ce qu'il faut pour **administrer et explorer** rapidement une base depuis un navigateur.
|
||||
|
||||
L'**intégration native avec Ollama** (LLM local) est une particularité notable : WhoDB peut **générer des requêtes SQL à partir de prompts en langage naturel** en s'appuyant sur un modèle local, ce qui en fait un outil pédagogique intéressant pour apprendre SQL. Cette fonctionnalité reste expérimentale mais témoigne de l'ambition "next-gen" du projet.
|
||||
|
||||
**Public cible** : **devs solo, petites équipes, homelabs** qui veulent un outil DB simple, rapide, sans usine à gaz.
|
||||
|
||||
### Fonctionnalités principales
|
||||
|
||||
- ✅ **Multi-SGBD** : PostgreSQL, MySQL, MariaDB, SQLite, MongoDB, Redis, ClickHouse
|
||||
- ✅ **Binaire Go léger** : ~20 MB, démarre en <1s, ~50 MB de RAM
|
||||
- ✅ **UI moderne React** : sombre/clair, responsive
|
||||
- ✅ **Éditeur SQL** avec coloration et historique
|
||||
- ✅ **Visualisation de données** en grille
|
||||
- ✅ **Intégration Ollama** : génération SQL via LLM local (expérimental)
|
||||
- ✅ **Pas d'auth** par défaut (à coupler avec Traefik + authelia/Authentik)
|
||||
- ✅ **Docker** natif, image légère (~50 MB)
|
||||
- ✅ **API GraphQL** + REST
|
||||
|
||||
## 🚀 Installation
|
||||
|
||||
### Option 1 : Docker Compose (recommandé)
|
||||
|
||||
```yaml
|
||||
# docker-compose.yml
|
||||
version: '3.8'
|
||||
services:
|
||||
whodb:
|
||||
image: clidey/whodb:latest
|
||||
container_name: whodb
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "8080:8080"
|
||||
environment:
|
||||
WHODB_HOST: "0.0.0.0"
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.whodb.rule=Host(`db.example.com`)"
|
||||
- "traefik.http.routers.whodb.entrypoints=websecure"
|
||||
- "traefik.http.routers.whodb.tls.certresolver=letsencrypt"
|
||||
# Authentification recommandée via Authelia/Authentik
|
||||
- "traefik.http.routers.whodb.middlewares=authelia@docker"
|
||||
```
|
||||
|
||||
### Option 2 : Binaire natif
|
||||
|
||||
```bash
|
||||
# Téléchargement direct (Linux/Mac/Windows)
|
||||
curl -L https://github.com/clidey/whodb/releases/latest/download/whodb-linux-amd64 -o whodb
|
||||
chmod +x whodb
|
||||
./whodb
|
||||
|
||||
# Accès à http://localhost:8080
|
||||
```
|
||||
|
||||
## ⚙️ Configuration Initiale
|
||||
|
||||
1. **Accéder à l'UI** : `http://IP:8080`
|
||||
2. **Ajouter une connexion** : bouton "+" > choisir le SGBD > host/port/credentials
|
||||
3. **Naviguer le schéma** : onglet "Schema" > tables, collections, keyspaces
|
||||
4. **Exécuter une requête** : onglet "Query" > SQL + Run
|
||||
5. **Tester l'intégration Ollama** (optionnel) : Settings > Ollama URL > modèle
|
||||
6. **Coupler avec Authelia** (recommandé) : ajouter le middleware auth dans Traefik
|
||||
|
||||
## 🔄 Alternatives
|
||||
|
||||
### Open Source
|
||||
|
||||
- [[app-dbgate]] — Concurrent direct, plus mature
|
||||
- [[app-cloudbeaver]] — Plus complet mais plus lourd
|
||||
- [[app-phpmyadmin]] — Spécialiste MySQL historique
|
||||
- [[app-adminer]] — PHP mono-fichier
|
||||
- **Beekeeper Studio** — Desktop multi-SGBD
|
||||
- **DBeaver CE** — Le poids lourd desktop
|
||||
|
||||
### Comparaison WhoDB vs alternatives
|
||||
|
||||
| Critère | WhoDB | DbGate | CloudBeaver | Adminer |
|
||||
| :--- | :--- | :--- | :--- | :--- |
|
||||
| Langage | **Go** | TypeScript | Java | PHP |
|
||||
| RAM au repos | ~50 MB | ~80 MB | ~250 MB | ~30 MB |
|
||||
| Démarrage | <1s | <3s | ~10s | <1s |
|
||||
| UI moderne | ✅ | ✅ | ✅ | ❌ |
|
||||
| SGBD supportés | 7 | 10+ | 20+ | 15+ |
|
||||
| LLM/Ollama | ✅ | ❌ | ❌ | ❌ |
|
||||
| Auth intégrée | ❌ (via proxy) | Basique | ✅ | ❌ |
|
||||
| Licence | Apache-2.0 | MIT | Apache | Apache |
|
||||
|
||||
**Verdict** : WhoDB est **le choix "moderne et léger"** pour homelab. Pour des besoins enterprise ou un grand nombre de SGBD, DbGate ou CloudBeaver.
|
||||
|
||||
### Propriétaires (ce que WhoDB remplace)
|
||||
|
||||
- **TablePlus** (freemium, ~100$/an)
|
||||
- **PopSQL** (cloud, ~200$/an)
|
||||
- **Sequel Pro** (macOS, plus maintenu)
|
||||
- **DataGrip** (JetBrains, ~200€/an)
|
||||
- **Navicat**
|
||||
|
||||
## 🔐 Sécurité
|
||||
|
||||
- **🔐 WhoDB n'a pas d'auth intégrée** : **obligatoire** de coupler avec Traefik + Authelia ou Authentik, ou de mettre derrière un VPN
|
||||
- **🔒 HTTPS obligatoire** via [[app-traefik]] : c'est un accès direct à vos bases
|
||||
- **🛡️ IP allowlist** recommandé : restreindre l'accès au sous-réseau du VPN ou à quelques IPs de confiance
|
||||
- **⚠️ Ne pas exposer WhoDB sur Internet sans auth** : aucun login natif, n'importe qui avec l'URL accède à vos bases
|
||||
|
||||
## 📚 Ressources
|
||||
|
||||
- [Site officiel](https://whodb.com/)
|
||||
- [Documentation](https://whodb.com/docs)
|
||||
- [GitHub clidey/whodb](https://github.com/clidey/whodb)
|
||||
- [Démo en ligne](https://app.whodb.com/)
|
||||
|
||||
## Pages Liées
|
||||
|
||||
- [[cat-database]] — Catégorie Database
|
||||
- [[app-traefik]] — Reverse proxy + Authelia recommandés
|
||||
- [[recettes-docker-compose]] — Intégration stack
|
||||
- [[securisation-home-lab]] — Protéger un outil admin
|
||||
Reference in New Issue
Block a user