Rinse the dried fish under cold water to remove excess salt and any impurities.
Soak the fish in water for about 30 minutes to rehydrate, then drain and set aside.
Heat the vegetable oil in a large pot or skillet over medium heat.
Add the chopped onion and cook until translucent, about 5 minutes.
Stir in the minced garlic and cook for an additional minute.
Add the chopped tomatoes, ground paprika, ground cumin, ground coriander, turmeric, and chili powder (if using). Cook for about 5-7 minutes, until the tomatoes are softened and the spices are fragrant.
Add the rehydrated dried fish to the pot and stir to coat with the tomato and spice mixture.
Pour in the water or vegetable broth, stirring to combine.
Bring the mixture to a simmer and cook for about 15-20 minutes, or until the fish is tender and the flavors have melded together.
Season with salt to taste.
Garnish with fresh cilantro or parsley if desired.
Enjoy your meal!