Version 0.2.0 : chacun son compte, ses projets, ses invitations
Première connexion : sur une instance neuve, la première page crée le compte administrateur, avec votre adresse et votre mot de passe — plus de compte par défaut ni de mot de passe à chercher dans les journaux. L’installation
Création de comptes : chacun crée son compte, puis ses propres projets, dont il devient gestionnaire. L’administration peut la fermer ou la réserver à des domaines. Comptes et connexion
Partager un projet ou une base : qui a le niveau Gestion invite par un lien, en Lecture, Modification ou Gestion ; voit qui a accès, change un niveau, le retire. Jamais plus que ce qu’il gère.
Confidentialité : chacun ne voit plus que les personnes avec qui il partage un projet, et un nom de projet déjà pris par un autre ne se devine plus.
Connexion avec Google, Microsoft et tout fournisseur OpenID Connect (Keycloak, GitLab…), déclarés dans le .env ; une première connexion crée le compte si la création de comptes le permet. Configurer
Nouvel écran de connexion, dans le thème de l’application, clair ou sombre, et animé avec retenue ; des écrans vides illustrés dans l’application.
Mises à jour sans perte : basedb met son catalogue à jour de lui-même au démarrage, une installation 0.1 comprise, et refuse de démarrer sur une base qu’une version plus récente a déjà mise à jour. Mettre à jour
Hébergement
Une seule image Docker
basedb tient dans une seule image, eodia/basedb sur Docker Hub, pour amd64 et arm64 : l’interface, l’API sous /api et le serveur MCP sous /mcp, sur un seul port. L’installation
Deux fichiers suffisent — docker-compose.yml et .env — sans cloner le dépôt ni rien construire ; la mise à jour se fait par docker compose pull.
Derrière un domaine, le proxy HTTPS n’a plus de routage à faire : tout va au port 3000.
Formules en français — SI, ARRONDI, JOURS… — devenues des colonnes générées par PostgreSQL ; recherches, cumuls et décomptes à travers les relations. Les champs
Nouveaux types : relation multiple, personne, e-mail, numéro automatique, bouton ; et des formats choisis comme des types — monnaie, pourcentage, durée, note en étoiles, téléphone, code-barres.
Huit vues : la galerie et la liste rejoignent les six autres ; vues personnelles pour tout lecteur, vues verrouillées, ordre à la main, dépendances dans la chronologie. Les vues
La grille : recherche rapide, groupement, résumé par colonne sur tout le filtre, couleurs par règles, hauteur des lignes.
Vues partagées en lecture seule, intégrables à un autre site ; un calendrier devient un flux iCalendar pour Google Agenda, Outlook ou Apple Calendar. Le partage
Collaboration : commentaires et mentions, notifications, écritures des autres en temps réel, présence sur la table et sur la ligne. Travailler à plusieurs
Ctrl+Z annule la dernière écriture — une cellule, une carte déplacée, un import entier — et refuse plutôt que d’écraser ce qu’un autre a changé depuis.
Automatisations : quand une ligne est créée ou modifiée, à heure fixe ou d’un clic sur un bouton — modifier, créer, prévenir, appeler un webhook, écrire sur Slack. Automatiser
Interfaces : des tableaux de bord — chiffres, graphiques, listes, textes — lus avec les droits de chacun. Les interfaces
Intégrations : un canal Slack, et des tables synchronisées depuis un CSV en ligne, un agenda ou la vue d’un autre basedb. Les intégrations
Modèles de base : une galerie de dix modèles, une base décrite en une phrase à l’IA, et toute base enregistrable comme modèle. La galerie
Droits : l’écran Structure passe en consultation seule pour qui n’a pas le niveau Gestion.
Nouvelle identité : un logo, une palette, et un écran de connexion refait.
Une interface plus simple
La barre latérale ne liste plus que les bases et leurs tables ; les écrans de la base ouverte — Structure, Historique, Interfaces, Automatisations — sont réunis dans un bloc, juste au-dessus du profil.
Le menu du profil accueille ce qui n’est pas la donnée : la documentation API et MCP, les intégrations, les utilisateurs et les permissions.
Une requête SQL s’ouvre par le « + » de la barre d’onglets ou le menu de la base, sans doublon dans la barre latérale.
Nouvelle base propose les modèles et l’IA dès le dialogue ; la base de démonstration passe par la même galerie.
L’écran ne propose plus ce qui serait refusé : pas de bouton de structure sans Gestion, pas de « Supprimer » sans droit de supprimer ; et un lecteur crée ses propres vues au lieu de buter sur un message.
Les colonnes système sont rangées sous « Informations système » plutôt que proposées sur chaque table.
La fiche d’une ligne gagne ses commentaires, un bouton pour écrire ou appeler, et une note qui se règle d’un clic.
La connexion abandonne son fond animé en 3D pour un écran léger, qui respecte la préférence « moins de mouvement ».
Environnements, formulaires partagés, vues
Environnements : production, recette, développement pour une même base ; comparaison côte à côte, plan de migration, synchronisation des lignes.
Historique des structures : chaque création ou modification de table et de champ, capturée par déclencheur sur le catalogue.
Formulaires partagés : un lien public ou réservé aux membres, fermeture par date ou par nombre de réponses, attribution des réponses dans l’historique.
Six vues : grille, kanban, calendrier, chronologie, formulaire, questionnaire.
Historique des données : annuler une modification, restaurer une ligne supprimée.
IA : l’option IA sur n’importe quel champ, et le copilote.
Relation et Lien URL : deux types distincts ; le texte long s’écrit en Markdown.
Webhooks signés et ordonnés, propositions des agents à approuver.
Docker : un Dockerfile à trois cibles, un docker-compose complet, un proxy HTTPS en option.
Projets, droits, serveur MCP
Projets au-dessus des bases, et droits par groupes sur quatre niveaux : Aucun accès, Lecture, Édition, Gestion.
Comptes : mot de passe temporaire, changement à la première connexion, élévation pour l’administration.
Serveur MCP et relais stdio ; jetons d’intégration communs à l’API REST et au MCP.
Documentation générée « API et MCP » pour chaque base.
Champs, listes de choix, import
Modifier un champ et les options d’une liste de choix.
Import de fichiers CSV et JSON.
Le menu d’une table : renommer, décrire, supprimer.
Premier commit
Le monorepo : nommage, registre des codes d’erreur, catalogue extrait du document d’architecture, noyau, API, interface.