4 points par GN⁺ 2025-02-01 | 1 commentaires | Partager sur WhatsApp
  • Mathesar est une application web qui permet à des utilisateurs de niveaux techniques variés de consulter, modifier, interroger et partager des données PostgreSQL sans code
  • Elle fonctionne directement avec les bases de données, schémas et tables PostgreSQL existants, sans couche d’abstraction supplémentaire, et utilise le contrôle d’accès basé sur les rôles et permissions Postgres
  • Elle peut être déployée en auto-hébergement en quelques minutes, les données ne quittent pas le serveur, et son état actuel est en bêta publique
  • Ses principales fonctionnalités incluent la création/modification de schémas et de tables, la saisie de données de type tableur, le filtrage, le tri et le regroupement, Data Explorer pour écrire sans SQL, les formulaires, l’import/export et les migrations de schéma
  • C’est un projet 100 % open source maintenu par la Mathesar Foundation, proposé sous licence GPLv3, et Mathesar Cloud offre une bêta initiale avec un forfait gratuit

La manière de travailler avec Postgres proposée par Mathesar

  • Mathesar est une application web conçue pour rendre le travail avec les bases de données PostgreSQL à la fois simple et puissant
  • Les utilisateurs peuvent consulter, créer, modifier, supprimer des données et collaborer via une interface de type tableur familière
  • Il est possible de construire des requêtes via Data Explorer sans connaître SQL ni les jointures
  • On peut se connecter à une base PostgreSQL existante ou configurer une nouvelle base de données à partir de zéro

Une conception directement connectée à Postgres

  • Mathesar fonctionne directement avec les bases de données, schémas et tables PostgreSQL sans abstraction supplémentaire
  • Les « Relationships » de l’interface sont implémentées comme des foreign keys dans la base de données
  • Il utilise et manipule les schémas, primary keys, foreign keys, contraintes et types de données de PostgreSQL
  • Il fournit des types de données personnalisés pour les e-mails et les URL, avec une validation effectuée au niveau de la base de données

Déploiement, sécurité et état du projet

  • Mathesar est conçu pour l’auto-hébergement et peut être installé en quelques minutes avec Docker
  • Il peut s’intégrer à une infrastructure existante, et les données ne quittent pas le serveur de l’utilisateur
  • Le contrôle d’accès repose sur les rôles et permissions PostgreSQL, et l’interface Mathesar permet d’utiliser les rôles Postgres existants ou d’en configurer de nouveaux
  • L’état du projet est le suivant
    • Public Alpha : installation et déploiement sur serveur possibles
    • Public Beta : suffisamment stable et riche en fonctionnalités pour des implémentations en production
    • Public : pas encore atteint
  • Mathesar est actuellement en bêta publique

Principales fonctionnalités

  • Modélisation des données : création et mise à jour faciles de schémas et de tables PostgreSQL
  • Saisie des données : consultation, création, modification et suppression d’enregistrements de table dans une interface de type tableur
  • Exploration des données : segmentation rapide des données grâce au filtrage, au tri et au regroupement
  • Création de requêtes : Data Explorer permet de construire des requêtes sans connaître SQL ni les jointures
  • Formulaires : création de formulaires partageables via un lien unique, avec enregistrement automatique des soumissions comme nouveaux enregistrements
  • Import/export : importation et exportation faciles de données depuis et vers Mathesar
  • Migrations de schéma : déplacement de colonnes entre tables en deux clics

Projet, documentation et communauté

  • Mathesar est un projet 100 % open source maintenu par la Mathesar Foundation, une organisation à but non lucratif de type 501(c)(3)
  • Les instructions d’installation sont disponibles dans la documentation
  • Pour l’utiliser sans installation, il est possible de recourir à Mathesar Cloud, actuellement en bêta initiale avec un forfait gratuit
  • Les canaux communautaires utilisent Matrix et une mailing list
  • Les contributions peuvent commencer via le guide du contributeur
  • La licence est GPLv3 et inclut aussi des dérivés de modules open source tiers sous licence MIT

