Preheat oven to 375.
Heat olive oil in a skillet over medium heat.
Add onions and season with salt; cook for 3 minutes, or until translucent.
Stir in minced garlic and continue to cook for 1 more minute, or until fragrant.
Remove from heat;
Add tomatoes, basil, salt and pepper to skillet; toss to combine
Pour the tomato mixture into a baking dish.
Bake for 20 minutes.
In the meantime, prepare topping.
In a small mixing bowl combine flour, baking powder, salt, pepper, and melted butter.
Mix with wooden spoon until crumbly.
Remove the tomato filling from the oven and add topping over tomatoes.
Sprinkle with parmesan cheese.
Return to oven and bake for 15 minutes, or until top is golden brown and mixture is bubbly.
Remove from oven.
Let cool for 15 minutes.
Serve.