đŸ€Ż Etes-vous prêts pour la révolution des composants?

...ShadCN révolutionne comment nous partageons le code.

Avec un seul diagramme, ShadCN, l'auteur de la bibliothÚque ShadCN UI, a changé :

  • la granularitĂ© que les bibliothĂšques de code peuvent (et doivent) avoir,

  • la façon dont le code peut ĂȘtre partagĂ©, et qui en est le propriĂ©taire

  • et la façon dont je conçois le dĂ©veloppement web open source.

C'est flippant. Mais je suis fan. Qu’est-ce qu’il a dit?

ShadCN a annoncĂ© que son CLI supporte maintenant l'utilisation de registres externes pour ajouter des composants. On a l’habitude d’ajouter des bibliothĂšques de maniĂšre unitaire via nos gestionnaires de paquets (npm, yarn, etc.) dans le rĂ©pertoire « node_modules ». Mais maintenant on peut partager et installer des composants et les copier directement dans notre code en utilisant :

npx shadcn add <...>

Ca peut tout changer - comment on structure le code, comment on le partage, comment on y pense :

  • Les composants peuvent (et doivent) ĂȘtre conçus de maniĂšre atomique, et non avec des interdĂ©pendances intĂ©grĂ©es

  • Les composants sont partagĂ©s non pas en les installant dans un dossier (Ă  toutes fins utiles) en lecture seule, mais en les copiant dans votre code afin que vous puissiez les modifier Ă  votre guise.

  • Le terme « composants » ne dĂ©signe pas seulement les composants de l'interface utilisateur : « Vous pouvez dĂ©jĂ  ajouter des routes, des fichiers de configuration, des variables CSS et la configuration de tailwind avec le CLI » Ă©crit ShadCN.

L’outil IA v0 (et la gĂ©nĂ©ration AI en gĂ©nĂ©ral) a probablement jouĂ© un rĂŽle important dans ce changement de mentalitĂ©, car elle utilise ce type de configuration « copier-coller ».

Et vous savez quoi ? Penser en composants atomiques aidera probablement Ă  construire un meilleur code. Avec des limites plus claires, une meilleure dĂ©finition des responsabilitĂ©s et de meilleurs tests.

Cela soulĂšve toutefois certaines questions, telles que

  • comment gĂ©rer les mises Ă  jour des composants si le code que nous mettons Ă  jour a Ă©tĂ© modifiĂ© ?

  • Comment gĂ©rer des composants plus complexes (organismes contre atomes, pour utiliser le langage du systĂšme de conception) ?

  • comment gĂ©rer les conflits entre composants ?

Mais pour l'instant, la question principale est : comment puis-je faire fonctionner cela dans la pratique ? 😆

Le coin “veille”

Skeleton Tailwind

GĂ©nĂ©rer un “skeleton” qui affiche un Ă©tat de chargement dans React (en utilisant les Suspense) donne l'impression de recrĂ©er deux fois le mĂȘmes composants. Il n'y a pas de valeur ajoutĂ©e ni de crĂ©ativitĂ©. Cela signifie qu'il est possible de l'automatiser, et c'est lĂ  que le « Tailwind Skeleton Generator » intervient.

Supermaven rejoint Cursor

La guerre de l’IA dans les IDE atteint dĂ©jĂ  la phase de consolidation, semble-t-il. Supermaven, une alternative Ă  GitHub Copilot, vient d'annoncer qu'ils joignaient leurs forces Ă  celles de Cursor, le fork de VS code avec IA intĂ©grĂ©. L'annonce fait Ă©cho Ă  la logique qui sous-tend le fork de VS Code par l'Ă©quipe de Cursor : Les capacitĂ©s de l'IA nĂ©cessitent une intĂ©gration profonde dans l'IDE, et VS Code ne laissent pas assez de possibilitĂ©s de customisations aux extensions pour le permettre.

Vous pourriez ĂȘtre intĂ©ressĂ© par

Drizzle vs Prisma: Quel ORM TypeScript choisir?

Drizzle et Prisma diffĂšrent dans leur façon de concevoir le rĂŽle d’un ORM. Je vous explique comment, et pourquoi cette diffĂ©rence peut vous aider Ă  choisir entre l’un ou l’autre pour vos projects NodeJS / NextJS.

React Email + Resend dans NextJS

Cette semaine sur la chaine anglophone nous avons examiné pourquoi la programmation des emails est un tel gùchis, comment React Email aide à résoudre le problÚme, et comment l'intégrer dans Next JS avec Resend.

Comment écrire un ticket utile

Voici (en anglais) 5 astuces pour aider le chef de projet dans votre vie à mieux écrire des tickets de bugs ou de demande de fonctionalité :)

Merci 🙂 

Merci de m’avoir lu jusqu'ici. N'hĂ©sitez pas Ă  me faire savoir ce que vous avez pensĂ© de ce numĂ©ro de la newsletter afin que je puisse mieux rĂ©pondre Ă  vos besoins !

David de Kodaps

Reply

or to participate.