Nouvelles idées dans Observable Framework
- Observable Framework est un générateur de sites statiques qui compile du Markdown et du JavaScript en pages interactives à chargement rapide.
- Il fournit un serveur avec hot reloading qui permet d’éditer et d’enregistrer des fichiers en temps réel pour voir immédiatement les changements dans le navigateur.
- Une fois le travail terminé, il est possible de convertir le tout en fichiers statiques pour les déployer sur un serveur ou directement sur la plateforme de partage d’Observable.
JavaScript dans le Markdown
- Les blocs de code marqués avec le tag
js dans le Markdown sont exécutés comme du JavaScript dans le navigateur de l’utilisateur.
- Une variable spéciale appelée
now fournit l’heure actuelle en millisecondes depuis l’époque Unix et se met à jour en continu.
- Observable Framework unifie Markdown et JavaScript dans un seul document texte afin de créer des documents interactifs.
Tout reste réactif
- Observable Framework conserve la réactivité des notebooks Observable et se rafraîchit automatiquement lorsque d’autres cellules dont il dépend changent.
- C’est particulièrement utile lorsqu’on travaille avec des entrées de formulaire, et cela permet d’ajouter facilement de l’interactivité en temps réel à un document.
N’inclure que le code utilisé
- Observable Framework implémente le chargement différé en mode développement afin de ne charger que le code réellement utilisé.
- Lors de la compilation et du déploiement de l’application, seul le code des bibliothèques référencées est chargé automatiquement depuis le CDN jsdelivr.
Mettre les données en cache au moment du build
- Le framework construit les données de tableau de bord au moment du build via un mécanisme de chargeur de données, puis les regroupe dans des fichiers statiques.
- Un chargeur de données est un script qui peut être écrit dans n’importe quel langage de programmation, s’exécute au moment du build et enregistre sa sortie dans un fichier.
Comparaison avec les notebooks Observable
- Observable Framework réutilise les idées et le code des notebooks Observable, mais se compose d’un unique fichier texte et est entièrement open source.
- Il utilise du JavaScript standard et peut être versionné dans Git avec un format de fichier plus simple.
Changement de stratégie
- Observable Framework représente un changement stratégique de l’entreprise Observable, qui s’oriente davantage vers l’univers des outils pour développeurs.
- Tout en respectant la technologie des notebooks Observable, Observable Framework résout aussi les problèmes qui limitaient son adoption à cause de la nature propriétaire de la plateforme et des restrictions des comptes gratuits.
Avis de GN⁺
- Observable Framework est un nouvel outil pour la visualisation de données et la création de tableaux de bord, avec le potentiel d’offrir aux développeurs une meilleure collaboration et une plus grande efficacité.
- Cette plateforme facilite la création de documents interactifs et de tableaux de bord soutenant une prise de décision fondée sur les données, ce qui la rend utile à la fois pour les data scientists et les développeurs.
- Cependant, le succès d’Observable Framework dépendra fortement de son adoption par la communauté des développeurs et de son niveau d’intégration avec les outils existants.
- Parmi les autres projets offrant des fonctionnalités similaires, on peut citer Jupyter Notebook et R Shiny, et leur comparaison permet de mieux comprendre les forces et les limites d’Observable Framework.
- Lors de l’adoption d’Observable Framework, il faut prendre en compte des éléments comme la compatibilité avec les pipelines de données existants, l’optimisation des performances et le support de la communauté.
1 commentaires
Avis Hacker News
Observable Framework est comparé à « Avengers: Endgame » dans l’univers cinématographique de Mike Bostock.
Un problème soulevé avec Observable Framework concerne son rôle de ressource d’exemples pour d3.
Il est mentionné qu’Observable Framework peut être publié facilement sur un site GitHub.
Une personne partage son expérience après avoir terminé son premier projet avec un notebook Observable.
Une expérience positive avec Observable Framework est également partagée.
La question est posée de savoir s’il faut passer de Jupyter Notebook à Observable.
Il est expliqué que, s’il y a un indice de contenu
jsdans un bloc de code, celui-ci s’exécute immédiatement dans le navigateur de l’utilisateur.js echo.Il est mentionné qu’Observable s’intègre bien avec l’API REST de ClickHouse, et que l’exemple qui interroge la base de données en temps réel est intéressant.
Des devcontainers Codespace avec environnements Node et Python configurés automatiquement ont été mis en place afin de pouvoir essayer et manipuler rapidement Framework dans le navigateur.
Un avis affirme qu’en ne prenant en charge que JavaScript, Observable limite sa base d’utilisateurs.