Back to flin
flin

Le système de mise en page

Comment les composants de mise en page de FlinUI -- Container, Stack, Grid, Flex, Split -- remplacent le CSS personnalisé par des primitives déclaratives et responsive qui se composent naturellement.

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

La mise en page CSS est puissante. C'est aussi la plus grande source de frustration pour les développeurs web. Flexbox nécessite de comprendre axe principal vs axe croisé, flex-grow vs flex-shrink vs flex-basis, et une douzaine de propriétés qui interagissent de manière non évidente. Centrer une div -- la blague canonique du développement web -- nécessite encore de connaître la bonne combinaison de display, align-items et justify-content.

Le système de mise en page de FlinUI remplace cette complexité par 15 composants déclaratifs. <Stack> pour les arrangements verticaux et horizontaux. <Grid> pour les grilles. <Container> pour les contraintes de largeur maximale. <Center> pour le centrage.

Les composants principaux

  • Container : largeur maximale avec centrage automatique
  • Stack : arrangement vertical ou horizontal avec espacement cohérent
  • Grid : mise en page CSS Grid avec colonnes responsive (cols={1} cols_md={2} cols_lg={3})
  • Flex : contrôle fin de flexbox
  • Split : mise en page à deux panneaux avec ratio ("1:3", "1:4")
  • Box : la primitive avec props de style
  • Center : centre ses enfants horizontalement et verticalement
  • Divider/Spacer : séparateurs visuels et espaces flexibles
  • AspectRatio : contrainte de ratio
  • Wrap : arrangement en flux avec retour à la ligne

Composition de composants de mise en page

flin<Container size="xl">
    <Stack gap={8}>
        <Stack direction="horizontal" align="center">
            <Text size="2xl" weight="bold">Dashboard</Text>
            <Spacer />
            <Button variant="primary">Export</Button>
        </Stack>
        <Grid cols={1} cols_md={2} cols_lg={4} gap={4}>
            <Stat label="Users" value="12,847" />
            <Stat label="Revenue" value="$48,290" />
            <Stat label="Orders" value="1,247" />
            <Stat label="Satisfaction" value="4.8/5" />
        </Grid>
    </Stack>
</Container>

Pas de fichier CSS. Pas de noms de classes. Pas de media queries. La mise en page est exprimée entièrement par composition de composants, et elle est responsive par défaut.


Ceci est la partie 86 de la série "How We Built FLIN".

Navigation de la série : - [85] Design Tokens and Theming System - [86] The Layout System (vous êtes ici) - [87] Icons Library Integration - [88] FlinUI Enterprise Components

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