In a large bowl, dissolve yeast and sugar in water. Let sit for 10 minutes until bubbly. Add 4 cups of bread flour to start and mix to combine. If the dough seems too wet, or you want a firmer, more rustic bialy, add another 1/4 cup flour.
Knead the dough. If using a stand mixer, knead for 8 minutes on medium. If kneading by hand, knead vigorously for 10 minutes. Dough should be firm but stretchy.
Transfer dough to an oiled bowl. Cover in plastic wrap and let rise until doubled in size, 1 1/2 hours. At this stage, the dough can be transferred to the fridge overnight to develop a deeper flavor. Or if you prefer you can simply move on to the next step.
While the dough rises, heat a pan with olive oil over medium low heat. Sauté onions until soft and caramelized, stirring often to avoid burning, 15-20 minutes. Season with salt and pepper to taste and set aside to cool.
Divide the dough into 12 equal pieces. Roll each piece into a ball and flatten into a disc. Transfer the discs to 2 parchment paper lined baking sheets. Cover and allow to rise for 1 hour.
While the dough rises, preheat the oven to 450. If using a pizza stone or cast iron surface, set this inside the oven to preheat it as well.
Once the bialys have risen, use you fingers to poke an indentation in the center of each bialy, about 3 inches in diameter, being sure not to poke through the dough. Fill each indentation with about 1-2 teaspoons of the cooked onions. If using poppy seeds, dried onions or garlic as a topping, brush bialys with water and sprinkle with the topping.
If using a pizza stone or other preheated surface, carefully transfer the parchment paper with the bialys on it to this surface. If not, keep bialys on the baking sheets. Bake bialys for 15-18 minutes, in batches if needed, until golden brown. Serve hot with butter or cream cheese. The bialys should be stored in a paper bag for up to 24 hours, and afterwards sliced and frozen, at which point they can be re-toasted.