Préchauffez le four à 180°C.
Lavez les courgettes puis retirez les extrémités. Coupez-en la moitié en petits dés et l'autre moitié en fines rondelles afin d'obtenir un joli visuel après cuisson.
Épluchez puis émincez finement l'oignon.
Faites chauffer l'huile d'olive dans une grande poêle. Faites revenir l'oignon pendant quelques minutes, jusqu'à ce qu'il soit légèrement tendre et juste saisi, sans le laisser colorer. Ajoutez ensuite les courgettes et poursuivez la cuisson pendant 8 à 10 minutes, en mélangeant régulièrement, jusqu'à ce qu'elles soient tendres et qu'une partie de leur eau se soit évaporée. Laissez tiédir.
Dans un grand saladier, fouettez les œufs. Ajoutez la farine puis mélangez jusqu'à obtenir une préparation homogène. Versez progressivement le lait tout en fouettant afin d'obtenir un appareil bien lisse.
Égouttez la feta puis émiettez-la grossièrement. Ciselez le basilic.
Incorporez les courgettes, l'oignon, la feta et le basilic à l'appareil. Salez légèrement (la feta étant déjà salée) et poivrez généreusement.
Chemisez un moule carré d'environ 20 × 20 cm avec du papier cuisson ou huilez légèrement un plat à gratin.
Versez la préparation, puis répartissez harmonieusement les rondelles de courgettes restantes sur le dessus.
Enfournez pour 45 minutes, jusqu'à ce que le clafoutis soit bien doré et que la pointe d'un couteau ressorte propre.
Laissez reposer une dizaine de minutes avant de servir. Parsemez le dessus de feta émiettée et de quelques feuilles de basilic frais