Deprecated: ITSEC_Settings::__construct(): Implicitly marking parameter $config as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/plugins/better-wp-security/core/lib/settings.php on line 21

Deprecated: ITSEC_Settings::is_conditional_setting_active(): Implicitly marking parameter $settings as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/plugins/better-wp-security/core/lib/settings.php on line 162

Deprecated: ITSEC_Modules::load_module_file(): Implicitly marking parameter $process as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/plugins/better-wp-security/core/modules.php on line 731

Deprecated: ITSEC_Lib::equal_sets(): Implicitly marking parameter $cmp as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/plugins/better-wp-security/core/lib.php on line 2282

Deprecated: ITSEC_Lockout::persist_ban_from_lockout(): Implicitly marking parameter $actor as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/plugins/better-wp-security/core/lockout.php on line 742

Deprecated: ITSEC_Lockout::blacklist_ip(): Implicitly marking parameter $context as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/plugins/better-wp-security/core/lockout.php on line 1100

Deprecated: iThemesSecurity\Lib\Lockout\Lockout::__construct(): Implicitly marking parameter $context as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/plugins/better-wp-security/core/lib/lockout/class-lockout.php on line 49

Deprecated: optional(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/support/helpers.php on line 184

Deprecated: with(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/support/helpers.php on line 375

Deprecated: App\sage(): Implicitly marking parameter $container as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/app/helpers.php on line 15

Deprecated: Illuminate\Support\Collection::filter(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Collection.php on line 355

Deprecated: Illuminate\Support\Collection::first(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Collection.php on line 371

Deprecated: Illuminate\Support\Collection::last(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Collection.php on line 668

Deprecated: Illuminate\Support\Traits\EnumeratesValues::times(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Traits/EnumeratesValues.php on line 144

Deprecated: Illuminate\Support\Traits\EnumeratesValues::when(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Traits/EnumeratesValues.php on line 475

Deprecated: Illuminate\Support\Traits\EnumeratesValues::when(): Implicitly marking parameter $default as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Traits/EnumeratesValues.php on line 475

Deprecated: Illuminate\Support\Traits\EnumeratesValues::whenEmpty(): Implicitly marking parameter $default as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Traits/EnumeratesValues.php on line 497

Deprecated: Illuminate\Support\Traits\EnumeratesValues::whenNotEmpty(): Implicitly marking parameter $default as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Traits/EnumeratesValues.php on line 509

Deprecated: Illuminate\Support\Traits\EnumeratesValues::unless(): Implicitly marking parameter $default as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Traits/EnumeratesValues.php on line 522

Deprecated: Illuminate\Support\Traits\EnumeratesValues::unlessEmpty(): Implicitly marking parameter $default as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Traits/EnumeratesValues.php on line 534

Deprecated: Illuminate\Support\Traits\EnumeratesValues::unlessNotEmpty(): Implicitly marking parameter $default as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Traits/EnumeratesValues.php on line 546

Deprecated: Illuminate\Support\Enumerable::times(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Enumerable.php on line 28

Deprecated: Illuminate\Support\Enumerable::filter(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Enumerable.php on line 268

Deprecated: Illuminate\Support\Enumerable::when(): Implicitly marking parameter $default as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Enumerable.php on line 278

Deprecated: Illuminate\Support\Enumerable::whenEmpty(): Implicitly marking parameter $default as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Enumerable.php on line 287

Deprecated: Illuminate\Support\Enumerable::whenNotEmpty(): Implicitly marking parameter $default as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Enumerable.php on line 296

Deprecated: Illuminate\Support\Enumerable::unless(): Implicitly marking parameter $default as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Enumerable.php on line 306

Deprecated: Illuminate\Support\Enumerable::unlessEmpty(): Implicitly marking parameter $default as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Enumerable.php on line 315

Deprecated: Illuminate\Support\Enumerable::unlessNotEmpty(): Implicitly marking parameter $default as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Enumerable.php on line 324

Deprecated: Illuminate\Support\Enumerable::first(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Enumerable.php on line 432

Deprecated: Illuminate\Support\Enumerable::last(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Enumerable.php on line 555

Deprecated: Illuminate\Container\Container::beforeResolving(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/container/Container.php on line 1114

Deprecated: Illuminate\Container\Container::resolving(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/container/Container.php on line 1134

Deprecated: Illuminate\Container\Container::afterResolving(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/container/Container.php on line 1154

Deprecated: Illuminate\Container\Container::setInstance(): Implicitly marking parameter $container as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/container/Container.php on line 1393

Deprecated: Illuminate\Contracts\Container\Container::resolving(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/contracts/Container/Container.php on line 173

Deprecated: Illuminate\Contracts\Container\Container::afterResolving(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/contracts/Container/Container.php on line 182

Deprecated: Illuminate\Support\Arr::first(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Arr.php on line 183

Deprecated: Illuminate\Support\Arr::last(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/collections/Arr.php on line 212

Deprecated: Roots\Sage\Template\BladeProvider::__construct(): Implicitly marking parameter $container as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/roots/sage-lib/Template/BladeProvider.php on line 21

Deprecated: Illuminate\View\FileViewFinder::__construct(): Implicitly marking parameter $extensions as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/view/FileViewFinder.php on line 53

Deprecated: Illuminate\Events\Dispatcher::__construct(): Implicitly marking parameter $container as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/events/Dispatcher.php on line 65

Deprecated: Illuminate\View\Engines\CompilerEngine::__construct(): Implicitly marking parameter $files as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/view/Engines/CompilerEngine.php on line 33

Deprecated: Illuminate\Support\Str::createUuidsUsing(): Implicitly marking parameter $factory as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/support/Str.php on line 1007

Deprecated: Brain\Hierarchy\Hierarchy::getHierarchy(): Implicitly marking parameter $query as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/brain/hierarchy/src/Hierarchy.php on line 66

Deprecated: Brain\Hierarchy\Hierarchy::getTemplates(): Implicitly marking parameter $query as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/brain/hierarchy/src/Hierarchy.php on line 78

Deprecated: Brain\Hierarchy\Hierarchy::parse(): Implicitly marking parameter $query as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/brain/hierarchy/src/Hierarchy.php on line 90

Deprecated: Brain\Hierarchy\Branch\BranchSingle::__construct(): Implicitly marking parameter $postTemplates as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/brain/hierarchy/src/Branch/BranchSingle.php on line 29

Deprecated: Brain\Hierarchy\Branch\BranchPage::__construct(): Implicitly marking parameter $postTemplates as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/brain/hierarchy/src/Branch/BranchPage.php on line 30

Deprecated: Illuminate\View\View::render(): Implicitly marking parameter $callback as nullable is deprecated, the explicit nullable type must be used instead in /home/bake/sites/blogstage/releases/76/web/app/themes/cookie/vendor/illuminate/view/View.php on line 88
From Kipferl to Croissant - bake blog

From Kipferl to Croissant

A Brief History

The history of the crisp, crescent pastry we all know and love is quite a storied tale. People often think of France when they hear mention of the croissant, but its origins are actually Austrian–Viennese to be precise. In fact, as recently as the 19th century, the French viewed the croissant as a foreign novelty, sold only in special Viennese bakeries in the more affluent neighborhoods of Paris. The pastry’s Austrian origins and how it came to France in the first place are shrouded in legend.

croissants on a sheet pan

 

Culinary historians concur that the modern-day croissant was inspired by the Austrian kipferl, a crescent-shaped morning pastry made with brioche-like dough, which is denser and less flaky than the croissant we know today. According to popular lore, the kipferl originated in 1683 as a comestible celebration of Austrian victory over the Ottoman Turks at the siege of Vienna. The story goes that a baker, up early to make bread, saved Vienna when he heard the Turks tunneling underneath the city and sounded an alarm to the Viennese authorities. The kipferl’s curved shape, said to mimic the crescent moon of the Ottoman flag, would then seem to pay poetic tribute to the indomitable spirit of a city that resisted a powerful invading force. But the kipferl existed long before the Ottoman siege of Vienna. A poem mentions it as one of the Christmas treats that Viennese bakers presented to Duke Leopold in 1227. Moreover, crescent-shaped breads in general date back centuries earlier.

So, does the croissant’s Austrian ancestry belie its French fame? “Of course not,” says Jim Chevallier, an independent scholar and author of a book on croissant history, August Zang and the French Croissant: How Viennoiserie Came to France. “The croissant began as the Austrian kipferl, but became French the moment people began to make it with puffed pastry, which is a [17th-century] French innovation,” says Chevallier. “It has fully taken root in its adopted land.” Order a kipferl in Austria or Germany today and you’ll likely be handed a crescent-shaped cookie. 

A more romantic tale from the 18th century attributes the origin of the croissant to the French Queen and Austrian Archduchess, Marie Antoinette (1755-1793). Legend has it that the Queen, homesick for the taste of her native Vienna, would often bow out of royal dinners, only to sneak away to indulge in the sweets and coffee of her country. The story thus credits her love of Viennese kipferls and the christening of the kipferl as the “croissant” as having introduced the pastry to French high society. 

one whole croissant and one croissant cut in half

 

Legends aside, historical evidence as to the croissant’s evolution in France points instead to August Zang (1807-1888), an Austrian entrepreneur who opened the first Viennese bakery in Paris in 1838. Located at 92 Rue Richelieu on the Right Bank, his upscale Boulangerie Viennoise specialized in bread and pastries from his native Vienna, most notably the kipferl, along with pain viennois (a Viennese-style sandwich bread), both of which became widely popular in the city within ten years. Equipped with his patented steam oven, Zang made his kipferls with noticeably flakier dough than traditional brioche-based versions and the French began referring to the newfangled pastry as a croissant due to its crescent shape. 

References to croissants made with true, yeasted pâte feuilletée (puff pastry dough), however, didn’t materialize until the early 20th century.  For that development, we have the French baker, Sylvain Claudius Goy, to thank. In 1915, he wrote a recipe that specifically mentions pâte feuilletée, calling for the rolled puff pastry to be yeast-leavened and laminated with butter, a technique that remains at the core of how the modern-day, all butter, homemade croissant (croissant au beurre, fait maison) is made in France. 
And it is this traditional French croissant we are dedicated to making here at the Bakehouse. Like bread and other baked goods in America, croissants can be made with shortcuts causing them to fall short of the intended texture and flavor. There are very few places in the world outside of France where you can get a truly great, flaky, buttery croissant—Zingerman’s Bakehouse is certainly one of those places. We pride ourselves on their rich flavor, tender honeycombed interior, and crispy exterior that shatters a little when you bite into it. It’s mostly about taking the time to do it right and not using fake ingredients or pre-made frozen doughs. And we think it’s well worth the time and effort to do so. Like we say, you really can taste the difference. Visit the Bakeshop to pick up our 4 variations on the French croissant: classic Butter, Juliette’s Almond, Chocolate, or Parmesan and Prosciutto.

chocolate croissant with a bite out of it

 

Or, learn to make croissants yourself in one of our most popular hands-on baking classes: Ooh La La Croissant: French Pastry Class. You’ll learn the key techniques for creating a butter-laminated dough (layering the dough with butter and folding it over), filling the croissants, proofing them properly to achieve the right texture, and finally, baking them to a rich golden brown. In class, you’ll make our butter croissant recipe, as well as fill them with both our rich almond frangipane (we’ll give you the recipe for that, too) and bars of intense dark chocolate imported to us in Ann Arbor from renowned French chocolatier Michel Cluizel. There are few more sublime things in our book than enjoying a freshly-baked croissant that is still a little warm. We can’t wait for you to try it. It’s going to be life-changing. Reserve your spot now. 

By Lee Vedder
Bakehouse Historian

Bakehouse Historian

Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted