Back to flin
flin

Génération d'aperçus de fichiers

Comment FLIN génère automatiquement des vignettes d'aperçu quand des images sont téléversées -- trois tailles, sortie WebP, stockage adressable par contenu et zéro configuration pour le développeur.

Juste A. Gnimavo (Thales) & Claude | March 26, 2026 2 min flin
EN/ FR/ ES
flinfile-previewthumbnailsimage-processingstorage

Chaque application qui accepte des téléversements d'images finit par avoir besoin de vignettes. FLIN génère les aperçus automatiquement. Téléversez une image, et trois tailles d'aperçu apparaissent aux côtés de l'original dans le stockage adressable par contenu. Accédez-y via des propriétés typées sur l'objet fichier. Pas de configuration, pas de pipeline de traitement, pas de gestion de stockage supplémentaire.

Architecture des aperçus

Trois tailles couvrent les cas d'utilisation courants :

TailleNomCas d'utilisation
100pxVignetteAvatars, icônes de grille, navigation
300pxMoyen (par défaut)Cartes, éléments de liste, aperçus de chat
800pxGrandVues détaillées, lightbox, cartes pleine largeur

WebP est le format de sortie par défaut car il produit des fichiers plus petits que JPEG à qualité équivalente et supporte la transparence.

Accéder aux aperçus en FLIN

flinentity Photo {
    title: text
    image: file
}

// Dans les templates
<img src={photo.image.thumbnail} alt={photo.title} />
<img src={photo.image.preview} alt={photo.title} />
<img src={photo.image.preview_large} alt={photo.title} />

Ceci conclut l'arc 12 -- le système de stockage de fichiers de FLIN. Dix articles couvrant quatre backends de stockage, le trait StorageBackend, les backends cloud, les grants de téléchargement, le découpage de texte, l'intégration chunk-embedding, les analyseurs de formats, l'auto-conversion sémantique, la compression et le GC, et la génération d'aperçus.


Ceci est la partie 135 de la série « Comment nous avons construit FLIN », documentant comment un CEO à Abidjan et un CTO IA ont conçu et construit un langage de programmation à partir de zéro.

Navigation de la série : - [134] Compression Zstd et ramasse-miettes de blobs - [135] Génération d'aperçus de fichiers (vous êtes ici) - Prochain arc : bibliothèque standard et écosystème FLIN

Share this article:

Responses

Write a response
0/2000
Loading responses...

Related Articles

Thales & Claude deblo

Le jour où Déblo a refusé une bonne réponse — deux fois

Une trace de production a montré Déblo K12 rejetant deux fois de suite la bonne réponse d’un élève de Terminale. Huit heures d’analyse, quatre commits, une rotation A/B de modèles et un benchmark sur 6 modèles plus tard, le tuteur de maths était corrigé. Ce qui a cassé, ce que nous avons changé, et ce que l’échec surprenant de GPT-5.4-mini au test socratique nous a appris sur le choix des modèles pour l’IA éducative.

32 min May 3, 2026
debloclaude-opus-4.7claude-codemethodology +14
Thales & Claude deblo

Web Claude a trouvé le bug. Puis il a failli l’aggraver.

Comment un prompt vocal de 270 lignes pour le tuteur Ultravox de Deblo produisait la même phrase d’accueil scriptu00e9e à chaque appel. Web Claude a diagnostiqué le problème parfaitement, puis a prescrit une correction qui aurait doublé la taille du prompt avec des hooks backend inexistants. Le filtre qui a gardé le diagnostic et rejeté la prescription.

17 min Apr 28, 2026
debloclaude-opus-4.7methodologyprompt-engineering +7
Thales & Claude deblo

Pourquoi j’ai dû corriger Web Claude deux fois sur la stratégie de la page d’accueil de Deblo

Comment une conversation de 48 heures avec Web Claude a failli entraîner Deblo dans le piège généraliste « ChatGPT pour l’Afrique », et pourquoi la connaissance du marché par le fondateur a dû prendre le dessus sur les suggestions stratégiques de l’IA à deux reprises.

26 min Apr 26, 2026
debloclaude-opus-4.7methodologystrategy +6