10 points par GN⁺ 2025-12-30 | Aucun commentaire pour le moment. | Partager sur WhatsApp
  • Exemple de projet personnel utilisant Claude Code pour classer et visualiser automatiquement environ 500 livres
  • Un problème jusque-là insoluble, car les scanners ISBN ou Goodreads ne reconnaissaient pas les éditions roumaines, résolu grâce à l’API Vision d’OpenAI et à des scripts générés avec Claude
  • Après une extraction des métadonnées avec une précision de 90 %, le reste a été corrigé manuellement, puis les couvertures ont été récupérées automatiquement via Open Library et SerpAPI
  • Mise en place d’une interaction proche d’une vraie bibliothèque grâce à des animations basées sur le défilement avec Framer Motion et à une épaisseur des livres calculée à partir du nombre de pages
  • Le projet illustre un mode de collaboration où l’IA exécute, tandis que l’utilisateur garde la main sur le jugement esthétique et les choix, en soulignant que « le coût d’exécution baisse, mais le goût reste une affaire humaine »

Découvrir le résultat final : Bookshelf - https://balajmarius.com/bookshelf

Vue d’ensemble du projet

  • Avec environ 500 livres possédés mais sans système de suivi, l’auteur a construit un système de classement et de visualisation automatiques à l’aide d’outils IA
  • Au lieu d’un simple tableur, il a automatisé les étapes d’exécution via Claude Code, ce qui lui a permis d’achever un projet personnel repoussé depuis longtemps
  • L’enjeu central du projet n’était pas tant la perfection technique que la suppression des goulots d’étranglement de l’exécution

Identification du problème

  • Les applications de scan ISBN et Goodreads ne reconnaissaient pas les éditions roumaines ni certaines publications rares, rendant les données incomplètes
  • Des données incomplètes ajoutaient davantage de confusion et faisaient interrompre le projet à répétition
  • Ce qu’il fallait n’était pas une application parfaite, mais une architecture capable de tolérer l’imperfection

Collecte et traitement des données

  • Les données ont été construites à partir de 470 photos prises des couvertures et des tranches des livres
  • Un script écrit par Claude envoie chaque image à l’API Vision d’OpenAI pour extraire auteur, titre et éditeur, puis enregistre le résultat dans des fichiers JSON
  • Le système a atteint une précision d’environ 90 % ; les erreurs restantes provenaient de problèmes d’éclairage, de détérioration ou de résolution
  • Les 10 % restants ont été corrigés manuellement, puis le même pipeline a été relancé automatiquement à chaque ajout de nouveau livre

Amélioration des images de couverture

  • Les couvertures ont d’abord été récupérées via l’API Open Library, mais environ la moitié étaient de mauvaise qualité ou incorrectes
  • Claude a ajouté un système de notation de qualité et de signalement des erreurs et, en cas d’échec, a basculé vers une recherche Google Images via SerpAPI
  • Sur environ 460 livres, seuls 10 ont nécessité une correction manuelle, ce qui a permis de conserver une bonne efficacité d’automatisation

Implémentation de l’interface de bibliothèque

  • Au lieu d’une simple grille de couvertures, le projet reproduit un rendu visuel centré sur les tranches de livres, comme une vraie bibliothèque
  • Claude s’est chargé de l’extraction des couleurs (color quantization) et du calcul de la couleur de texte offrant le bon contraste
  • Le projet utilise aussi les données de nombre de pages d’Open Library pour refléter l’épaisseur des livres, avec une légère variation ajoutée pour plus de réalisme
  • Le résultat donne une texture visuelle proche d’une bibliothèque réelle

Animations et interactions

  • Des animations basées sur le défilement ont été ajoutées avec Framer Motion, faisant incliner les tranches lors du scroll
  • Au départ, des saccades apparaissaient à cause des mises à jour d’état dans React, mais elles ont été corrigées avec des motion values et des animations spring
  • Une fois corrigé, le mouvement est devenu fluide, et le faible coût des expérimentations a permis de multiplier les itérations

Suppression des fonctionnalités inutiles

  • Une fonction de défilement infini avait été ajoutée, mais des incohérences de hauteur de conteneur et des erreurs de scroll dégradaient l’expérience utilisateur
  • Même si cela fonctionnait techniquement, la fonctionnalité n’était pas nécessaire et a été supprimée
  • Le projet souligne que supprimer du “code qui fonctionne mais n’est pas utile” reste un rôle humain

Adaptation mobile et vue en pile

  • Comme le défilement horizontal était peu pratique sur mobile, une vue en pile verticale a été ajoutée
  • Claude a analysé le code existant pour réutiliser le timing des animations, l’extraction des couleurs et la gestion de la transparence au scroll
  • Sans explication supplémentaire, il a généré un nouveau composant complet, montrant ainsi les capacités de compréhension et de recomposition du code par l’IA

Rôle humain et conclusion

  • Même si Claude a écrit tout le code, l’utilisateur a pris les décisions suivantes
    • accepter une précision de 90 %
    • corriger manuellement 10 couvertures
    • choisir un design centré sur les tranches
    • supprimer les fonctionnalités inutiles
    • valider la qualité sensible des animations
  • Le résultat final est une bibliothèque web classant et visualisant automatiquement 460 livres
  • Le projet montre un modèle de collaboration où l’IA prend en charge l’exécution et l’humain le goût et le jugement
  • En conclusion, « le coût d’exécution continue de baisser, mais le goût reste une affaire humaine »

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.