7.0 KiB
title: Chartbrew created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, database, bi, visualisation, dashboard, charts, javascript, apache, intermediate] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Database, https://github.com/chartbrew/chartbrew]
🗄️ Chartbrew
L'outil de visualisation de données self-hosted : connectez vos bases et APIs, créez des dashboards et graphiques en quelques clics. L'alternative open source à Retool/Metabase pour la dataviz.
📋 Informations Générales
| Champ | Valeur |
|---|---|
| Site web | chartbrew.com |
| GitHub | chartbrew/chartbrew |
| License | Apache-2.0 |
| Langage | JavaScript (Node.js + React/Vue) |
| Étoiles GitHub | 3,9k ⭐ |
| Dernière MAJ | 2026-05-20 |
| Catégorie | cat-database |
📝 Description
Chartbrew est une plateforme de visualisation et création de dashboards qui se connecte à des bases de données, APIs et services tiers pour produire des graphiques et tableaux de bord sans coder. Le projet a démarré en 2019 et vise à offrir une expérience de dataviz plus moderne et plus simple que les stacks BI classiques (Metabase, Superset), tout en restant léger, rapide à déployer, et full JavaScript.
L'idée centrale est de définir des "connections" vers une source de données (PostgreSQL, MySQL, MongoDB, REST API, Google Analytics, etc.), puis de créer des "charts" en mappant les champs de la réponse à des types de visualisation (line, bar, pie, table, KPI, doughnut, etc.). Les graphiques sont ensuite assemblés en "projects" (dashboards) partageables. Chartbrew gère bien le rafraîchissement automatique (cron), les filtres croisés entre graphiques, et l'export PDF/PNG des dashboards.
Pour qui n'est pas équipe data engineer, Chartbrew est un excellent compromis : plus simple qu'Apache Superset, plus moderne que Metabase, plus flexible que Grafana pour de la donnée métier non-métriques. La version community est open source et auto-suffisante ; une offre cloud hébergée existe pour ceux qui ne veulent pas self-host.
Public cible : petites équipes data, marketers, devs qui veulent un dashboard rapidement, projets internes avec données dans Postgres/Mongo.
Fonctionnalités principales
- ✅ Connexions multiples : PostgreSQL, MySQL, MongoDB, Google Analytics, REST API, MySQL, Firestore
- ✅ Types de graphiques : line, bar, pie, doughnut, table, KPI, matrice, radar
- ✅ Dashboards : assemblage de charts en projets
- ✅ Filtres croisés : un filtre affecte plusieurs charts
- ✅ Rafraîchissement auto : cron configurable par chart
- ✅ Partage public : lien read-only pour un dashboard
- ✅ Auth multi-utilisateurs : rôles (admin, éditeur, lecteur)
- ✅ Export PDF / PNG des dashboards
- ✅ API publique pour intégration
- ✅ Thèmes clair/sombre personnalisables
🚀 Installation
Option 1 : Docker Compose (recommandé)
# docker-compose.yml
version: '3.8'
services:
chartbrew:
image: chartbrew/chartbrew:latest
container_name: chartbrew
restart: unless-stopped
ports:
- "8080:4019"
environment:
APP_URL: "https://chartbrew.example.com"
SECRET_KEY: "changez-moi-en-production-50-chars-min"
REACT_APP_CLIENT_HOST: "https://chartbrew.example.com"
REACT_APP_API_HOST: "https://chartbrew.example.com/api"
CB_DB_HOST: db
volumes:
- chartbrew_data:/home/chartbrew/data
depends_on:
- db
labels:
- "traefik.enable=true"
- "traefik.http.routers.chartbrew.rule=Host(`chartbrew.example.com`)"
- "traefik.http.routers.chartbrew.entrypoints=websecure"
- "traefik.http.routers.chartbrew.tls.certresolver=letsencrypt"
db:
image: postgres:16
container_name: chartbrew-db
restart: unless-stopped
environment:
POSTGRES_USER: chartbrew
POSTGRES_PASSWORD: changez-moi
POSTGRES_DB: chartbrew
volumes:
- chartbrew_db:/var/lib/postgresql/data
volumes:
chartbrew_data:
chartbrew_db:
Option 2 : npm (développement)
git clone https://github.com/chartbrew/chartbrew.git
cd chartbrew
npm install
npm run setup
npm start
⚙️ Configuration Initiale
- Créer le compte admin : première connexion = signup
- Ajouter une connexion : menu "Connections" > "+ New" > choisir SGBD/API > credentials
- Créer un dataset : nom + requête SQL/query API
- Créer un chart : lier à un dataset > choisir le type > mapper X/Y
- Assembler un dashboard : menu "Projects" > "+ New" > drag-and-drop les charts
- Configurer le rafraîchissement : onglet "Schedule" d'un chart > cron
🔄 Alternatives
Open Source
- Metabase — Le poids lourd de la BI open source
- Apache Superset — BI enterprise (plus complexe)
- Redash — SQL queries + viz (plus minimal)
- Grafana — Excellent pour séries temporelles (métriques)
- Nocodb Airtable-like — Pour des vues tabulaires
- Directus — Headless CMS avec dashboard
Comparaison Chartbrew vs alternatives
| Critère | Chartbrew | Metabase | Superset | Grafana |
|---|---|---|---|---|
| Interface | Moderne | Simple | Complexe | Technique |
| Setup Docker | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐ | ⭐⭐⭐⭐⭐ |
| SGBD supportés | 6+ | 15+ | 30+ | 30+ |
| Types de charts | 10+ | 15+ | 50+ | 30+ |
| Filtres croisés | ✅ | ✅ | ✅ | ✅ variables |
| Auth utilisateurs | ✅ | ✅ | ✅ | ✅ |
| Alertes | ❌ | ✅ | ✅ | ✅ |
| Langage | JS/Node | Java/Clojure | Python | Go |
| Licence | Apache-2.0 | AGPL | Apache | AGPL |
Verdict : Chartbrew brille par sa simplicité et modernité. Pour de la BI enterprise avec alerting, Metabase. Pour des métriques time-series, Grafana.
Propriétaires (ce que Chartbrew remplace)
- Retool (très cher au-delà de 5 users)
- Tableau Public / Public Tableau
- Looker Studio (Google, gratuit mais cloud)
- Power BI embedded (Microsoft, payant)
- Chartio (racheté par Atlassian)
- Domo
🔐 Sécurité
- 🔐
SECRET_KEYobligatoire en production :openssl rand -hex 50minimum - 🔒 HTTPS obligatoire via app-traefik : Chartbrew accède potentiellement à des données métier sensibles
- 🛡️ Row-Level Security : créer des utilisateurs SQL dédiés en lecture seule pour Chartbrew (jamais
rootou superuser) - 🛡️ Partage public de dashboard : activer avec précaution, les liens publics sont sensibles
📚 Ressources
Pages Liées
- cat-database — Catégorie Database
- app-traefik — Reverse proxy recommandé
- recettes-docker-compose — Intégration stack
- securisation-home-lab — Bonnes pratiques globales