Commençons par préchauffer le four à 355°F (180°C). Pendant ce temps, lavez les courgettes et coupez-les en rondelles d'environ 5mm d'épaisseur.
Émincez finement les oignons et l'ail. Dans votre poêle, faites-les revenir dans l'huile d'olive jusqu'à ce qu'ils soient translucides.
Ajoutez les rondelles de courgettes et laissez-les cuire 10 minutes à feu moyen. Elles doivent être tendres mais pas trop! Réservez.
Préparons notre sauce béchamel: dans une casserole, faites fondre le beurre, ajoutez la farine et fouettez pendant 1 minute.
Versez progressivement le lait chaud tout en fouettant. La sauce va épaissir doucement. Ajoutez la muscade, salez et poivrez.
Hors du feu, incorporez la moitié des fromages râpés et les œufs battus. Ajoutez le basilic ciselé.
Dans votre plat à gratin, disposez la moitié des courgettes, versez la moitié de la sauce.
Répétez l'opération avec le reste des courgettes et de la sauce.
Parsemez du reste de fromage râpé et enfournez pour 25-30 minutes, jusqu'à ce que le dessus soit bien doré et gratiné.