Initial vault setup

This commit is contained in:
2026-06-09 18:40:21 +02:00
commit bda02d587f
3692 changed files with 402457 additions and 0 deletions
+184
View File
@@ -0,0 +1,184 @@
---
title: Teable
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, database, low-code, no-code, postgres, airtable, typescript, sql, apache]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Database, https://github.com/teableio/teable]
---
# 🗄️ Teable
> **L'alternative Airtable-like ultra-performante basée sur PostgreSQL** : expérience proche d'Airtable, architecture de grille instantanée, vues multiples, API SQL et REST automatique. Le choix moderne et rapide.
## 📋 Informations Générales
| Champ | Valeur |
| :--- | :--- |
| **Site web** | [teable.io](https://teable.io/) |
| **GitHub** | [teableio/teable](https://github.com/teableio/teable) |
| **License** | Apache-2.0 |
| **Langage** | TypeScript |
| **Étoiles GitHub** | 21k ⭐ |
| **Dernière MAJ** | 2026-06-06 |
| **Catégorie** | [[cat-database\|Database]] |
## 📝 Description
**Teable** est une **plateforme no-code low-code** qui vise à être **l'alternative open source à Airtable** la plus fidèle et la plus rapide, en s'appuyant directement sur **PostgreSQL** comme moteur de stockage. Le pari de Teable est de pousser la **vitesse d'une grille Airtable** (filtres, tris, calculs à la volée) tout en gardant la **puissance SQL de Postgres** sous le capot.
### 🏗️ Architecture : le secret de la vitesse
Là où NocoDB enveloppe une BDD avec une couche d'abstraction, Teable utilise un **schéma interne malin** : chaque table, chaque champ est stocké dans Postgres de manière à ce que les **index existants couvrent 90% des requêtes de grille** (filtres, tris, groupements). Résultat : la grille reste **fluide même avec 100 000+ lignes** par table, là où NocoDB commence à ralentir.
### 📦 Fonctionnalités
-**Vues** : Grid, Kanban, Calendar, Gallery, Form, **Gantt** (bêta)
-**Formules** : langage de formules compatible Airtable (~80 fonctions : `IF`, `CONCAT`, `SUM`, `LOOKUP`, `DATETIME_DIFF`…)
-**Champs** : text, number, date, select, multi-select, link, formula, rollup, attachment, user, autocomplete, rating…
-**Permissions** : rôles et partage de bases/vues
-**API auto** : REST (compatible Airtable en partie) + SQL direct
-**Webhooks** + **automations** (à venir)
-**Import Airtable** (CSV natif, base Airtable complète via migration tool)
-**Plugins** et **custom fields**
-**Single Sign-On** (OIDC)
-**i18n** : interface en plusieurs langues
### 🆚 Teable vs NocoDB vs Airtable
| Critère | Teable | NocoDB | Airtable |
| :--- | :--- | :--- | :--- |
| Licence | Apache-2.0 | AGPL-3.0 | Propriétaire |
| BDD sous-jacente | Postgres obligatoire | Multi (PG, MySQL, SQLite) | Propriétaire |
| Performance grille | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
| Compatibilité Airtable | Très haute | Haute | Native |
| Formules | ~80 fonctions | ~30 fonctions | ~200+ fonctions |
| Maturité | Récent mais très actif | Très mature | Standard |
| Limite lignes | Pas de limite théorique | Pas de limite | Variable selon plan |
**Public cible** : homelabs qui veulent **la sensation Airtable** sans les restrictions (limites, prix, dépendance cloud) ; équipes qui ont besoin d'un backend Airtable-like rapide ; projets de prototypage.
## 🚀 Installation
### Option 1 : Docker Compose (recommandé)
```yaml
# docker-compose.yml
version: '3.8'
services:
teable:
image: teable/tee:latest
container_name: teable
restart: unless-stopped
environment:
PRISMA_DATABASE_URL: "postgresql://teable:changez_moi@teable-db:5432/teable?schema=public"
PUBLIC_ORIGIN: "https://teable.example.com"
SECRET_KEY: "CHANGEZ_CE_SECRET_LONG_ET_ALEATOIRE"
ports:
- "3000:3000"
volumes:
- teable-uploads:/app/uploads
depends_on:
- teable-db
labels:
- "traefik.enable=true"
- "traefik.http.routers.teable.rule=Host(`teable.example.com`)"
- "traefik.http.routers.teable.entrypoints=websecure"
- "traefik.http.routers.teable.tls.certresolver=letsencrypt"
- "traefik.http.services.teable.loadbalancer.server.port=3000"
teable-db:
image: postgres:16-alpine
container_name: teable-db
restart: unless-stopped
environment:
POSTGRES_DB: teable
POSTGRES_USER: teable
POSTGRES_PASSWORD: "changez_moi"
volumes:
- teable-db:/var/lib/postgresql/data
volumes:
teable-uploads:
teable-db:
```
### Option 2 : Cloud (sans installation)
[app.teable.io](https://app.teable.io) — offre gratuite avec limitations.
### Option 3 : Développement local
```bash
git clone https://github.com/teableio/teable.git
cd teable
docker compose -f docker-compose.dev.yml up
```
## ⚙️ Configuration Initiale
1. **Premier accès** : `https://teable.example.com` → créer le compte admin (premier compte créé = admin)
2. **Créer un espace** : Sidebar → + New Space
3. **Créer la première table** : dans l'espace → + New Table → ajouter les champs
4. **Importer un CSV** : menu table → Import → drag-and-drop
5. **Migrer depuis Airtable** : menu → Migrate from Airtable → fournir le token API Airtable → l'outil importe les bases
6. **Tester l'API** : Account → API Tokens → générer un token → requêter `https://teable.example.com/api/...`
## 🔄 Alternatives
### Open Source
- **NocoDB** — Concurrent principal, plus mature, plus de connecteurs BDD
- **Baserow** — Plus simple, plus jeune, MIT
- **Airtable-like Grid in Payload** — quand on a déjà Payload
- **Directus** — Plus orienté CMS/dev que grille
- **Grist** — Tableur relationnel plus orienté calculs scientifiques
- **Mathesar** — Tableur brut, orienté data teams
### Propriétaires
- **Airtable** — Le standard, freemium, cloud uniquement
- **Notion** — Bases + wiki, plus grand public
- **ClickUp** — Project management avec tables intégrées
- **Retool Tables** — Plus dev-oriented
- **Softr** — Connecté à Airtable pour publier des apps
### Comparaison
| Critère | Teable | NocoDB | Baserow | Airtable |
| :--- | :--- | :--- | :--- | :--- |
| Licence | Apache-2.0 | AGPL-3.0 | MIT | Propriétaire |
| BDD | Postgres | Multi | Postgres | Propriétaire |
| Performance 100k+ rows | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐ | ⭐⭐⭐⭐⭐ |
| Formules | ~80 | ~30 | ~20 | ~200 |
| Import Airtable | ✅ Outil dédié | Manuel | Manuel | Native |
| Self-hosted | ✅ | ✅ | ✅ | ❌ |
| Cloud gratuit | ✅ Limité | ✅ Limité | ✅ Limité | ✅ Très limité |
| Vues | 5+ (Gantt bêta) | 6 | 5 | 8 |
**Verdict** : Teable est **le choix le plus moderne** pour un homelab qui veut la **sensation Airtable** avec la **performance Postgres**. Pour un écosystème plus large de connecteurs BDD, **NocoDB** reste devant. Pour la simplicité, **Baserow**.
## 🔐 Sécurité
- **Authentification** : email/password, **OIDC** pour SSO
- **HTTPS obligatoire** via [[app-traefik]] — Teable expose l'API sur le même domaine
- **RBAC** par espace/base
- **Secrets** : `SECRET_KEY` et `PRISMA_DATABASE_URL` à stocker hors de l'image
- **Backups** : [[app-backup]] (restic) sur le volume `teable-uploads` + `pg_dump` régulier de `teable-db` (la BDD Postgres contient TOUTE votre data)
- **Uploads** : le volume `teable-uploads` peut grossir vite (pièces jointes, avatars)
## 📚 Ressources
- [Site officiel](https://teable.io/)
- [GitHub teableio/teable](https://github.com/teableio/teable)
- [Documentation](https://docs.teable.io/)
- [Démo en ligne](https://demo.teable.io/)
## Pages Liées
- [[cat-database]] — Catégorie Database
- [[app-postgres]] — BDD moteur de Teable
- [[app-backup]] (restic) — Sauvegardes critiques
- [[app-traefik]] — Reverse-proxy HTTPS
- [[recettes-docker-compose]] — Recettes
- [[securisation-home-lab]] — Bonnes pratiques
- [[glossaire-homelab]] — Glossaire