[{"data":1,"prerenderedAt":123},["ShallowReactive",2],{"seo-verification":3,"marketplace-app-fr-grist":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"marketplace-app-fr-grist",{"slug":9,"slugs":10,"categorySlugs":11,"name":16,"description":17,"phase":18,"unavailableReason":19,"docsUrl":20,"logo":21,"github":22,"tagline":23,"longDescription":24,"features":25,"useCases":32,"steps":45,"faq":64,"specs":83,"compatibleOs":93,"relatedApps":95,"relatedPosts":116,"category":120},"grist",{"fr":9,"en":9,"ar":9,"es":9},{"fr":12,"en":13,"ar":14,"es":15},"developpement","development","التطوير","desarrollo","Grist","Tableur-base de données self-hosted : modélisez vos données avec des relations entre tables et des formules Python, manipulez-les via une interface tableur familière — 11 k ⭐ GitHub, Apache-2.0, SQLite intégré, \u003C 512 Mo RAM.",1,null,"https:\u002F\u002Fservorbit.com\u002Fblog\u002Fself-host-grist-vps","https:\u002F\u002Fcdn.jsdelivr.net\u002Fgh\u002Fselfhst\u002Ficons\u002Fsvg\u002Fgrist.svg","https:\u002F\u002Fgithub.com\u002Fgristlabs\u002Fgrist-core","Alternative auto-hébergée à Airtable : base relationnelle en interface tableur, formules Python, API REST et collaboration en temps réel. Un conteneur, SQLite.","Grist (licence Apache-2.0, environ 11 400 étoiles sur GitHub, écrit en TypeScript) est un tableur qui se comporte comme une base de données relationnelle. Contrairement à Google Sheets ou Excel, il structure vos données en véritables tables : colonnes typées (texte, nombre, date, référence, pièce jointe), relations entre tables par colonnes de référence, et formules Python exécutées côté serveur dans un bac à sable, avec accès aux bibliothèques standard comme `datetime`, `math`, `re` ou `uuid`. Le tout reste manipulable dans une grille familière, sans écrire une ligne de SQL.\n\nSur un VPS ServOrbit, Grist tient dans un seul conteneur : aucun service de base de données externe à administrer, chaque document étant un fichier SQLite rangé dans le volume monté sur `\u002Fpersist`. Vous composez plusieurs vues sur les mêmes données — grille, fiche, graphique, calendrier, widget personnalisé —, vous définissez des règles d'accès jusqu'à la ligne et la colonne, et chaque document expose automatiquement une API REST interrogeable depuis n8n, Make ou n'importe quel client HTTP. L'édition est collaborative en temps réel, avec un journal indiquant qui a modifié quoi et quand. C'est l'outil adapté aux données structurées qui débordent d'un tableur à plat sans justifier une application SQL complète : suivi de projet, inventaire, budgets, contacts, résultats d'enquête, préparation de jeux de données.",[26,27,28,29,30,31],"Modèle de données relationnel : colonnes typées (texte, nombre, date, référence, pièce jointe), tables reliées par colonnes de référence et formules portant sur plusieurs tables, comme dans un tableur.","Formules Python avec accès aux bibliothèques : écrivez vos colonnes calculées en Python — `datetime`, `math`, `re`, `uuid` et toute bibliothèque pur Python — dans un bac à sable exécuté côté serveur, pas dans le navigateur.","Vues personnalisées : grille, fiche, graphique, calendrier et widget sur mesure à partir des mêmes données ; chaque vue se configure et se filtre indépendamment sans toucher à la table sous-jacente.","Règles d'accès par ligne et par colonne : restreignez la lecture ou l'écriture de chaque ligne et de chaque colonne selon les attributs de l'utilisateur, assez finement pour héberger plusieurs entités dans un même document.","API REST immédiate : chaque document expose des points d'entrée GET\u002FPOST\u002FPUT\u002FPATCH\u002FDELETE pour toutes ses tables, sans une ligne de code serveur — de quoi brancher n8n, Make ou n'importe quel client HTTP.","Collaboration en temps réel : plusieurs personnes éditent le même document simultanément, les changements se propagent en moins d'une seconde et un journal complet retrace qui a modifié quoi et quand.",[33,36,39,42],{"title":34,"body":35},"Fichier de contacts et CRM relationnel","Modélisez contacts, sociétés, affaires et activités comme des tables reliées. Les colonnes de référence permettent de filtrer les contacts par chargé de compte ou par étape du pipeline sans écrire de SQL. Construisez une vue fiche pour les commerciaux et une vue graphique pour la direction : mêmes données, deux lectures différentes.",{"title":37,"body":38},"Suivi de budget et de dépenses","Suivez les dépenses par projet et par catégorie, avec des colonnes de formule pour les cumuls, les prévisions et l'écart au budget. Récupérez ensuite les données dans un tableau de bord via l'API REST ou exportez-les en CSV pour votre comptable — le tout depuis un document Grist unique.",{"title":40,"body":41},"Gestion d'inventaire et de commandes","Modélisez produits, variantes, niveaux de stock et commandes dans des tables reliées. Ajoutez une colonne de formule qui signale les articles passés sous le seuil de réapprovisionnement et déclenche un scénario n8n par webhook. La vue fiche offre au personnel d'entrepôt une interface utilisable sur mobile, sans application dédiée à développer.",{"title":43,"body":44},"Traitement de données d'enquête","Importez un CSV exporté de Typeform ou de Google Forms, ajoutez des colonnes calculées pour normaliser les libellés, filtrez les répondants par segment et exportez un jeu de données propre — dans un seul document Grist, sans code et sans environnement Python à installer.",[46,49,52,55,58,61],{"title":47,"body":48},"Commander le VPS ServOrbit","Grist se contente de moins de 512 Mo de RAM au repos ; un VPS de 1 Go couvre confortablement un usage personnel ou une petite équipe. Les documents sont des fichiers SQLite stockés dans le volume monté sur `\u002Fpersist` : aucun service de base de données externe n'est à prévoir.",{"title":50,"body":51},"Déployer depuis le Marketplace","Depuis votre espace client ServOrbit, allez dans Marketplace → Développement → Grist → Déployer. Le conteneur `gristlabs\u002Fgrist` démarre en quelques secondes, avec un secret de session généré aléatoirement et le volume de persistance déjà monté.",{"title":53,"body":54},"Se connecter la première fois","Grist vous redirige vers un écran de connexion « boot » qui réclame une clé d'installation — saisissez la clé fournie. Vous enchaînez ensuite sur un assistant de configuration rapide, puis vous accédez à vos documents en tant qu'administrateur (admin@localhost.local).",{"title":56,"body":57},"Ouvrir Grist et se connecter","Grist écoute sur le port 8484, publié sur la boucle locale du VPS : exposez-le derrière un vhost sur votre domaine, ou passez par un tunnel le temps d'une session avec `ssh -L 8484:127.0.0.1:8484 root@\u003Cip>`. L'adresse administrateur par défaut `admin@localhost.local` est préconfigurée et Grist vous connecte automatiquement au premier accès — aucun serveur SMTP ni vérification par e-mail n'est requis pour une mise en route mono-utilisateur.",{"title":59,"body":60},"Créer votre premier document","Cliquez sur « + Add document », partez d'un modèle ou d'une page blanche, puis définissez les colonnes de votre table (texte, nombre, date, référence…). Vous pouvez aussi importer un fichier CSV, Excel ou `.grist` existant depuis le menu File.",{"title":62,"body":63},"Inviter des collaborateurs et brancher l'authentification","Le menu Partager de chaque document permet d'inviter vos collègues avec les rôles lecteur, éditeur ou propriétaire. Pour un usage multi-utilisateurs avec de vraies adresses e-mail authentifiées, renseignez les variables d'environnement `GRIST_OIDC_*` pointant vers votre Google Workspace, votre instance Authentik ou votre Keycloak.",[65,68,71,74,77,80],{"q":66,"a":67},"Grist est-il un tableur ou une base de données ?","Les deux. Grist stocke les données dans des tables typées et reliées, comme une base de données, et les présente dans une grille de type tableur. Vous écrivez des formules Python dans les cellules, vous reliez les tables par des colonnes de référence et vous construisez plusieurs vues sur les mêmes données — sans jamais écrire de SQL.",{"q":69,"a":70},"Quelle différence avec NocoDB et NocoBase, déjà présents au catalogue ?","NocoDB pose une grille collaborative par-dessus une base PostgreSQL ou MySQL existante : c'est un outil de consultation et d'édition de données déjà en place. NocoBase est une plateforme applicative : on y déclare un modèle de données puis on compose une application interne avec rôles, workflows et pages. Grist se tient entre les deux : un document autonome, relationnel, avec formules Python et vues multiples, que l'on manipule soi-même. Prenez Grist pour structurer et analyser vos propres données, NocoBase pour livrer une application à des utilisateurs finaux, NocoDB pour ouvrir une base existante à votre équipe.",{"q":72,"a":73},"Faut-il installer PostgreSQL ou MySQL ?","Non. Les documents sont stockés sous forme de fichiers SQLite dans le volume `\u002Fpersist`, à raison d'un fichier par document, et SQLite absorbe sans difficulté plusieurs milliers de lignes. Pour de très grands déploiements multi-utilisateurs, Grist accepte aussi PostgreSQL pour sa base d'annuaire, mais l'installation par défaut à un seul conteneur fonctionne entièrement sur SQLite.",{"q":75,"a":76},"Plusieurs personnes peuvent-elles éditer le même document en même temps ?","Oui. Grist gère l'édition collaborative en temps réel : les modifications apparaissent pour tous les utilisateurs connectés en moins d'une seconde, et un journal complet retrace qui a modifié quoi et quand. L'accès se règle document par document avec les rôles lecteur, éditeur et propriétaire, complétés si besoin par des règles d'accès par ligne et par colonne.",{"q":78,"a":79},"Comment exposer mes données Grist à une autre application ?","Chaque document publie automatiquement une API REST sous `\u002Fapi\u002Fdocs\u002F\u003CdocId>\u002Ftables\u002F\u003CtableId>\u002Frecords`. Vous y listez, créez, mettez à jour et supprimez des lignes avec les verbes HTTP standard, sans écrire de code serveur. C'est le moyen habituel de brancher n8n, Make ou n'importe quel client HTTP sur un document.",{"q":81,"a":82},"Comment sauvegarder mes documents ?","Les documents Grist sont des fichiers SQLite rangés dans `\u002Fpersist\u002Fdocs\u002F`. Vous pouvez les copier comme n'importe quel fichier, ou monter le volume dans une tâche Backrest — également disponible au catalogue ServOrbit — pour des sauvegardes versionnées automatiques vers S3, Backblaze B2 ou un serveur SFTP. Grist conserve par ailleurs un historique d'instantanés par document, accessible depuis le menu du document.",{"ram":84,"cpu":85,"disk":86,"stack":87,"port":92},"512 Mo","1 vCPU","5 Go",[88,89,90,91],"Docker","Node.js","Python","SQLite","8484",[94],"ubuntu-24.04",[96,104,110],{"name":97,"slug":98,"categorySlug":12,"categoryName":99,"categoryColor":100,"logo":101,"tagline":102,"description":103},"Laravel Stack","laravel-stack","Développement","text-warning bg-warning\u002F10","https:\u002F\u002Fcdn.simpleicons.org\u002Flaravel","PHP-FPM, Nginx, PostgreSQL, Redis et Supervisor — stack Laravel production-ready dès la commande.","PHP-FPM, Nginx, PostgreSQL, Redis et Supervisor préconfigurés. Déployez Laravel en production sans configuration initiale.",{"name":105,"slug":106,"categorySlug":12,"categoryName":99,"categoryColor":100,"logo":107,"tagline":108,"description":109},"Node.js Stack","nodejs-stack","https:\u002F\u002Fcdn.simpleicons.org\u002Fnodedotjs","Node.js, PM2, Nginx et base de données — environnement production pour vos APIs et apps JavaScript.","Node.js avec PM2, Nginx reverse proxy et base de données. Vos APIs et applications JavaScript prêtes à recevoir du trafic.",{"name":111,"slug":112,"categorySlug":12,"categoryName":99,"categoryColor":100,"logo":113,"tagline":114,"description":115},"Nuxt Stack","nuxt-stack","https:\u002F\u002Fcdn.simpleicons.org\u002Fnuxt","Nuxt 3 avec SSR, PostgreSQL et reverse proxy — environnement production pour vos apps Vue.js.","Nuxt 3 avec SSR, PostgreSQL et reverse proxy. Environnement production pour vos applications Vue.js.",[117,118,119],"self-host-grist-vps","deployer-laravel-vps","deployer-nodejs-app-vps",{"key":12,"slug":12,"name":99,"objective":121,"icon":122,"color":100},"Démarrer rapidement un projet logiciel.","dev",1793820303862]