Yes, you can easily make this dish vegan. Just use coconut oil instead of butter in the topping. In the filling, use a nondairy milk like almond milk, oat milk or coconut milk. Instead of an egg, use a flax egg. To make a flax egg, mix 1 tablespoon ground flaxseed with 3 tablespoons water. Let it sit for 5 minutes then use it in the recipe as a substitute for 1 egg.