

Letterboxd - This Or That
Reclasser une liste Letterboxd par duels optimisés
Application locale née d’un besoin très personnel : remettre ma liste Letterboxd dans un ordre de préférence crédible sans comparer 700 films à la main. On importe un CSV Letterboxd v7, l’app transforme la liste en duels gauche/droite avec affiches TMDB résolues et mises en cache, sauvegarde la session en localStorage, puis réexporte un CSV compatible avec Letterboxd une fois le classement terminé.
Le cœur du projet est un moteur de tri par insertion binaire : chaque film candidat est placé dans une fenêtre low/high, comparé au pivot mid, puis inséré au bon index en O(log n) comparaisons par film au lieu d’un tri naïf. L’ordre de départ est mélangé par hash FNV-1a + PRNG Mulberry32 pour rester déterministe à CSV identique, avec undo, reprise de session, export/import JSON et estimation des duels restants.
Après l’insertion, une vérification finale par batchs relance des duels stratifiés : comparaisons larges, puis passes adjacentes, avec budget restant, swaps, seenPairs et arrêt après passes silencieuses. Le but était d’éviter les pièges classiques du dual sorting : deux films peuvent sembler bien classés quand on les regarde l’un après l’autre, mais la big picture peut encore révéler des anomalies. Entièrement vibe-codé avec Claude Code, mais surtout comme exercice pour comprendre un algorithme de tri optimisé et ranger enfin ma liste Letterboxd par ordre de préférence.



