Cresciuto nelle giovanili della squadra della sua città natale, il Le Mans, nel 2013 si trasferisce al Tolosa, con cui debutta l'11 gennaio 2015, in una partita di Ligue 1 perso per 3-0 sul campo del Olympique Lione. Chiude l'annata 2014-2015 con 6 presenze e nella stagione 2015-2016 trova posto stabile nella formazione titolare, collezionando 29 presenze stagionali tra campionato e coppe nazionali.
Il 10 settembre 2018 firma per l'Amiens,[2] nelle cui file trascorre tre stagioni, l'ultima delle quali da capitano.
Lecce
Il 23 giugno 2021 firma un contratto triennale con opzione per il quarto anno con il Lecce.[3][4] Esordisce con i giallorossi il 15 agosto, nella sfida di Coppa Italia vinta per 3-1 sul campo del Parma, e segna il primo gol con il club salentino il 15 marzo 2022, nella partita pareggiata per 2-2 in casa del Cosenza. Con i giallorossi vince il campionato di Serie B 2021-2022, ottenendo così la promozione in Serie A.
Il 13 agosto 2022 debutta nella massima serie italiana, nella partita casalinga persa contro l'Inter per 1-2; il 19 febbraio 2023 realizza il suo primo gol in Serie A, nella partita vinta per 2-1 sul campo dell'Atalanta.[5] Nel gennaio 2024, dopo la partenza di Gabriel Strefezza, passa a ricoprire il ruolo di capitano della squadra.
Palermo
Il 25 luglio 2024 viene ufficializzato il suo trasferimento al Palermo.[6][7]