Bereket Engida - Better-Auth
Durée: 47m14s
Date de sortie: 10/08/2025
This week we talk to Bereket Engida (Beka) the creator of better-auth. Better-auth is an extensible, open source authentication library that's taking the JavaScript community by storm.- https://www.beka.et/- https://better-auth.comBecome a paid subscriber our patreon, spotify, or apple podcasts to help support the podcast. https://www.patreon.com/devtoolsfmhttps://podcasters.spotify.com/pod/show/devtoolsfm/subscribehttps://podcasts.apple.com/us/podcast/devtools-fm/id1566647758https://www.youtube.com/@devtoolsfm/membership
Je faisais un NixDoth, je me souviens de leur discord et je me disais,
Hey, est-ce que tu as un organisateur clair pour NixDoth ?
Et quelqu'un me répondait,
pourquoi pas vous le faites ?
Et je me disais, OK, je vais le faire.
Bonjour, bienvenue à DevTools FM.
C'est un podcast sur les tools de développeur.
Les gens qui le font, je suis Andrew et je suis le host de Micah.
Bonjour, tout le monde.
C'est un épisode spécial.
Je suis très heureux pour ce jour-là.
On a Bicca avec nous.
Vous avez créé le library Better Off.
Je l'ai utilisé dans 4 ou 5 projets.
C'est un peu édictif.
Je suis en train de mettre en place des projets qui ne sont pas nécessaires
pour que je puisse utiliser le library.
Nous sommes très heureux de vous avoir parlé de votre travail à Better Off.
Avant de vous en parler,
nous aimerions juste entendre un peu plus de vous.
Oui, je suis Bicca.
En fait, mon nom est Barackad Ngeda.
Je suis originaire de Thierpia.
Je suis en train de vivre en San Francisco.
Je l'ai appris pour le programme,
en fait, très rapidement.
Je pense que 4 ou 5 ans,
j'étais en cours de sciences de la compétition.
Je suis en cours de bataille,
mais j'ai étudier à ma dernière année de collège
avant de finir mon étudiant.
Je pensais que ça serait mieux de dire que je suis en cours de bataille
que de me faire un programme en salle de school.
Mais...
Je suis en programme et je suis le creator de Better Off.
Je me suis aussi créé d'autres projets.
Je n'ai pas le nom de Better Fetch.
Better Coal.
Je suis très content d'être ici.
Je suis très content de vous parler.
Authentication est quelque chose que j'ai essayé de mettre dans les appels.
C'est difficile de faire.
Il y a des entreprises qui ont été offertes comme service.
Vous pouvez nous dire ce que votre expérience était comme
avec Authentication avant de commencer à faire Better Off ?
Oui, c'est une bonne question.
Avant de faire Better Off,
mon premier interaction avec Authentication
était Jungle.
Je faisais Jungle pour faire mon premier interaction avec Dave.
Quand je faisais Jungle, ils ont un petit
Jungle, Authent, un petit package.
C'était mon premier interaction.
Je pense que la plupart de nous,
quand nous étions en programme,
et quand nous étions en train de faire un service de backing,
Authentication est une des choses qui ont besoin d'exister avec votre app.
C'est quelque chose que vous faites.
Je suis pas vraiment...
Je suis en programme depuis 4 ans.
Mais même si personne ne t'a pas fait un service,
tu dois faire un service ou quelque chose pour impliquer l'art.
C'est quelque chose que vous faites en backing.
Si tu es en train de faire Jungle,
ou même Laravel,
ou tout ce genre de frameworks,
backing est une vraie frameworks.
Ils ont déjà des primitives à l'art.
C'était mon premier interaction avec eux.
C'est ce que j'ai fait avec Myandis8.
Hey, c'est tout ce que vous impliquez.
Vous ne vous outsourcez pas.
Ça ne fait rien, c'est que c'est interdit.
Je suis arrivé à Next.js
et mon premier interaction était Next.auth.
C'était une des des choses qui ont été décennies.
C'était mieux que Jungle.
Il n'y a que le password.
C'était une bonne expérience.
Mais Next.auth était une meilleure expérience pour moi.
Et puis j'ai essayé de faire un service sur un service de 3D.
J'ai essayé un passeport.
J'ai essayé mon travail précédent.
Nous étions en train de faire un passeport.
J'ai essayé de faire un 0, aussi.
Et j'ai aussi essayé de faire un rôle de notre propre travail.
J'ai essayé de faire un travail précédent.
J'ai expéré le travail avec ce type de technique.
Mais j'ai aussi appris un chef de service à 3D.
J'ai appris que tout le monde était en train de faire un Next.auth.
Et après, tout le monde était en train de faire un Clare.
J'ai jamais eu de change.
J'ai essayé de faire un travail précédent,
et j'ai rien fait.
Je n'ai pas expéré le travail avec Next.auth.
Mais j'ai eu beaucoup de choses que j'ai faite.
Et beaucoup de choses que la team a prouvé.
Et je pense que la team n'avait pas de temps à travailler sur ça,
à éloigner des features.
Les doigts étaient vraiment en train de faire un travail.
Mais je n'ai pas expéré le travail avec ce type de technique.
Il y avait l'Ottawa.
J'ai aussi essayé d'utiliser l'Ottawa.
Parce que c'est tout le monde qui a appris le Next.auth.
Mais il y avait même moins de features.
C'était comme ma première expérience avec l'Ottawa.
Et j'ai essayé de faire un travail précédent.
Qu'est-ce qui a été le motivateur qui a poussé le point?
Il faut que ça soit solide et que je dois le faire.
Oui.
J'ai travaillé sur un projet différent.
C'était un projet d'open source.
J'ai fait un plan de web analytics.
C'était comme un post-hoc.
J'ai fait quelque chose comme ça.
C'est un projet d'open source.
J'ai besoin d'implémentation de la tendance.
Vous avez le futur organisé.
Si vous avez utilisé le cloud,
vous avez le futur de la box.
Vous pouvez organiser et vous avez des membres.
Les membres ont leurs seins de rouleaux.
Ils ont des invités pour les membres.
Tout ça va être utilisé pour vous.
La tendance a été faite pendant longtemps.
Et chaque application de SaaS,
vous avez probablement un certain type de setup.
Mais quand je voulais implémenter ça,
j'ai utilisé le Nickstaff.
Il y avait une solution n'a pas été solide.
Je l'ai utilisé de scratch.
Je me souviens de leur discord.
Je me disais que c'était quelque chose
d'organisation claire pour Nickstaff.
Et quelqu'un me répondait
qu'il ne faut pas faire ça.
Et je lui ai dit que je vais faire ça.
Mais je pense que j'ai construit un projet
qui s'appelle Nickstorg.
Il y a des futures spécifiques sur Nickstaff.
Mais je me suis dit que c'était un peu de la suite.
Il n'était jamais construit pour ça.
Il n'était jamais construit pour s'exprimer.
J'ai décidé de construire un très bon out-frame
avec un scratch.
Il y avait un système de plagin.
Donc quand vous avez besoin de ces features,
vous pouvez ajouter un plagin
pour faire le travail.
Je pensais que ce serait facile.
Mais il m'a pris 6 mois de travail
pour donner une première version.
Et ça était la première chose
que j'ai pu commencer.
Je suis arrivé à la place
avec un nom de plus grand outil.
Et je pensais que c'était un outil.
Mais je ne pensais pas que ça serait un peu en pain.
Je vais en pain et j'ai essayé de le dire.
Et il n'était pas construit.
C'est tout le même que je dois
commencer par le tout.
C'est la fin de ces projets.
Parce que quelqu'un pense que c'est un bon nom
et le nom est encore disponible.
Et tu as dit que c'est la fin de le travail.
C'est la fin de l'univers
qui me donne le sain
pour faire le travail.
Et donc, BetterOff a construit
un système de plagin comme vous l'avez dit.
Et c'est pas nécessairement facile
de faire une outil à la plagin.
C'est une espèce de plagin
qui a une espèce de plagin
qui est difficile.
Vous avez expéréimenté
le système de plagin
ou avez-vous fait ça pour le premier temps?
Comment avez-vous fait
de la façon dont vous avez construit un système de plagin?
Je faisais de la musique
avant de commencer le programme.
Et dans la musique,
les plagins sont
essentiels pour la construction
de votre station.
Donc,
j'étais familial avec un système de plagin
qui avait un grand débit
dans la ligne.
Et aussi,
j'ai eu l'obstruction.
Mais je n'avais pas expérimenté
de faire des plagins
qui n'avaient jamais eu
une élaboration qui a des plagins
ou quelque chose comme ça.
C'est la raison pour laquelle j'ai fait 6 ans
de la construction.
Plus que tout, c'était la plus difficile part.
Je l'ai rejeté le whole élaboration 4 fois.
Et 4 fois c'est parce que
j'ai dû voir comment la construction
de la plagin s'est faite.
Je serais en train de construire le tout.
Et puis, je pense
que les plagins ne pourraient pas être fait.
Donc maintenant, je dois faire de la construction
et voir comment les plagins fonctionnent.
Donc, les plagins
sont la plus difficile part,
d'ailleurs, car nous avons un système de plagin
pour les clients et le service.
Et les deux choses qui ont besoin de travailler.
Et quand il s'agit de la type script,
il faut aussi penser à comment la type
de la construction fonctionne et à comment
les plagins affectent le système de la
Même,
par exemple, nous avons des adapteurs.
Donc, quand vous voulez utiliser votre propre database,
vous pouvez vous donner un adapteur.
Et nous devons savoir comment les adapteurs
sont obligés de plagin.
Et les plus grands adapteurs avant nous
sont lesquels nous implementons les queries spécifiques.
Donc, nous devons savoir
comment les adapteurs sont plus génériques.
Et nous devons savoir la construction de la construction.
Et je pense que
c'est un peu difficile
d'y faire, mais
finalement, vous avez compris
que c'est une structure
assez bonne.
Vous avez pris
une inspiration de l'autre système de plagin
au cours de cette journée?
Parce que ce que vous avez terminé avec
est très similaire
à l'autre système de plagin
avec des clés et des preuves et des verres.
Je n'en parle pas particulièrement
de la spécifique, mais je me souviens
d'aller au next in UXT,
le framework.
Ils ont un système de plagin,
je l'ai appris par leur code.
J'ai essayé d'inspirer
des inspirations de la Laraville.
J'ai regardé tout ce que ils ont.
J'ai travaillé dans des rues de Rouen-Rouels.
J'ai essayé de voir comment ils s'impliquaient.
Mais pour les spécifiques,
j'ai regardé
avec les IT, leur système de plagin.
Donc, ce sont des inspirations,
mais il n'y avait pas de spécifique inspiration.
Mais, je pense que les plagins
sont très similaires.
Donc,
nous ne faisons pas de choses super
différentes
sur les plagins.
Parce que nous avons un type
de spécifique, nous faisons quelque chose
intéressant, mais plus tard, c'est similaire
à l'autre plagin.
Quels sont les challenges
de soutenir des databases multiples?
Je veux dire, c'est un fonctionnel
que j'ai utilisé,
j'ai mis à la prismat,
j'ai mis à la gisle,
j'ai mis à la route de mes propres.
C'est un problème
de soutenir toutes ces choses.
Et si vous avez hâte de faire des performances
et de la sécurité et tout,
c'est comme de faire sure que vous avez tous les rightes.
Ça semble difficile.
Comment avez-vous fait?
Je pense que les adapteurs de la communité
qui s'impliquaient avant nous,
par exemple, la prochaine autochtones
qui sont en train de faire des performances,
pour exemple,
il y a une action qui se trouve
dans la session de fin.
Donc, ça sera impliqué par les adapteurs.
Les adapteurs ont une session de fin.
Par exemple, vous vous appelez Prisma,
vous appelez Prisil
pour créer une session de fin.
Vous avez tous ces ordres et les adapteurs
pour créer leur session de fin.
Mais pour nous,
depuis que nous avons des plugins,
nous ne pouvons pas faire ça,
parce que tous les plugins ont leurs
propres clés.
Donc, pour tous les plugins,
ce sera possible.
Pour tous les adapteurs,
c'est inassistable.
Donc, la façon dont nous avons fait ça,
c'est parce que nous avons construit un autre OR ring
sur le type de OR ring.
Nous avons un autre OR ring
qui unifie tous les OR rings.
Donc, nous avons Prisma OR ring
dans le secteur de la communité.
Nous avons donc les adapteurs qui convertissent
les propres clés
pour les respectifs.
C'était très intéressant
de se faire probablement,
parce qu'il n'y avait pas de choses à faire.
Comment vous le savez,
sur FumaDocs,
FumaDocs,
ils sont un framework documentaire.
Comment vous le savez ?
Oui,
ils ont aussi un cas de similarité.
Nous collèverons avec eux
pour faire ce genre de source.
Et comment nous travaillons pour
les autres personnes qui veulent
construire ce type de choses dans le futur.
Mais oui,
c'est comme la façon dont
les adapteurs sont clés.
J'ai construit beaucoup de
systèmes de plug-in sur type script.
Et ce n'est pas le plus facile à faire.
Vous devez être un genre de wizard
pour avoir l'expérience que vous voulez.
Est-ce qu'il y a des challenges
de développer cette partie ?
Parce que personnellement,
j'ai eu beaucoup de troubles
pour pouvoir faire ça parfaitement.
Oui, c'est un bon point.
Je vais dire que c'est
l'un des choses plus
difficile de faire sur plug-in.
Je n'ai pas été un wizard,
quand j'ai commencé le projet,
j'ai eu un knowledge de type script très basé.
Je sais les genres, mais je ne savais pas
beaucoup de choses.
Et c'est très difficile de apprendre ces choses.
Il n'y a pas de guide,
d'ailleurs,
il n'y a pas de la même chose.
Il n'y a pas de la même chose.
Il n'y a pas de la même chose.
Ce que j'ai fait,
j'ai construit un autre projet.
Il s'appelle Better Fetch.
Ça m'a dit
beaucoup de choses.
C'est un projet
très complexe de type.
Et quand je faisais ça,
j'ai appris beaucoup de choses.
Et je pense que
quand tu comptes sur les genres de type,
la seule façon de apprendre,
c'est de faire ça pour toi.
C'est de faire ça pour toi.
D'ailleurs, c'est impossible de apprendre.
Je me souviens
d'avoir tout le type.
J'ai beaucoup de poids.
J'ai vu tous ces cours.
Je ne pouvais pas avoir
de la même chose.
Mais
quand j'ai construit ce projet,
j'ai été un wizard.
C'est pas le cas
quand tu m'aimes le genre de type.
Je comprends mon code.
Mais je sais
ce que tu as fait.
Exactement.
Et tu es très proche
parce que je pense que c'est très complexe.
Et tu n'as pas d'étonnement.
Mais tu sais, c'est un travail.
Je pense que je suis smart.
C'est curieux
comment le type de type est powerful.
C'est juste l'expression
de ces types complexes.
C'est pas intuable.
Exactement.
C'est très difficile de optimiser.
On a eu un peu de problèmes
de la performance.
C'est difficile
de relearner
un peu de choses pour improvement
de la performance.
Donc, je pense que c'est un challenge.
Surtout d'improver la performance.
Mais
d'avoir les types
de la performance
qui sont les plus importants
Quand tu as construit
ce type
de plugins,
que penses-tu que c'est le plus important
pour les gens
de l'équipe ?
Ces choses doivent être
les plugins que nous soutenons.
Je pense que c'est un question
assez similaire.
Mais une question
comment tu détermines
si tu devrais construire un plugin
ou faire le framework ?
Oui, c'est une bonne question.
La première chose que j'ai voulu
faire
dans le corps,
c'était
mon logiciel.
Donc, si tu as des autres,
tu n'as pas de passports
mais de la même manière,
je veux les faire dans le corps.
Je ne veux pas
introduire ces gens
pour les concepts de plugins
si tu veux juste impliquer, continuer de Google.
Je ne veux pas que tu fasses
des plugins et tout ce genre de choses.
Donc, pour ces types de choses
je voulais faire un partage
du corps.
Mais je veux vraiment
faire le travail
pour exemple,
nous avons un plugin de structure.
Le plugin de structure,
le site app
n'a pas
d'informations sur le plugin de structure.
Donc, tout le logiciel
en regardant le plugin,
n'existe que le plugin de structure.
Par exemple,
quand tu impliques un plugin de structure,
il sera impliqué dans le plugin de structure.
Quand tu le dis, tu verras
si tu n'as pas
le plugin de structure et tu ne l'étend pas
et tu n'as pas
le plugin de structure.
Mais en ce cas,
je voulais faire des plugins très isolés
et que, quand ils sont ajoutés,
ils ne sont que
dans ce logiciel.
Par exemple,
dans notre implementation, il n'y a pas de concept
de
structure.
Il n'existe que dans le plugin de structure.
Donc, je veux faire ça pour chaque plugin.
Je pense que le plus important,
quand j'ai essayé de la laitier,
j'ai voulu faire un travail de organisation
et on a fait le travail de structure.
Mais le plus important,
c'est que
le plus intéressant de la laitier
est la session multi.
Donc, tu peux avoir 2 sessions
dans un dispositif.
Je me suis toujours inquiétant
comment les gens
peuvent s'y utiliser.
Quand tu as utilisé le Gmail,
tu peux le faire dans 2 différents accounts
et en même temps, je me suis toujours inquiétant
comment cela a été impliqué.
Donc, je voulais
faire ça.
Maintenant, quand on a décidé
de faire un plugin ou un partage
de la construction,
ce n'est pas
un partage de simple setup
ou
des gens qui ne sont pas en train de la laitier.
Ils ont un plus complexe setup.
C'est la manière dont nous sommes.
Ok, la première question.
Il y a un grand, plus grand, on peut parler de ça.
Donc, à ces jours,
les façons sont belles et compliquées.
Il y a
des façons de la laitier
pour l'authentifier.
On a un email password
on a des keys pass
on a un 2 factor
on a quelque chose de web auth n
Donc, pour nous,
nous avons pu nous faire un approach
de comment tu as ajouté
toutes ces différentes choses dans la frameworks.
Oui,
par exemple,
pour l'exemple, quelque chose de pas qui est un partage
de la laitier.
pour beaucoup de part, je vais juste,
quand je dois créer un plugin, je vais apprendre
tout ce que je peux.
Si ils ont un genre de RFC que je peux avoir,
je vais aller par ça et je vais avoir
tout ce que je peux donner à mes mains.
Et aussi, je vais essayer de voir
des implementations d'autres
les livres ou les frameworks,
qui ont déjà été les husbands d'aider.
Surtout quand il s'agit de l'authentique,
la sécurité va être un gros facteur.
Donc, tu veux avoir ces choses,
tu ne peux pas vraiment
avoir ces choses, tu dois
essayer de les avoir et de les avoir
correctes.
Donc, quand je dois
faire un autre implementation, par exemple, pas qui est
pas qui, notre implementation pas qui est
réalisée sur un livre
appelé simple web auth n,
c'est un,
tu as probablement entendu, mais c'est un
popular, c'est recommandé
dans le laboratoire.
Donc, si c'est quelque chose
que l'on peut réunir, on ne
ne va pas essayer de réinventer
quelque chose qui a déjà existé.
Donc, on essaie de réunir ça,
mais pour beaucoup de choses, c'est que
j'ai essayé de me dire
un peu, et si ils ont
un truc spécial, si ils ont un truc de
spake, je vais aller par ça et
apprendre à éliminer et essayer de
réimventer ça. Je pense.
Donc, avant que tu parles
d'en parler,
tu es vraiment essayé de réimplementer
les parts de la flow
dans les plugins et de les isoler.
Donc, ton 2 facteur
est dans le seuil
de la plugin. Le truc intéressant et
difficile est que quand tu penses
sur la test de sécurité pour un flow indien,
cela peut s'y aller
sur un ou plus de plugins, et
il peut être plus difficile de
comprendre où les
vulnerabilities possibles peuvent arriver,
versus si tu regardes
un simple, linéaire,
tout est dans un fil ou un fil ou
quelque chose. Donc, comment
modériser
les parts de la flow
dans les plugins, change comment tu penses
sur la test de sécurité et en général, test.
Oui, c'est
une bonne question, parce que, pour
l'attention, si tu as 2 plugins,
que les plugins qui ont
les plugins sont des questions de sécurité,
peut-être que
tu n'as pas de 1
qui ne l'a pas.
C'est un problème plus intéressant
pour nous de se résoudre.
Je ne dirais pas,
spécialement pour les utilisateurs,
je ne pense pas qu'on fasse
la toute la façon de
tester les frameworks que nous
utilisons.
Mais pour nous,
une des décisions pour avoir, c'est que
nous distribuons tous les plugins,
presque tous les plugins dans le même package.
Si tu veux, pour exemple, importe
un package spécial, tu n'en installes pas
un autre, juste pour
faire le premier.
Nous voulons avoir tout,
pour pouvoir tester.
Pour voir comment
ils peuvent travailler ensemble, et
ne causent pas de problèmes.
C'est une décision que nous avons
d'un package, en lieu d'avoir un
bunch de plugins, qui sont séparés.
C'est un des choses,
nous serons séparés par la régulation,
parce que, on a un jour,
on a un peu d'issue de la sécurité,
c'est un des plugins,
nous ne voulons pas obéir
les frameworks pour pouvoir fixer.
Nous allons le faire,
mais le challenge est
d'avoir
une question,
qu'on ne s'arrête pas
d'utiliser un de les plugins.
Nous avons essayé de se résoudre
d'avoir un problème,
d'utiliser les architectures
pour les plugins,
et pour les vues,
nous avons essayé de faire
tous les plugins,
je me souviens,
il y a des cookies qui passent
dans les autres plugins,
mais il y a
un problème,
nous avons besoin de réactiver
tout,
pour pouvoir fixer
les plugins,
pour les communications.
Nous avons essayé de
les résoudre,
les plugins ne s'arrêtent pas
d'un à un autre,
il n'y a pas de communication
entre les plugins,
il n'y a pas de
des récréments de la dépendance
entre les plugins,
il n'y a pas de la
isolation du plugin,
il n'y a pas de
des issues de la dépendance,
qui se feront plus tard.
Quels sont les plugins qui
ont besoin d'un à un autre ?
Ça peut être assez compliqué.
Pour exemple,
nous avons un provider open-aider,
donc il y a un plugin OIDC,
pour exemple,
pour le plugin OIDC,
les plugins JWT ont besoin de parler de l'autre,
le plugin JWT
a un point
de JWKS,
où vous pouvez faire le même,
pour violer la JWT.
Donc,
il faut que vous puissiez
faire un token,
et tout comme ça.
Ce sont les 2 plugins,
qui ont besoin de communiquer,
pour les autres, il faut que
il y ait un plugin,
et ils pensent
que les plugins ne existent pas.
Pour exemple,
si vous avez un plugin OIDC,
vous pourrez avoir
un plugin specific,
et en lieu d'un
différent.
Mais seulement ceux 2 plugins
doivent communiquer avec les autres,
pour le moment.
C'est bien.
Je suis sûr que c'est un challenge
de le garder de la façon, mais c'est probablement
mieux pour tout le monde, comme les choses
plus tardes.
Oui, c'est plus dur.
Pour exemple,
pour le plugin Stripe,
nous avons
un OIDC
qui est un OIDC
qui peut être
une organisation ou un OIDC.
Nous pouvons avoir un OIDC
et un OIDC basé sur le plugin,
mais ça
crée un peu de problèmes pour nous.
Nous avons le droit
de la compétition entre les plugins
comme vous pouvez.
Je vais vous demander
une question très spécifique.
Je suis un peu en train de le faire,
car c'est le seul point de la compétition
que j'ai fait de plus en plus.
Une des parts
d'attendre
des databases multiples
et du système plugin
que vous avez, est que
un plugin peut introduire
un nouveau table ou un nouveau column
et vous devez
garder les schémas à date,
en tant que
pas contrôlant le schéma
d'envers,
ou le schéma d'envers,
ou la méda-architecture,
ou le Prisma,
ou le schéma Drizzle.
Better Off a
un CLI que vous pouvez
migrer et générer
pour générer des updates schémas
ou des migrations.
C'est l'un des zones où j'ai trouvé
des égages chargés.
C'est un des trucs communs
dans le système JS
et où les gens font des choses
dans les provider
qui ont des méda-architectures.
Un exemple,
Cloudflare a un module
qui s'appelle Cloudflare colon Workers
et je l'ai trouvé
que, maintenant,
Better Off CLI s'arrête
mais c'est pas le seul
mais c'est quelque chose
qui a été créé sur Twitter.
Quand vous pensez
à construire un tooling pour
faire les choses plus facilement,
comment vous balancez
ce genre de craisiness
que le système JS?
C'est une question très bonne.
Quand nous avons construit le CLI,
la première fois que nous avons construit le CLI
c'était parce que
je n'ai pas l'idée
que quand j'étais en train de faire un stock,
tu devrais faire des schémas,
d'exemple,
tu devrais faire des projets.
Je n'ai jamais l'idée
d'avoir un schéma
pour moi.
Et aussi, depuis que tu as des plugins,
pour chaque plugin, tu dois faire des copies
pour chaque adapter
et c'est pas sustainable.
Je dois faire
un type de CLI
car ça ne va pas fonctionner.
Pour les HK,
pour exemple,
pour Cloudflare,
on t'a essayé de
provider le CLI.
Je ne pense pas que nous avons un app
sur les docs, mais pour les gens qui
nous demandent
qu'ils puissent utiliser notre API
pour appeler le CLI programmatiquement.
Ils n'ont pas besoin de le programmer
pour qu'ils puissent appeler le CLI programmatiquement.
Mais je me souviens
que c'était la première fois que je faisais
un code.
Je faisais des opinions
sur les docs.
Je faisais aussi de Cloudflare
et je n'étais pas capable de le faire.
Je n'avais pas d'accès à leur environnement.
Je n'étais pas capable de le faire.
Je n'ai pas d'accès à leur environnement.
Mais je pense que nous avons
un workaround, et je pense que
ce type de code
a été juste moi.
Maintenant, la personne
n'a pas d'accès à leur environnement.
On va avoir un guide
sur les petits trucs.
On va donc l'imprisonner
plus tard.
Surtout pour le CLI.
Nous voulons faire ça plus vite.
Surtout pour les Jeunesse,
les CLI sont plus
puissantes.
Les gens veulent juste aller
sur les CLI
pour les choses.
On va donc les distribuer
par les comments de CLI
pour qu'il y a des choses
pour les gens.
C'est un grand outil.
C'est juste de me faire sauter
ces études.
Je ne pense pas que c'est la seule outil
que j'ai eu le problème, c'est que ce module Cloudflare me tient à rien de mal.
Même si ça s'improve beaucoup de Dx pour Cloudflare, je sais que c'est un problème difficile.
Oui.
La phase est intéressante.
Vous avez des plug-ins ici que je serais traditionnellement associé avec des plateformes payées,
et ils sont juste dans votre outil d'open source pour freer.
Vous avez des organisations et des équipes, ce qui est un feature difficile.
Il y a des entreprises qui sont construits autour de ça.
Vous avez le SSO, qui est, encore une chose que les gens payent.
Vous pouvez nous dire pourquoi vous avez choisi d'inclure ces choses dans le base de l'article?
C'est comme si ça serait la première opportunité de faire un business.
Oui, je sais.
Je voulais vous montrer comment on peut mettre en place un point de vue à l'open source.
Je me demande toujours ce qui est possible pour faire un point de vue à l'open source.
Il n'y a pas de manière pour qui on peut donner un point de vue à l'open source
d'un partenaire de 3 parties qui le chargent déjà.
Par exemple, 1, les connections de l'acce, les plus de les providers le chargent pour 100$.
C'est difficile de faire un point de vue à l'open source.
Je vais essayer de trouver une chose que je peux charger.
Je vais essayer de le charger, car je ne peux pas faire un point de vue à l'open source.
Mais je ne peux pas trouver un point de vue.
Je peux faire tout un point de vue à l'open source et ça va être le cas.
Je ne peux pas faire un point de vue à l'open source.
Je vais essayer de le charger.
Je vais essayer de le charger.
Je vais essayer de le charger.
Je vais essayer de le charger.
Je vais essayer de le charger.
Je vais essayer de le charger.
Je vais essayer de le charger.
Je vais essayer de le charger.
Pourquoi je aqui..?
Comment je lui dit que j'ai quitté deありがとうございます?
Pourquoi je lui demande d'y 이런 thape?
C'est impossible de faire ça.
Donc, tu n'as pas trouvé ces types d'authentications particulièrement difficiles à impliquer?
C'est un truc dans ta bagarre?
Non, c'est difficile, mais il n'y a rien en particulier qui ne pourrait pas faire un produit payable.
C'est juste difficile, car ils ont besoin de la cote pour ça,
que ce n'est pas un produit qui ne mérite pas de la réaction.
Qu'est-ce que tu dis?
C'est intéressant que tu dis ça.
Je pense qu'il y a beaucoup de compagnies qui ont une mode d'information.
C'est juste qu'ils ont une difficulté.
Vous pouvez dire que vous avez juste des autorités d'authentication,
et en général, c'est ce qu'ils font.
Ils disent que c'est difficile, ne le fais pas, ils vont le faire pour vous.
Ils sont juste en train de faire la difficulté.
C'est intéressant de se mettre plus en plus dans cet endroit.
C'est un truc très tractable, vous ne pouvez pas faire tout ça.
Vous n'avez pas besoin d'une certaine structure spécialisée.
Oui, c'était l'idée.
Comment pouvons-nous mettre ces choses?
Je pense que le procédé de la 3e partie de l'auteur a été,
« Hey, tout le service de l'article est implémenté,
vous devez aussi le procédé de l'auteur. »
Et les professeurs de l'auteur ne sont pas vraiment quelque chose qu'il peut y entrer.
Ils n'ont pas de bonnes équipes derrière eux.
Ils vont vous dire que ce n'est pas un truc que vous ne pouvez pas faire.
J'ai l'idée de « Qu'est-ce que vous pourrez mettre ces choses à l'article? »
Qu'est-ce que vous faites pour que l'article soit la seule alternative?
C'est pas difficile de faire un code.
Il n'y a pas de problème.
Il n'y a pas de problème.
Il n'y a pas de problème.
Il n'y a pas de problème.
Il n'y a pas de problème.
Il n'y a pas de problème.
Il n'y a pas de problème.
Il n'y a pas de problème.
Il n'y a pas de problème.
Mais on t'a dit qu'il n'y Sense mas,
on veut à Probably Sid Все City,
on et je , marshmallow...
mais j' mesma passais par Pass Saul,
Je vaisption wär 늦é predecessor.
des entreprises, des entreprises comme des entreprises database.
On va dire, OK, nos entreprises database sont un produit,
mais on veut les entreprises database à être ouvertes,
pour que les gens puissent interrompre avec ça.
Et puis, ces choses licences que croient,
que l'on peut éventuellement...
On dit, oh, merde, Amazon est hosté à nos bases database
et on est en train de faire la poste de notre producte host.
Vous avez récemment créé 5 millions pour votre company,
ce qui, c'est un grand mot,
en pensant à construire une company à l'avant,
et on veut faire un bon travail.
Comment vous approchez de cette trade-off ?
OK, on ne veut pas faire un mot d'information,
on veut juste faire les choses qui peuvent être faites,
juste avec le code que les gens peuvent se faire hoster.
On veut faire ces choses à l'avant,
mais à un moment, on doit se faire faire un produit
sizable, qui n'est pas quelque chose que les gens peuvent faire.
Comment vous approchez de ça ?
Je pense que la manière évidente pour nous,
c'est d'avoir un service de 30 parts,
si vous voulez utiliser le service de 30 parts,
vous pouvez utiliser le laboratoire,
et ça va être competant avec nous,
mais c'est comme le service évident.
Pour moi, je veux vraiment mettre cette idée
de, vous pouvez faire un mot,
et vous n'avez pas besoin de services,
c'est comme mon vision.
Je ne veux pas que vous l'avez fait,
mais je veux que vous l'avez fait,
que vous devez payer pour un provider de 30 parts.
J'ai une idée,
je me suis dit,
qu'est ce que vous avez à vous proposer,
c'est des features de sécurité,
que vous avez besoin,
vous avez beaucoup d'autres,
on a beaucoup d'autres,
on a beaucoup de gens qui ont des plus grands outils,
comme les travailleurs,
parce qu'ils ont besoin de des specificités,
si vous avez des outils,
les travailleurs ont un futur appelé
RADR,
RADR est un futur
qui protège les bâtards,
et des choses comme ça.
beaucoup d'autres companies qui ont des outils,
sont des travailleurs,
parce qu'ils ont besoin de des features de sécurité,
donc ma idée de la qualité
est de vous donner des services,
donc quand vous avez besoin de ces features,
vous devez les mettre à l'aise,
vous pouvez utiliser notre service,
et ça serait très naturel pour vous,
pour payer pour nous,
parce que nous avons élevé les outils,
c'est quelque chose que nous avons
offert beaucoup de valeur,
ça nous permet de vous donner
un tout outil,
pour ces features.
Le bâtard d'offering est d'avoir un dashboard,
le premier que nous ferons
c'est d'avoir un dashboard
pour que vous puissiez m'aider les utilisateurs,
donc nous pouvons pas
donner un dashboard très compliqué
que le laboratoire,
mais nous pouvons aussi provider un service,
donc vous pourrez connecter votre framework
à notre dashboard,
et vous pourrez pouvoir cliquer les outils,
les outils,
tout ce qui est en train de vous donner
des choses comme,
par exemple, si vous voyez
quelque chose de la future de sécurité,
que vous avez pu mettre en place,
ou si vous avez des outils
qui vous ont besoin de vous donner un framework,
ça vous donne des choses comme ça,
mais sur ce point, nous donnerons un bunch de features
que nous pouvons provider dans le framework
comme part de l'infrastructure.
Oui, ça fait un peu de sens,
je pense que
il y a tous ces outils
ou des outils de la box,
que vous avez juste à la fin de la solider,
et il y a des choses que vous offert,
comme le plug-in d'admin
pour les outils de la box, c'est vraiment bon.
Je pense que
si vous vous mettez en place
un peu de customisation,
des règles d'authorisation,
ça pourrait être un espace
Si vos règles d'authorisation
sont en train de se réagir,
il y a des problèmes
d'interessant,
d'offre,
de performance,
je vais vous demander
d'avoir un petit peu d'intérêt,
vous n'avez pas d'autos d'intégrisation,
d'automne de la technologie ?
Oui, nous n'avons pas d'intégrisation,
c'est un PR pour ça,
donc on va le faire.
Oui, à un moment, des choses comme ça,
d'entendre où la flèche est allée,
et ce que le plug-in va,
exactement,
je pense qu'il y a des problèmes intéressants,
including ça,
le problème que nous avons,
on a l'access,
on peut être un peu d'interessants,
c'est parce que vous avez l'access
de votre fameuse,
et que vous avez l'access
d'un objectif,
donc vous pouvez être un peu d'intégrisation,
c'est quelque chose que les gens
vont être plus ou moins plus facile
pour nous de construire un peu d'abstruction
pour que ça soit possible.
Je pense qu'il y a beaucoup d'exploration,
mais pas que c'est un objectif
pour vous, d'autres services,
parce qu'il y a assez.
Je pense que l'idée
d'un
producte comme un plug-in,
ou un producte comme un sérieux de plug-ins
est vraiment intéressant,
que vous pouvez essentiellement
package et vendre plug-ins spécifiquement,
c'est comme, vous avez besoin de cette figure,
ici c'est le plug-in, vous payez pour ça,
et tout ce que vous faites, c'est que vous vous ajoutez
au config et vous allez y aller.
Le dashboard va être assez similaire,
vous ajoutez le plug-in et vous allez pouvoir
donner votre dashboard.
C'est super,
c'est super,
c'est vraiment comme le dream auth library,
j'ai eu des problèmes avec
beaucoup d'autres libraries auth,
et ils ne vont pas loin,
et ils font des choses similaires,
très difficiles.
Oui,
par exemple, le code framerique,
il n'y avait pas
rien, je me souviens
que le projet de Meningray
a été construit par Next.js,
pour s'y faire,
et c'était impossible, parce qu'il n'y avait pas
rien dans ce sfeil, c'était le même chose que la prochaine art,
et c'était comme,
comment on a étendu le code framerique
où un code framerique se démarre
chaque semaine, mais on n'aurait pas de
un moyen de faire un art framerique.
Et c'était, je pense,
une compétition faite,
quand j'ai essayé de faire un art framerique,
il n'y avait pas
rien qui était ce qui était un challenge.
Je pense que
c'était
pas un problème
qui était complice,
mais que les gens ne voulaient pas
faire un art framerique.
Je pense que tout le monde a
un problème de la buine,
donc c'est un problème que les gens ne voulaient pas
essayer, c'est un espérance
de faire un art framerique,
en lieu d'un art
de l'art, mais oui.
Il y avait un moment
où il y avait un javascript
en temps où tout le monde
était un framework spécifique
et le notion de vanilla
est un peu la main.
C'est cool de voir que tu es en train
de faire plus de vanilla.
Exactement.
Je pense que tu as fait
beaucoup de choses très bonnes.
J'ai dit ça
à l'honneur, c'est la première fois que je
ai utilisé un off-framework,
et je me suis dit que c'est déliretif,
et je me suis dit que c'est un client
qui a utilisé le service et le client.
C'est comme ça, c'est un client
qui est en train de faire
les requests de l'application
pour les endpoints que tu as
automatiquement créés.
C'est
tellement fort.
J'ai eu une app
d'une page simple
qui m'a intégrée.
C'est tellement facile.
Je me suis dit que c'est un point de vue
ou qu'ils sont su monumental,
ou nos
types éditions
et c'est aussi ce que je vous Chuck
a dit treize,
aller,
Ils ont
ton do Ober
grà.
слишком
correu,
Donc, la raison pour laquelle nous avons des plugins de client, c'est parce que nous avons des plugins de client qui ont fait des températures de service à votre client de l'auteure.
Et oui, c'est incroyable de voir comment les gens...
Je pense que l'une des choses qui m'a aidé c'est que quand j'ai essayé de faire le framework, je n'étais pas un expert de l'auteure.
C'est un point de vue très développé. Je pouvais voir comment ça se fait.
Même si notre documentation était en démonstration, si j'avais l'experience de l'experience, c'était difficile de venir avec ces constructions.
Et je pense que c'était une de mes avantages pour m'impliquer.
Vous avez envoyé beaucoup de codes. Je regarde les change logs ici, leurs très grandes change logs.
Qu'est-ce que vous travaillez en train de faire dans le futur ? Est-ce que vous avez un B2 sur le horizon ? Vous avez des choses que vous voulez changer ?
Oui, le B2 va être très vite. Non très vite, mais probablement à la fin de cette année, on va avoir un B2.
Pour exemple, on va avoir une architecture de plugins, donc on peut installer un plugin spécifique si vous voulez.
On va avoir quelque chose comme ça, mais rien de particulier, c'est énorme.
Je pense que, comme tout le travail, vous voulez être stable, donc vous ne voulez pas changer beaucoup de choses tous les jours.
Nous voulons nous garder comme compatible, comme pas mal compatible, comme on peut.
Mais il y a beaucoup de choses que nous devons fixer et qu'on doit faire bien.
Nous allons juste travailler sur elles pour un moment.
Nous travaillons aussi sur le DART4, le constructeur.
Nous allons aussi travailler sur les choses, et nous allons aussi continuer à construire l'infrastructure.
C'est incroyable.
Le B2 est un library incroyable, c'est génial de regarder la progression.
Vous avez été très vite, il y a des temps où vous pensez que la feature existe, mais la prochaine fois, elle existe.
C'est délicieux de se suivre cette journée.
En pensant à la future de ce space, en pensant à la construction de l'Auth, est-ce que vous avez des avances plus grandes que vous?
Est-ce que vous avez des choses que vous avez besoin de?
Je ne peux pas attendre pour des browsers pour stabiliser l'API.
Est-ce que vous êtes particulièrement excitées dans le futur?
Je suis excitées à la question de comment l'Auth pourrait fonctionner.
Vous avez vu des humains qui sont à l'involation avec l'Auth.
Vous avez besoin d'un humain pour l'authentiquer, et ils vont pouvoir détruire l'access.
Je pense que c'est un futur où il ne serait pas nécessaire, où les agents peuvent l'authentiquer.
Ils peuvent faire des choses pour vous.
Surtout après l'Auth, les agents sont vraiment d'au bout d'un an.
Ils ont l'auteur de l'authenticité.
Quand vous vous demandez d'adverter à l'Auth,
si vous avez besoin d'authentiquer pour l'Auth,
ce serait bien, c'est bien.
C'est beaucoup de choses, ils peuvent juste l'authentiquer.
Il y a des choses qui doivent être utilisées,
des choses qui doivent être utilisées,
nous pouvons nous faire.
Il y a des choses qui peuvent être utilisées,
mais je pense qu'il y a des choses qui sont intéressantes pour l'Auth.
Je vais essayer d'un très intéressant take.
Cela peut être solvée par un pâf d'eau,
en lieu d'un pâf d'eau.
Je pense que c'est intéressant,
mais c'est un espace intéressant de penser
sur comment les agents peuvent l'authentiquer
pour vous et faire des choses pour vous.
C'est intéressant, il y a beaucoup de problèmes à se solver.
Cool, ça raffle pour nos questions.
Merci pour votre commentaire, c'était un coup de fond
et j'ai hâte de l'utiliser sur un projet de côté.
Merci pour votre question.
Merci beaucoup pour le coup de fond.
C'est la première chose que j'ai installé
sur un projet de série que je fais maintenant.
C'est le plus haut que je peux donner.
C'est cool de dire que je dois utiliser ça.
Merci beaucoup.
Expliquez-vous des choses plus différentes
que les choses d'Ain Loulou qui font
l'activité et la plus de codes.
Merci.
Je ne peux pas voir ce qu'il faut faire.
Episode suivant:
Les infos glanées
devtools.fm:DeveloperTools,OpenSource,SoftwareDevelopment
A podcast about developer tools and the people who make them. Join us as we embark on a journey to explore modern developer tooling and interview the people who make it possible. We love talking to the creators front-end frameworks (React, Solid, Svelte, Vue, Angular, etc), JavaScript and TypeScript runtimes (Node, Deno, Bun), Languages (Unison, Elixor, Rust, Zig), web tech (WASM, Web Containers, WebGPU, WebGL), database providers (Turso, Planetscale, Supabase, EdgeDB), and platforms (SST, AWS, Vercel, Netlify, Fly.io).
Tags