Ce qui se passe
Typebase crée un dossier typebase/ dans votre application existante : le
schéma de base dans db/schema.ts, les actions exportées depuis actions/,
puis auth.ts, env.ts et publisher.ts pour le temps réel. Une commande
déploie un serveur entièrement typé que le front appelle comme des fonctions
locales.
npm i typebase-io && npm i -D typebase-io-cli
npx typebase-io-cli init
npx typebase-io-cli deployLe déploiement vise Vercel, Cloudflare Workers ou Deno Deploy, avec Postgres sur Neon — ou la génération du code serveur pour l'héberger ailleurs. Le projet revendique de ne posséder aucun serveur.
Le vrai argument : l'autorisation
Le positionnement n'est pas « encore un BaaS », c'est une critique frontale de RLS, et elle mérite d'être entendue même si vous n'adoptez pas l'outil.
Une politique RLS est implicite et vit dans un dialecte SQL que votre
éditeur ne typecheck pas. Une seule policy UPDATE ouvre l'écriture sur toutes
les colonnes de la table — y compris celles que vous ajouterez demain. Une clause
trop permissive passe la revue sans encombre, puisqu'aucun compilateur ne la
signale.
Chez Typebase, l'action déclare les colonnes qu'elle accepte et le contrôle d'accès s'exécute en code avant que la donnée n'atteigne la base. Ajoutez une colonne : le compilateur vous dit qui peut y écrire. Formulation de la page d'accueil, qui vise juste à l'heure des agents : le code que votre agent écrit est le code que votre compilateur vérifie.
Ce qu'il y a sous le capot
Rien d'exotique, et c'est le point fort — chaque brique est connue et
remplaçable. D'après le package.json publié sur npm (typebase-io 0.1.15,
licence MIT) :
| Rôle | Dépendance |
|---|---|
| ORM | drizzle-orm 1.0.0-beta.22 |
| RPC typé | @orpc/client et @orpc/server 1.14.3 |
| Authentification | better-auth 1.6.11 (+ adaptateur Drizzle) |
| Variables d'environnement | @t3-oss/env-core 0.13.11 |
| Base | PostgreSQL standard |
Guides fournis pour Next.js (≥ 15), SvelteKit (≥ 2.20), Nuxt et Expo, avec les
idiomes de chacun : Server Components, load functions, plugins Nuxt,
SecureStore. Le temps réel passe par des actions en streaming sur SSE.
Avant d'y poser un projet
- Version 0.1.15, dépôt public depuis avril 2026, une cinquantaine d'étoiles : c'est un lancement, pas une fondation.
- Le
drizzle-ormembarqué est lui-même en bêta (1.0.0-beta.22). - Le stockage de fichiers n'existe pas encore ; il figure sur la feuille de route. Sur une application qui manipule des médias, c'est bloquant.
Le compromis revendiqué — l'expérience de développement de Convex, l'ouverture de Supabase — est le bon axe de comparaison. Reste à vérifier ce que coûte la sortie : une couche d'abstraction de plus est une dépendance de plus, même lorsqu'elle promet qu'on peut éjecter à tout moment.
Source : typebase.io (en anglais).