Librairie pour la visualisation d'indicateurs territoriaux.
Project description
Tableau de bord des indicateurs territoriaux
Présentation
Bienvenue dans ce projet visant à faciliter la création de tableaux de bord territoriaux interactifs à partir de données d’indicateurs. Ce dispositif est composé de deux briques complémentaires :
1. territories_dashboard_lib
Une librairie Django réutilisable, contenant des applications modulaires pour afficher rapidement un tableau de bord d'indicateurs territoriaux. Elle permet d’analyser des données à différentes mailles géographiques : nationale, régionale, départementale, et communale.
Elle comprend des fonctionnalités prêtes à l'emploi pour visualiser des données sur des thématiques comme la mobilité durable, la rénovation énergétique ou d'autres indicateurs liés au développement territorial.
2. territories_dashboard_template
Un template de projet Django clef en main, conçu pour permettre à des équipes techniques de démarrer rapidement leur propre tableau de bord. Ce template utilise la librairie territories_dashboard_lib comme fondation.
Les utilisateurs peuvent cloner ce dépôt, l’adapter à leurs besoins, et configurer leur tableau de bord directement depuis l’interface d’administration (titre, organisme, pages de contenu statique, indicateurs à afficher...).
Le template constitue un point de départ standard, mais n’impose aucune restriction technique en dehors du choix de Django comme framework. Les développeurs sont libres d'étendre ou de modifier les composants selon leurs besoins.
Prérequis
Pour utiliser la librairie ou le template, vous devez disposer de :
- Une base de données PostgreSQL contenant les données des indicateurs territoriaux.
- Une capacité à déployer une application Django (hébergement, serveur web, etc.).
Pour obtenir des informations détaillées sur les prérequis techniques ou les données :
- Marina Ribeiro – Directrice de projet Mission Connaissance
marina.ribeiro@developpement-durable.gouv.fr - Louise Columelli – ECOLAB
louise.columelli@developpement-durable.gouv.fr - Olivier Rousseau – Expert données
olivier.rousseau@i-carre.net - Bastien – Développeur web
bastien@prune.sh
Exemples de projets utilisant ce dispositif
L’objectif de ce projet est d’encourager la réutilisation et l’essaimage de nouveaux tableaux de bord territoriaux, en mettant à disposition un socle technique commun, facilement adaptable et extensible.
Structure de la librairie
La librairie est composée de plusieurs applications Django indépendantes et complémentaires :
website_lib
Contient le code principal d’affichage des pages du tableau de bord :
- Templates HTML Django : dans
website_lib/templates, organisés par page. - Fichiers statiques (JS, CSS) : dans
website_lib/static. Le JS est modulaire grâce à l’extension.mjs. - Vues Django : dans
website_lib/views, associées aux templates et fichiers statiques.
tracking_lib
Gère le tracking backend : enregistrement en base de données des visites de pages, avec leurs paramètres (indicateur sélectionné, territoire, etc.) pour permettre des analyses d’usage.
superset_lib
Permet d’intégrer des dashboards Superset dans les pages du site.
Superset est un outil permettant à des utilisateurs non techniques de construire des visualisations depuis une base de données.
geo_lib
Permet d’ajouter des couches géographiques personnalisées (points, lignes, polygones) à la carte :
- Points : ex. stationnements vélo.
- Lignes : ex. pistes cyclables.
- Polygones : ex. zones ZFE.
indicators_lib
Contient le code pour l’accès et la requête des données d’indicateurs dans la base PostgreSQL dédiée.
Composants React
Certaines visualisations complexes sont développées en React (ex. cartes interactives, diagrammes de Sankey).
- Les composants sont dans
website_lib/react-components/. - Le bundling est effectué via Webpack
- Les composants React sont ensuite inclus dans les templates Django.
cd website_lib/react-components && npm install && npm run webpack
Installation
La librairie est publiée sur PyPI. Elle s’installe dans un projet Django via le package manager uv :
uv add territories_dashboard_lib
Figer la version en production
Pour éviter les mises à jour inattendues, il est conseillé de figer la version dans le fichier pyproject.toml :
# Par exemple :
territories_dashboard_lib == 1.0.3
Développement local
Pour tester une version locale de la librairie (ex : modifications en cours) :
uv add --editable ~/territories-dashboard/territories-dashboard-lib
Publication PyPI
Pour builder la librairie avant publication :
uv run python -m build
Pour déployer sur PyPI, vous devez :
-
Avoir un compte PyPI.
-
Être membre du projet sur PyPI.
-
Lancer :
uv run twine upload dist/*
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file territories_dashboard_lib-1.2.1.dev1.tar.gz.
File metadata
- Download URL: territories_dashboard_lib-1.2.1.dev1.tar.gz
- Upload date:
- Size: 5.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7197464dfb49be30d1ecfe6679855780362dee478dd5e18bdae4c2151450536e
|
|
| MD5 |
6a8f66490b455717a74221b52868a081
|
|
| BLAKE2b-256 |
e2655d0f6ef022f605470e9a34dfe090fc71fee52f3b3946e493bb07bb6a80e6
|
File details
Details for the file territories_dashboard_lib-1.2.1.dev1-py3-none-any.whl.
File metadata
- Download URL: territories_dashboard_lib-1.2.1.dev1-py3-none-any.whl
- Upload date:
- Size: 5.4 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b815bce1b2d34a0f79653a04fab79400b3cc40387f42aedd842cf91bfdf470e1
|
|
| MD5 |
55030d013c5793ae8c7391df69dc1f1e
|
|
| BLAKE2b-256 |
1eb8b61b73d3c1f587ddcdb5479a6f1b6618229901f30571bdbb054cd23c3401
|