Begin by cutting the ciabatta bread into small cubes. Place the cubes in a bowl and pour in the milk. Allow the bread to soak for a few minutes. This step is crucial as it ensures the meatballs remain moist.
Once the bread has soaked, drain it and gently squeeze out any excess milk using your hands. Transfer the soaked bread to a large mixing bowl.
Add in the beaten egg, breadcrumbs, Parmesan cheese, garlic, parsley, lemon zest, thyme, and the ground chicken into the bowl. Season generously with sea salt and black pepper. It’s important to season well at this stage for maximum flavor.
Using your hands, mix all the ingredients until well combined. Don’t overmix; just enough that everything is evenly distributed.
Next, lightly oil your hands. Take a small piece of the mixture (about a tablespoon) and roll it between your palms to form 1-inch meatballs. Ensure they’re compact but not too tight.
Arrange the formed meatballs on a baking tray lined with parchment paper. This prevents sticking and makes cleanup easier.
In a large frying pan, heat the extra-virgin olive oil over medium heat. You want the oil hot but not smoking.
Carefully place the meatballs into the pan, leaving space between each one. Allow them to cook undisturbed for about 4 to 5 minutes until they develop a golden brown crust on one side.
Using tongs, gently shake the pan to loosen the meatballs, then turn each one to cook on the other side for an additional 4 to 5 minutes.
Once cooked, remove the meatballs from the pan and place them on a plate lined with paper towels. This will absorb any excess oil. You can then transfer them to a serving plate or mix them with your favorite tomato sauce to serve over pasta.