1 commentaires

 
GN⁺ 2025-02-01
Commentaires sur Hacker News
  • Je suis le responsable du projet Mathesar. Ravi de nous voir en page d’accueil, et je répondrai volontiers aux questions

    • Je me demande en quoi c’est différent de Retool. J’ai utilisé Retool pour créer directement des UI au-dessus de Postgres, et j’appréciais de pouvoir concevoir un peu l’écran, par exemple en insérant une nouvelle ligne liée par la clé primaire de la ligne actuellement sélectionnée
      Je me demande si Mathesar vise surtout une vue de type tableur, ou s’il est possible de personnaliser l’interface. J’aimerais savoir comment fonctionne une vue type tableur couvrant plusieurs tables liées, et s’il est aussi possible d’afficher les données autrement que sous forme de tableau, comme dans des écrans de détail ou d’édition de ligne
    • Le site indique que c’est à but non lucratif ; je me demande s’il existe un plan de monétisation à long terme. Sinon, j’aimerais savoir comment vous comptez maintenir le financement de l’exploitation
    • Je me demande en quoi cela se différencie d’un logiciel d’administration de base de données comme DBeaver. Quelle serait la raison principale d’utiliser Mathesar plutôt que DBeaver ?
    • J’ai envisagé de proposer son adoption à mon équipe, mais le fait que Mathesar installe certains schémas a été un frein. J’aime bien l’idée d’utiliser cet outil sur un pgdump local
    • Il ne semble pas y avoir d’élément directement lié à Linux ; je me demande si vous prévoyez de le tester et de le prendre en charge sur Windows Server
  • C’est presque bon. Il existe beaucoup d’outils de ce genre, mais la plupart ratent l’essentiel. Le problème avec TablePlus, DataGrip, d’autres GUI de bases de données, ou des clones d’Airtable comme NocoDB ou VisualDB, c’est qu’ils n’ont pas les 3 fonctionnalités clés que je veux
    ① Il faut pouvoir voir les relations en ligne. Je veux voir une partie de la ligne liée, pas l’ID de clé étrangère, et c’est bien que cet outil l’ait compris
    ② Il faut des fonctions de filtrage, de regroupement et de vues. Pas seulement un WHERE SQL, mais des filtres simples et un regroupement par en-tête ; c’est ce qui fait la force d’Airtable
    ③ Il faut des requêtes et rapports générés par IA. En 2025, sortir un produit sans IA est dommage, et créer des requêtes SQL exactes et des graphiques en langage naturel n’est plus difficile. Voir l’exemple : https://www.youtube.com/watch?v=ooWaPVvljlU
    Si ces trois éléments sont réunis dans un même outil, on se rapproche du Graal de l’administration de bases de données

  • L’interface a l’air bonne, mais comme avec le slogan de Grist, le tagline me gêne. Peut-on vraiment dire que c’est de type tableur ? Il me semble qu’il manque la possibilité de manipuler lignes et colonnes, qui distingue un tableur d’une table

    • Je comprends la remarque. Le tagline essaie de transmettre aussi brièvement que possible l’idée générale de « modifier des données dans une UI en tableau sans beaucoup de clics ni de frappes », au prix d’une certaine précision
      C’est pourquoi nous avons écrit “spreadsheet-like” et non “spreadsheet”, mais je serais curieux d’entendre une meilleure formulation
  • J’aime le nom. Ça me fait penser au chef thermian de Galaxy Quest

  • Je me demande s’il y a une possibilité de prendre en charge PostGIS pour afficher des données géométriques sur une carte

  • Je l’installerai un jour. La gestion des permissions a l’air bonne, et je suis content de voir un projet qui ne réinvente pas la roue. Je me demande s’il y a un éditeur SQL
    Je ne l’ai pas vu dans la documentation ; s’il n’y en a pas, ce serait un obstacle assez important pour moi

    • Il n’y a pas encore d’éditeur SQL dans l’UI, mais c’est l’un des éléments que nous envisageons activement de traiter prochainement. Il figure aussi dans la section “What’s next?” de l’annonce de la bêta : https://mathesar.org/blog/2025/01/29/release-0-2-0
      Je ne sais pas si cela correspondra à votre cas d’usage, mais vous pouvez aussi utiliser Mathesar avec un éditeur SQL séparé. Mathesar reflète toujours l’état le plus récent de la base de données
  • Ça ressemble presque exactement à ce que notre équipe finance a demandé hier. Je vais absolument y jeter un œil
    Dans notre startup fintech, nous voulions conserver toutes les informations liées à l’argent dans une base de données, et faire en sorte que l’équipe finance les rapproche avec les informations bancaires réelles

  • Cela semble très utile pour les partisans du « utilisez simplement Postgres » [1], [2]
    Je me demande quelles sont les principales différences entre Mathesar et NocoDB, Baserow. Mathesar a-t-il aussi pour objectif de devenir une alternative open source à Airtable ?
    [1] Just use Postgres for everything (430 comments):
    https://news.ycombinator.com/item?id=33934139
    [2] Just Use Postgres!
    https://www.manning.com/books/just-use-postgres

    • NocoDB est une GUI de base de données généraliste prenant en charge plusieurs backends, tandis que Mathesar est spécifique à Postgres, mais s’intègre profondément à ses fonctionnalités natives, par exemple en utilisant les rôles et permissions Postgres pour le contrôle d’accès
      NocoDB ajoute ses propres abstractions au niveau de l’UI au-dessus des objets de base de données, tandis que Mathesar reflète directement la structure de la base. Cela dit, NocoDB propose des fonctionnalités que Mathesar ne prend pas encore en charge, comme les vues kanban et calendrier, les formulaires, et des types de données plus proches d’Airtable
      Baserow est plus proche d’une alternative open source à Airtable et, contrairement à Mathesar ou NocoDB, ne se connecte pas à une base de données existante. Ses fonctionnalités centrées UI, comme les vues multiples et les formulaires, ressemblent à celles de NocoDB, mais il ne fonctionne pas comme une interface de base de données à la manière de Mathesar
      Mathesar dispose d’un constructeur visuel de requêtes permettant de créer des jointures et des requêtes dans l’UI, ainsi que d’outils de modélisation de données comme le déplacement de colonnes entre tables ou la fusion de données dupliquées. NocoDB et Baserow n’ont pas ces fonctionnalités
      De plus, Mathesar est 100 % open source, tandis que NocoDB et Baserow suivent un modèle open core avec des fonctionnalités payantes. À long terme, nous voulons en faire une alternative compétitive à Airtable, et il est déjà possible de créer une base de données à partir de zéro, mais pour rivaliser avec Airtable sur un large éventail de cas d’usage, il faudra probablement davantage de types de données, de vues et d’intégrations
      Postgres est effectivement d’une polyvalence impressionnante, et c’est pourquoi nous avons estimé qu’il était acceptable de nous concentrer pour l’instant sur Postgres comme unique backend de base de données pris en charge
  • Vous devriez regarder Ultorg. Le nom n’est pas terrible, mais Mathesar n’est pas vraiment mieux, et ce projet contient beaucoup d’UX à la fois puissante et intuitive

    • Ultorg est excellent. Avec Eirik, le fondateur d’Ultorg, nous comparons parfois ce que nous avons appris l’un de l’autre
  • Cela semble très utile pour de nombreuses interfaces d’administration où les données sous-jacentes doivent être gérées par des experts métier et où l’UX n’est pas la priorité. Beaucoup d’applications d’entreprise comportent ce genre de partie
    Je me demande ce que signifie la licence GPLv3 dans ce scénario. Peut-on exécuter Mathesar comme un microservice aux côtés de services propriétaires ? Une entreprise qui ne veut pas publier tout son produit en open source pourrait tout de même être disposée à contribuer en amont ses modifications et améliorations du composant Mathesar

    • Mathesar est sous GPLv3, pas sous AGPL, donc il n’y a pas de problème à l’exécuter avec des services propriétaires. Une entreprise peut utiliser Mathesar comme service indépendant dans sa stack sans publier les autres composants en open source
      WordPress est un exemple similaire : il est aussi sous GPL, et dispose d’un écosystème d’hébergement très actif
      La GPLv3 ne s’applique que si vous modifiez Mathesar lui-même et le distribuez ; elle ne s’étend pas aux services qui interagissent simplement avec Mathesar. Si une entreprise modifie Mathesar et distribue cette version modifiée, ces modifications doivent être publiées sous GPLv3, mais l’utiliser comme microservice dans une stack d’entreprise ne pose pas de problème
      Bien sûr, nous serions ravis que vous envoyiez les modifications et améliorations en amont