Files
wiki/Catalogue-Self-Hosted/apps/app-chartdb.md
T
2026-06-09 18:40:21 +02:00

6.9 KiB


title: ChartDB created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, database, design, schema, visualization, diagram, typescript, apache] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Database, https://github.com/chartdb/chartdb]

🗄️ ChartDB

L'éditeur visuel de schémas de base de données : en un clic, importez un schéma SQL existant (PostgreSQL, MySQL, MariaDB, SQLite) → diagramme ER interactif, export DDL, migration scripts. La "Figma du SQL".

📋 Informations Générales

Champ Valeur
Site web chartdb.io
GitHub chartdb/chartdb
License Apache-2.0
Langage TypeScript
Étoiles GitHub 22k
Dernière MAJ 2026-06-05
Catégorie cat-database

📝 Description

ChartDB est un éditeur visuel de schémas de base de données. Ce n'est pas un SGBD, pas non plus un outil de BI : son unique job est de rendre visible et modifiable la structure de vos bases, sans avoir à lire du DDL à la main.

Le point d'entrée magique de ChartDB est son import "one-click" : collez une URL de connexion à votre base (PostgreSQL, MySQL, MariaDB, SQLite) ou bien un script SQL, et l'outil :

  • Reconnaît automatiquement les tables, colonnes, types, index, foreign keys
  • Génère un diagramme ER propre et interactif
  • Vous laisse le réorganiser visuellement, ajouter des notes
  • Exporte le DDL modifié en plusieurs dialectes SQL
  • Génère un script de migration entre l'ancien et le nouveau schéma

C'est l'outil idéal pour :

  • Documenter une base existante (le "livre de bord" visuel)
  • Préparer une migration (voir le diff visuel)
  • Onboarder un nouveau développeur sur un projet
  • Concevoir un nouveau schéma avant de l'écrire

À comparer à DBeaver (outil de gestion BDD complet, mais pas de visualisation ER intégrée aussi léchée) et à dbdiagram.io (service freemium équivalent, mais en SaaS).

  • One-click import depuis PostgreSQL, MySQL, MariaDB, SQLite (live ou via DDL)
  • Diagramme ER interactif (zoom, pan, drag, layout auto)
  • Export multi-dialectes : PostgreSQL, MySQL, SQL Server, MariaDB, SQLite
  • Migration script generation : détecte les changements, propose un ALTER TABLE
  • Export : image PNG, JSON, DDL SQL
  • Thèmes clair/sombre
  • Responsive : utilisable sur mobile
  • Pas de compte requis pour importer/exporter
  • Optionnel : export vers GitHub Issue / Share via lien
  • Édition en ligne : types, default values, commentaires

Public cible : architectes data, développeurs qui reprennent un projet existant, équipes qui veulent une doc visuelle, homelabs qui veulent documenter leur stack.

🚀 Installation

Option 1 : Docker Compose (recommandé pour self-host)

# docker-compose.yml
version: '3.8'
services:
  chartdb:
    image: chartdb/chartdb:latest
    container_name: chartdb
    restart: unless-stopped
    ports:
      - "8000:80"
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.chartdb.rule=Host(`chartdb.example.com`)"
      - "traefik.http.routers.chartdb.entrypoints=websecure"
      - "traefik.http.routers.chartdb.tls.certresolver=letsencrypt"
      - "traefik.http.services.chartdb.loadbalancer.server.port=80"

💡 ChartDB tourne en frontal pur (l'import DDL est local, l'import live est direct navigateur → BDD). Pas de BDD ChartDB à sauvegarder.

Option 2 : Cloud (sans installation)

Utiliser chartdb.io directement, sans rien installer. L'import live se fait via une connexion SSL/TLS depuis le navigateur (mécanisme de tunneling sécurisé).

Option 3 : Lancement local (dev)

git clone https://github.com/chartdb/chartdb.git
cd chartdb
npm install
npm run dev

⚙️ Configuration Initiale

  1. Accéder à l'UI : https://chartdb.example.com
  2. Importer un DDL : menu "Import" → coller un pg_dump --schema-only ou un script CREATE TABLE
  3. Importer depuis une BDD live : "New Diagram" → saisir la connection string (postgresql://user:***@host:5432/db) → import automatique
  4. Explorer le diagramme : zoom, pan, clic sur une table pour voir les colonnes
  5. Modifier : double-clic sur une colonne pour changer le type, drag-and-drop pour réorganiser le layout
  6. Exporter : menu "Export" → choisir le dialecte cible → copier le DDL ou le migration script

🔄 Alternatives

Open Source

  • DBeaver — Client SQL complet, visualisation ER basique, multi-BDD
  • PgModeler — Spécialisé PostgreSQL, plus puissant, GPL
  • draw.io / diagrams.net — Dessin libre, pas d'import auto
  • Mermaid — Diagramme-as-code (markdown), ER supportés
  • PlantUML — Idem, plus de contrôles
  • dbt docs — Auto-généré depuis un projet dbt

Propriétaires / SaaS

  • dbdiagram.io — Le concurrent direct freemium, ER visuels
  • Lucidchart — Outil de diagramme généraliste
  • DbSchema — Outil commercial multi-BDD, ER
  • Vertabelo — Modeleur BDD en ligne
  • DataGrip (JetBrains) — IDE SQL avec visualisation

Comparaison

Critère ChartDB dbdiagram.io DBeaver draw.io
Licence Apache-2.0 Freemium Apache-2.0 (community) Apache-2.0
Self-hosted (desktop)
Import DDL Auto Auto Manuel
Import live (PG/MySQL/SQLite)
Migration script
Export SQL Multi-dialectes
Collaboration
Prix Gratuit Freemium Gratuit / Pro Gratuit

Verdict : ChartDB est le meilleur outil gratuit pour visualiser et documenter un schéma BDD en 2026. Pour la collaboration d'équipe, dbdiagram.io reste devant, mais en SaaS payant. Pour un homelab, ChartDB self-hosted est imbattable.

🔐 Sécurité

  • HTTPS obligatoire via app-traefik — ChartDB manipule potentiellement des credentials BDD dans le navigateur
  • Pas d'auth intégrée : à protéger via Authelia/Authentik en amont si on veut exposer publiquement, ou restreindre à un VPN/Tailscale
  • Pas de BDD à sauvegarder : ChartDB est un outil stateless, tout se fait dans le navigateur
  • Connection strings sensibles : ne pas laisser les credentials dans les diagrammes exportés

📚 Ressources

Pages Liées