In a large mixing bowl, combine the flour, sugar, salt, baking powder, and baking soda. Mix well.
Add the yogurt and warm water to the dry ingredients. Stir until a dough begins to form.
Knead the dough on a floured surface for about 5-7 minutes until it is smooth and elastic.
Place the dough in a lightly oiled bowl, cover with a damp cloth, and let it rest for at least 1 hour at room temperature.
After resting, divide the dough into 6 equal pieces and shape each piece into a ball.
Roll out each ball into an oval or round shape, about 1/4 inch thick.
Heat a cast-iron skillet or non-stick pan over medium-high heat.
Place one rolled-out naan in the hot skillet. Cook for about 1-2 minutes until bubbles form on the surface.
Flip the naan and cook for another 1-2 minutes until golden brown.
Remove from the skillet and brush with melted butter or ghee. Sprinkle with minced garlic and cilantro if desired.
Repeat with the remaining dough. Serve warm.