Aller au contenu principal

27 février 2025

J’ai testé l’éditeur dopé à l’IA : Cursor.

(republication LinkedIn)

Eh bien, ça envoie du lourd !

Maintenant que mon site/CV est (globalement) terminé – gamesberry.fr/yannloosli – il était temps de passer au projet suivant sur ma liste. J’y reviendrai plus tard en détail, mais pour l’instant, disons qu’il repose sur la fusion de deux projets open-source partageant des dépendances relativement proches.

J’ai d’abord essayé une fusion "brute de décoffrage" : rassembler tous les fichiers dans un même projet et voir ce qui se passe. Spoiler alert : ça ne s'est pas bien passé (du tout). Ni hashtag#ChatGPT ni hashtag#GithubCopilot ne se sont révélés d’une aide précieuse – rien d’étonnant en vérité.
J’ai donc revu ma copie et décidé de commencer par harmoniser les technologies des deux projets séparément avant de réitérer l’expérience de la fusion.
Première brique de l’édifice : OpenChakra.app de @Premier Octet. J’avais déjà utilisé cet éditeur hashtag#React / hashtag#ChakraUI chez @Entreloups pour concevoir un éditeur de mini-sites et de templates d’e-mails. Avant toute intégration, il me fallait le mettre à jour et remplacer certaines de ses fondations.

Dans OpenChakra, Redux est utilisé via hashtag#RematchJs. Dans l’autre projet, c’est hashtag#typesafeActions. Quant à moi, j’emploie plutôt hashtag#Zustand sur mon site et… je ne maîtrise pas (encore) Redux. Un petit tour sur un cours OpenClassrooms s’est donc imposé avant de me lancer.
À ce stade, j’étais convaincu que la tâche s’annonçait très longue : comprendre Redux, gérer la persistance des données, l’Undo/Redo, la façon dont fonction Rematch… Tout cela sentait bon les longues journées de travail (avec le risque réel d'un nouvel échec à la fin).

Puis, au détour de LinkedIn… une découverte : un post mentionne Cursor, sans plus d’explication. Curieux, je jette un œil. Grand bien m’en a pris.

Deux heures plus tard, l’interface d’OpenChakra refonctionnait, allégée de hashtag#Rematch et désormais propulsée par hashtag#ReduxToolkit. Alors certes, il m’a fallu le reste de la journée pour reconfigurer les actions et je m’attends encore à quelques heures de debug – mais waouh.
Mis à part quelques moments où l’IA s’égarait dans des boucles absurdes (et où j’ai dû reprendre la main), j’ai surtout joué le rôle de passe-plat et de contrôleur. Et comme Cursor repose sur VS Code, il a rapatrié mes plugins automatiquement à l’installation.

Le côté "magique" de l'outil est à double tranchant à mon avis. Il est (vraiment très) facile de suivre aveuglément ses suggestions sans trop se poser de questions, ce qui peut vite devenir abêtissant. Honnêtement, je l’ai fait à plusieurs reprises au cours de la journée : mon objectif était de revenir à un état fonctionnel le plus rapidement possible. Mais quand on prend le temps d’analyser ses choix et les modifications proposées, ça devient un vrai levier d’apprentissage.

Prochain round : migration de Chakra v2 à v3.

Je l’ai faite à la main sur mon site, et ce fut loin d’être une partie de plaisir. Voyons comment Cursor se débrouille avec ça.