GET https://test.fitmetrics.ch/en/exercise/6733d73b94185-kettlebell-windmill

Components

20 Twig Components
120 Render Count
472 ms Render Time
86.5 MiB Memory Usage

Components

Name Metadata Render Count Render Time
media:icon
"App\Twig\Components\Media\Icon"
components/media/icon.html.twig
67 4.32ms
ui:badge
"App\Twig\Components\Ui\Badge"
components/ui/badge.html.twig
19 2.55ms
faq
"App\Twig\Components\Ui\FaqComponent"
components/ui/faq.html.twig
5 2.12ms
raw-faq
"App\Twig\Components\Ui\RawFaqComponent"
components/ui/raw-faq.html.twig
5 0.70ms
utils:theme-switcher
[Anonymous]
components/utils/theme-switcher.html.twig
3 1.65ms
ad:square:fluid
"App\Twig\Components\Ad\AdSquareFluid"
components/ad/square-fluid.html.twig
3 0.60ms
app:lang-selector
"App\Twig\Components\App\LangSelector"
components/app/lang-selector.html.twig
2 0.76ms
app:page-sharer
"App\Twig\Components\App\PageSharer"
components/app/page-sharer.html.twig
2 4.51ms
ui:editor-render
"App\Twig\Components\Ui\Editor\EditorRender"
components/ui/editor/render.html.twig
2 1.60ms
app:loading_spinner
"App\Twig\Components\App\LoadingSpinner"
components/app/loading-spinner.html.twig
2 0.68ms
menu:main
"App\Twig\Components\Menu\MainMenu"
components/menu/main.html.twig
1 50.63ms
menu:connexion-menu
"App\Twig\Components\Menu\ConnexionMenu"
components/menu/user-menu.html.twig
1 15.14ms
menu:breadcrumb
"App\Twig\Components\Menu\Breadcrumb"
components/menu/breadcrumb.html.twig
1 0.85ms
ad:banner
"App\Twig\Components\Ad\AdBanner"
components/ad/banner.html.twig
1 0.57ms
media:video
"App\Twig\Components\Media\Video"
components/media/video.html.twig
1 0.50ms
anatomy:avatar
"App\Twig\Components\Anatomy\Avatar"
components/anatomy/avatar.html.twig
1 402.57ms
training:difficulty-badge
"App\Twig\Components\Training\DifficultyBadge"
components/training/difficulity-badge.html.twig
1 0.61ms
ui:widget-embed
"App\Twig\Components\Ui\WidgetEmbed"
components/ui/widget_embed.html.twig
1 1.86ms
ad:wide-skyscraper
"App\Twig\Components\Ad\AdWideSkyscraper"
components/ad/wide-skyscraper.html.twig
1 0.78ms
ad:horizontal:fluid
"App\Twig\Components\Ad\AdHorizontalFluid"
components/ad/horizontal-fluid.html.twig
1 0.61ms

Render calls

menu:main App\Twig\Components\Menu\MainMenu 74.5 MiB 50.63 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\MainMenu {#6101
  -routingManager: App\BusinessLogic\Training\Exercise\Url\ExerciseRoutingManager {#208 …}
  -em: Doctrine\ORM\EntityManager {#550 …}
  -cache: Symfony\Component\Cache\Adapter\TraceableAdapter {#205 …}
  -kernel: App\Kernel {#14 …}
  -mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#214 …}
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.45 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "header--logo-dark header--logo dark:hidden h-[80px] w-[130px] max-w-[130px]"
  "data-front--header-target" => "logoDark"
]
Attributes
[
  "class" => "header--logo-dark header--logo dark:hidden h-[80px] w-[130px] max-w-[130px]"
  "data-front--header-target" => "logoDark"
]
Component
App\Twig\Components\Media\Icon {#6148
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.04 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "header--logo-white header--logo hidden dark:block h-[80px] w-[130px] max-w-[130px]"
  "data-front--header-target" => "logoWhite"
]
Attributes
[
  "class" => "header--logo-white header--logo hidden dark:block h-[80px] w-[130px] max-w-[130px]"
  "data-front--header-target" => "logoWhite"
]
Component
App\Twig\Components\Media\Icon {#6159
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
68.5 MiB 1.22 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#6210
  -props: [
    "class" => "max-w-fit"
  ]
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.04 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "block header--logo-dark header--logo w-full dark:hidden h-[50px] scale-150"
  "data-front--header-target" => "logoDark"
]
Attributes
[
  "class" => "block header--logo-dark header--logo w-full dark:hidden h-[50px] scale-150"
  "data-front--header-target" => "logoDark"
]
Component
App\Twig\Components\Media\Icon {#6225
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.04 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "hidden header--logo-white header--logo w-full dark:block h-[50px] scale-150"
  "data-front--header-target" => "logoWhite"
]
Attributes
[
  "class" => "hidden header--logo-white header--logo w-full dark:block h-[50px] scale-150"
  "data-front--header-target" => "logoWhite"
]
Component
App\Twig\Components\Media\Icon {#6275
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "search"
  "class" => "h-7 w-7 mr-4 fill-current"
]
Attributes
[
  "class" => "h-7 w-7 mr-4 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6303
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "search"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.04 ms
Input props
[
  "name" => "flexed-biceps"
  "class" => "h-7 w-7 mr-4 fill-current"
]
Attributes
[
  "class" => "h-7 w-7 mr-4 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6319
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "flexed-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "barbell"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6343
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "barbell"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "category"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6367
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "category"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "fire"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6391
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "fire"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "discipline "
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6415
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "discipline "
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "stats-chart"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6439
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "stats-chart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "latest"
  "class" => "h-7 w-7 mr-4 fill-current"
]
Attributes
[
  "class" => "h-7 w-7 mr-4 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6463
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "latest"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.03 ms
Input props
[
  "name" => "random"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6487
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "random"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.06 ms
Input props
[
  "name" => "chevron-down"
  "class" => "w-7 h-7 fill-black dark:fill-white transition group-hover:rotate-180"
]
Attributes
[
  "class" => "w-7 h-7 fill-black dark:fill-white transition group-hover:rotate-180"
]
Component
App\Twig\Components\Media\Icon {#6860
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
70.5 MiB 0.14 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#6815
  -props: [
    "class" => "max-w-fit"
  ]
}
menu:connexion-menu App\Twig\Components\Menu\ConnexionMenu 74.5 MiB 15.14 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\ConnexionMenu {#6945
  -authenticationUtils: Symfony\Component\Security\Http\Authentication\AuthenticationUtils {#6946 …}
  -formFactory: Symfony\Component\Form\FormFactory {#6944 …}
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.09 ms
Input props
[
  "name" => "close"
  "class" => "w-[26px] h-[26px] md:w-[15px] md:h-[15px] cursor-pointer"
]
Attributes
[
  "class" => "w-[26px] h-[26px] md:w-[15px] md:h-[15px] cursor-pointer"
]
Component
App\Twig\Components\Media\Icon {#7097
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.05 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "hidden dark:block h-[80px] w-[300px]"
]
Attributes
[
  "class" => "hidden dark:block h-[80px] w-[300px]"
]
Component
App\Twig\Components\Media\Icon {#7132
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.04 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "block dark:hidden h-[80px] w-[300px]"
]
Attributes
[
  "class" => "block dark:hidden h-[80px] w-[300px]"
]
Component
App\Twig\Components\Media\Icon {#7162
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.06 ms
Input props
[
  "name" => "google"
  "class" => "h-[24px] w-[20px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "h-[24px] w-[20px]"
]
Component
App\Twig\Components\Media\Icon {#7194
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "google"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.04 ms
Input props
[
  "name" => "apple"
  "class" => "h-[24px] w-[20px] fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "h-[24px] w-[20px] fill-white"
]
Component
App\Twig\Components\Media\Icon {#7213
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "apple"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.07 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "h-[80px] w-[300px]"
]
Attributes
[
  "class" => "h-[80px] w-[300px]"
]
Component
App\Twig\Components\Media\Icon {#7323
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.06 ms
Input props
[
  "name" => "chevron-down"
  "class" => "fill-white w-[20px] h-[20px]"
]
Attributes
[
  "class" => "fill-white w-[20px] h-[20px]"
]
Component
App\Twig\Components\Media\Icon {#7357
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "flexed-biceps"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#7373
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "flexed-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "fire"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#7397
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "fire"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "category"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#7421
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "category"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "barbell"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#7445
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "barbell"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "discipline"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#7469
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "discipline"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "stats-chart"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#7493
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "stats-chart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "latest"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#7517
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "latest"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "random"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#7541
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "random"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.04 ms
Input props
[
  "name" => "favorites"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#7565
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.04 ms
Input props
[
  "name" => "more"
  "class" => "h-5 w-5 mr-2 fill-current"
]
Attributes
[
  "class" => "h-5 w-5 mr-2 fill-current"
]
Component
App\Twig\Components\Media\Icon {#7589
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "more"
  +title: null
  +symbolDefsName: null
}
app:lang-selector App\Twig\Components\App\LangSelector 74.5 MiB 0.67 ms
Input props
[
  "defaultOpenLeft" => true
]
Attributes
[]
Component
App\Twig\Components\App\LangSelector {#7634
  +routeName: null
  +params: null
  +withQuery: true
  +defaultOpenLeft: true
  -seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  -router: Symfony\Bundle\FrameworkBundle\Routing\Router {#681 …}
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.06 ms
Input props
[
  "name" => "close"
  "class" => "w-[26px] h-[26px] md:w-[15px] md:h-[15px] cursor-pointer text-white"
]
Attributes
[
  "class" => "w-[26px] h-[26px] md:w-[15px] md:h-[15px] cursor-pointer text-white"
]
Component
App\Twig\Components\Media\Icon {#7624
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "h-16 w-full"
]
Attributes
[
  "class" => "h-16 w-full"
]
Component
App\Twig\Components\Media\Icon {#7265
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
menu:breadcrumb App\Twig\Components\Menu\Breadcrumb 74.5 MiB 0.85 ms
Input props
[
  "builder" => App\BusinessLogic\App\Menu\BreadcrumbBuilder {#4665
    -items: [
      [
        "label" => "menu.home"
        "url" => "/en/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/en/exercises"
      ]
      [
        "label" => "Windmill"
        "url" => "/en/exercises/group/159-windmill"
      ]
      [
        "label" => "Kettlebell Windmill"
        "url" => null
      ]
    ]
  }
]
Attributes
[]
Component
App\Twig\Components\Menu\Breadcrumb {#7717
  +items: [
    [
      "label" => "menu.home"
      "url" => "/en/"
    ]
    [
      "label" => "menu.exercises"
      "url" => "/en/exercises"
    ]
    [
      "label" => "Windmill"
      "url" => "/en/exercises/group/159-windmill"
    ]
    [
      "label" => "Kettlebell Windmill"
      "url" => null
    ]
  ]
  +builder: App\BusinessLogic\App\Menu\BreadcrumbBuilder {#4665
    -items: [
      [
        "label" => "menu.home"
        "url" => "/en/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/en/exercises"
      ]
      [
        "label" => "Windmill"
        "url" => "/en/exercises/group/159-windmill"
      ]
      [
        "label" => "Kettlebell Windmill"
        "url" => null
      ]
    ]
  }
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.06 ms
Input props
[
  "name" => "chevron-right"
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Attributes
[
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Component
App\Twig\Components\Media\Icon {#7747
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "chevron-right"
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Attributes
[
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Component
App\Twig\Components\Media\Icon {#7769
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "chevron-right"
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Attributes
[
  "class" => "w-[10px] h-[10px] fill-black dark:fill-white"
]
Component
App\Twig\Components\Media\Icon {#7792
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
ad:banner App\Twig\Components\Ad\AdBanner 74.5 MiB 0.57 ms
Input props
[
  "containerClass" => "my-4"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdBanner {#7835
  +includeScript: true
  +labelClass: null
  +containerClass: "my-4"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2927 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
media:video App\Twig\Components\Media\Video 74.5 MiB 0.50 ms
Input props
[
  "media" => App\Entity\Media\MediaVideo {#4619
    #uploadedFile: null
    #file: Vich\UploaderBundle\Entity\File {#4621 …}
    #credits: Doctrine\ORM\PersistentCollection {#4623 …}
    -source: null
    -zone: null
    -urlExternal: "https://www.youtube.com/watch?v=BaKdPgHAk6c"
    #id: 2052
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#4595 …}
    #newTranslations: null
    #currentLocale: "en"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: "azeoo"
    #createdAt: DateTimeImmutable @1731450683 {#4657
      date: 2024-11-12 23:31:23.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1731450683 {#4609
      date: 2024-11-12 23:31:23.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    -duration: null
    -format: null
    -startTime: null
    -endTime: null
    -youtubeId: "BaKdPgHAk6c"
  }
  "title" => "Kettlebell Windmill"
  "showCredits" => false
]
Attributes
[]
Component
App\Twig\Components\Media\Video {#7922
  +media: App\Entity\Media\MediaVideo {#4619
    #uploadedFile: null
    #file: Vich\UploaderBundle\Entity\File {#4621 …}
    #credits: Doctrine\ORM\PersistentCollection {#4623 …}
    -source: null
    -zone: null
    -urlExternal: "https://www.youtube.com/watch?v=BaKdPgHAk6c"
    #id: 2052
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#4595 …}
    #newTranslations: null
    #currentLocale: "en"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: "azeoo"
    #createdAt: DateTimeImmutable @1731450683 {#4657
      date: 2024-11-12 23:31:23.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1731450683 {#4609
      date: 2024-11-12 23:31:23.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    -duration: null
    -format: null
    -startTime: null
    -endTime: null
    -youtubeId: "BaKdPgHAk6c"
  }
  +title: "Kettlebell Windmill"
  +posterSm: null
  +posterLg: null
  +hasPipButton: true
  +loop: false
  +mute: false
  +showCredits: false
  +creditsTitle: "label.media_video.credits"
  -mediaManager: App\BusinessLogic\Media\Manager\MediaManager {#214 …}
  -appManager: App\BusinessLogic\App\Manager\AppManager {#152 …}
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.06 ms
Input props
[
  "name" => "favorites"
  "class" => "h-4 w-4 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Attributes
[
  "class" => "h-4 w-4 stroke-yellow text-transparent"
  "data-front--favorite-target" => "icon"
]
Component
App\Twig\Components\Media\Icon {#7938
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "program"
  "class" => "w-5 h-5 text-white inline-flex"
]
Attributes
[
  "class" => "w-5 h-5 text-white inline-flex"
]
Component
App\Twig\Components\Media\Icon {#7971
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 74.5 MiB 2.24 ms
Input props
[
  "class" => "mt-2 md:m-0"
]
Attributes
[
  "class" => "mt-2 md:m-0"
]
Component
App\Twig\Components\App\PageSharer {#7995
  +shareUrl: "https://test.fitmetrics.ch/en/exercise/6733d73b94185-kettlebell-windmill"
  +title: "Kettlebell Windmill - Exercise - FitMetrics"
  +description: "The Kettlebell Windmill is an advanced functional training movement that challenges core strength, shoulder stability, and overall mobility. This exercise involves a unique rotational hinge motion that enhances both flexibility and strength, particularly in the posterior chain and lateral core muscles. By holding a kettlebell overhead while performing a controlled side bend, the athlete recruits deep abdominal stabilizers, engages the obliques, and mobilizes the thoracic spine. It is especially valuable for developing unilateral control, improving joint integrity in the shoulder, and increasing balance. The Kettlebell Windmill is commonly used in athletic training programs and is highly regarded in CrossFit, functional fitness, and mobility routines. Its capacity to reinforce total-body control while emphasizing spinal alignment and rotational endurance makes it a powerful addition to any advanced strength or movement practice."
  +quote: null
  +hashtags: [
    "fitmetrics"
  ]
  +alignMobileLeft: false
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  -seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.06 ms
Input props
[
  "name" => "check"
  "class" => "w-5 h-5 text-white fill-white"
]
Attributes
[
  "class" => "w-5 h-5 text-white fill-white"
]
Component
App\Twig\Components\Media\Icon {#8025
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.06 ms
Input props
[
  "name" => "reddit"
  "class" => "w-6 h-6 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-6 h-6 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#8053
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "reddit"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "twitter"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#8078
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "twitter"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "threads"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#8101
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "facebook"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#8124
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "linkedin"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#8147
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "linkedin"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.06 ms
Input props
[
  "name" => "whatsapp"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#8170
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.05 ms
Input props
[
  "name" => "email"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#8193
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "email"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.06 ms
Input props
[
  "name" => "program"
  "class" => "w-6 h-6 mr-3 !text-white"
]
Attributes
[
  "class" => "w-6 h-6 mr-3 !text-white"
]
Component
App\Twig\Components\Media\Icon {#8224
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
ui:editor-render App\Twig\Components\Ui\Editor\EditorRender 76.5 MiB 1.40 ms
Input props
[
  "data" => [
    "time" => 1749138310
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Instructions"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "ordered"
          "items" => [
            [
              "content" => "Stand with feet slightly wider than shoulder-width, one arm holding a kettlebell overhead."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Turn your feet at a 45-degree angle away from the kettlebell side."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Slide your free hand down the inner thigh of the opposite leg, keeping both legs straight."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Rotate your torso while maintaining the arm with the kettlebell locked out and vertical."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Lower until your free hand touches your foot or the floor, then reverse the motion to stand back up."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Technical Tips"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Engage your core and glutes throughout the movement."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Keep your eyes on the kettlebell to maintain shoulder stability."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Do not bend the knees; hinge at the hips while maintaining a flat back."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Ensure the kettlebell remains in a vertical path overhead at all times."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Breathing Tips"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Inhale as you begin lowering your torso."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Exhale steadily while returning to the upright position."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Editor\EditorRender {#8273
  +title: null
  +data: [
    "time" => 1749138310
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Instructions"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "ordered"
          "items" => [
            [
              "content" => "Stand with feet slightly wider than shoulder-width, one arm holding a kettlebell overhead."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Turn your feet at a 45-degree angle away from the kettlebell side."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Slide your free hand down the inner thigh of the opposite leg, keeping both legs straight."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Rotate your torso while maintaining the arm with the kettlebell locked out and vertical."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Lower until your free hand touches your foot or the floor, then reverse the motion to stand back up."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Technical Tips"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Engage your core and glutes throughout the movement."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Keep your eyes on the kettlebell to maintain shoulder stability."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Do not bend the knees; hinge at the hips while maintaining a flat back."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Ensure the kettlebell remains in a vertical path overhead at all times."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Breathing Tips"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Inhale as you begin lowering your torso."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Exhale steadily while returning to the upright position."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
  +spacing: 4
  +adsInterval: 5
  +withAds: true
  +withMarketingBanner: false
  +marketingBannerPosition: 8
  -host: "https://test.fitmetrics.ch"
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
}
ui:editor-render App\Twig\Components\Ui\Editor\EditorRender 76.5 MiB 0.20 ms
Input props
[
  "data" => [
    "time" => 1749138310
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Shoulder instability or injury"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Lower back pain or herniation"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Limited thoracic spine mobility"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Balance disorders"
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Editor\EditorRender {#8334
  +title: null
  +data: [
    "time" => 1749138310
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Shoulder instability or injury"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Lower back pain or herniation"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Limited thoracic spine mobility"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Balance disorders"
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
  +spacing: 4
  +adsInterval: 5
  +withAds: true
  +withMarketingBanner: false
  +marketingBannerPosition: 8
  -host: "https://test.fitmetrics.ch"
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
}
ad:square:fluid App\Twig\Components\Ad\AdSquareFluid 76.5 MiB 0.36 ms
Input props
[
  "containerClass" => "mt-6"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#8321
  +includeScript: true
  +labelClass: null
  +containerClass: "mt-6"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2927 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 1.01 ms
Input props
[
  "faq" => App\Entity\Faq {#5393
    -news: Doctrine\ORM\PersistentCollection {#5376 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5378 …}
    #id: 1840
    #createdAt: DateTimeImmutable @1749138310 {#5388
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1749138310 {#5363
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5426 …}
    #newTranslations: null
    #currentLocale: "en"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8378
  +faq: App\Entity\Faq {#5393
    -news: Doctrine\ORM\PersistentCollection {#5376 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5378 …}
    #id: 1840
    #createdAt: DateTimeImmutable @1749138310 {#5388
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1749138310 {#5363
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5426 …}
    #newTranslations: null
    #currentLocale: "en"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 76.5 MiB 0.36 ms
Input props
[
  "question" => "What muscles do kettlebell windmills work the most?"
  "answer" => "Kettlebell windmills primarily work the core muscles, especially the obliques, along with the shoulders, glutes, and lower back for stabilization and control."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8406
  +question: "What muscles do kettlebell windmills work the most?"
  +answer: "Kettlebell windmills primarily work the core muscles, especially the obliques, along with the shoulders, glutes, and lower back for stabilization and control."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.29 ms
Input props
[
  "faq" => App\Entity\Faq {#5424
    -news: Doctrine\ORM\PersistentCollection {#5423 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5421 …}
    #id: 1841
    #createdAt: DateTimeImmutable @1749138310 {#5428
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1749138310 {#5425
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5419 …}
    #newTranslations: null
    #currentLocale: "en"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8437
  +faq: App\Entity\Faq {#5424
    -news: Doctrine\ORM\PersistentCollection {#5423 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5421 …}
    #id: 1841
    #createdAt: DateTimeImmutable @1749138310 {#5428
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1749138310 {#5425
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5419 …}
    #newTranslations: null
    #currentLocale: "en"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 76.5 MiB 0.08 ms
Input props
[
  "question" => "Can beginners do the kettlebell windmill safely?"
  "answer" => "Kettlebell windmills are advanced and require a strong foundation in core stability and shoulder mobility; beginners should start with bodyweight windmills or lighter weights under supervision."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8482
  +question: "Can beginners do the kettlebell windmill safely?"
  +answer: "Kettlebell windmills are advanced and require a strong foundation in core stability and shoulder mobility; beginners should start with bodyweight windmills or lighter weights under supervision."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.27 ms
Input props
[
  "faq" => App\Entity\Faq {#5415
    -news: Doctrine\ORM\PersistentCollection {#5414 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5412 …}
    #id: 1842
    #createdAt: DateTimeImmutable @1749138310 {#5417
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1749138310 {#5416
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5410 …}
    #newTranslations: null
    #currentLocale: "en"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8485
  +faq: App\Entity\Faq {#5415
    -news: Doctrine\ORM\PersistentCollection {#5414 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5412 …}
    #id: 1842
    #createdAt: DateTimeImmutable @1749138310 {#5417
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1749138310 {#5416
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5410 …}
    #newTranslations: null
    #currentLocale: "en"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 76.5 MiB 0.08 ms
Input props
[
  "question" => "What weight should I use for kettlebell windmills?"
  "answer" => "Start with a light to moderate kettlebell that allows you to maintain shoulder stability and proper form throughout the full range of motion."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8529
  +question: "What weight should I use for kettlebell windmills?"
  +answer: "Start with a light to moderate kettlebell that allows you to maintain shoulder stability and proper form throughout the full range of motion."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.28 ms
Input props
[
  "faq" => App\Entity\Faq {#5406
    -news: Doctrine\ORM\PersistentCollection {#5405 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5403 …}
    #id: 1843
    #createdAt: DateTimeImmutable @1749138310 {#5408
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1749138310 {#5407
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5401 …}
    #newTranslations: null
    #currentLocale: "en"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8532
  +faq: App\Entity\Faq {#5406
    -news: Doctrine\ORM\PersistentCollection {#5405 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5403 …}
    #id: 1843
    #createdAt: DateTimeImmutable @1749138310 {#5408
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1749138310 {#5407
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5401 …}
    #newTranslations: null
    #currentLocale: "en"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 76.5 MiB 0.09 ms
Input props
[
  "question" => "Are kettlebell windmills good for mobility?"
  "answer" => "Yes, kettlebell windmills significantly enhance thoracic spine mobility, hip flexibility, and shoulder stability when performed with correct technique."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8576
  +question: "Are kettlebell windmills good for mobility?"
  +answer: "Yes, kettlebell windmills significantly enhance thoracic spine mobility, hip flexibility, and shoulder stability when performed with correct technique."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.27 ms
Input props
[
  "faq" => App\Entity\Faq {#5353
    -news: Doctrine\ORM\PersistentCollection {#5352 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5350 …}
    #id: 1844
    #createdAt: DateTimeImmutable @1749138310 {#5355
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1749138310 {#5354
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5348 …}
    #newTranslations: null
    #currentLocale: "en"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8579
  +faq: App\Entity\Faq {#5353
    -news: Doctrine\ORM\PersistentCollection {#5352 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5350 …}
    #id: 1844
    #createdAt: DateTimeImmutable @1749138310 {#5355
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1749138310 {#5354
      date: 2025-06-05 17:45:10.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5348 …}
    #newTranslations: null
    #currentLocale: "en"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 76.5 MiB 0.08 ms
Input props
[
  "question" => "Should I keep my legs straight during the kettlebell windmill?"
  "answer" => "Yes, keeping the legs straight helps engage the hamstrings and glutes while supporting proper hip hinge mechanics essential for the movement."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8623
  +question: "Should I keep my legs straight during the kettlebell windmill?"
  +answer: "Yes, keeping the legs straight helps engage the hamstrings and glutes while supporting proper hip hinge mechanics essential for the movement."
}
anatomy:avatar App\Twig\Components\Anatomy\Avatar 84.5 MiB 402.57 ms
Input props
[
  "class" => "relative"
  "primaryMuscles" => [
    6
  ]
  "secondaryMuscles" => [
    3
    5
    15
    25
    26
    28
    33
  ]
  "displayFront" => true
]
Attributes
[
  "class" => "relative"
]
Component
App\Twig\Components\Anatomy\Avatar {#8551
  #container: Symfony\Component\DependencyInjection\Argument\ServiceLocator {#8634 …}
  +primaryMuscles: [
    6
  ]
  +secondaryMuscles: [
    3
    5
    15
    25
    26
    28
    33
  ]
  +type: "url"
  +urlReferenceType: 2
  +displayFront: true
  +selectedMuscles: []
  +displayTagMuscles: false
  +hoverMuscleDefaultText: "-"
  #entityManager: Doctrine\ORM\EntityManager {#550 …}
  #localeSwitcher: Symfony\Component\Translation\LocaleSwitcher {#1600 …}
  #avatarData: App\BusinessLogic\Anatomy\AvatarData {#8632 …}
  -liveResponder: Symfony\UX\LiveComponent\LiveResponder {#8633 …}
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.91 ms
Input props
[
  "name" => "Abs"
  "url" => "/en/exercises/muscle/6-abs"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#9949
  +name: "Abs"
  +url: "/en/exercises/muscle/6-abs"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.11 ms
Input props
[
  "name" => "Glutes"
  "url" => "/en/exercises/muscle/3-glutes"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10001
  +name: "Glutes"
  +url: "/en/exercises/muscle/3-glutes"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.09 ms
Input props
[
  "name" => "Lower back"
  "url" => "/en/exercises/muscle/5-lower-back"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10025
  +name: "Lower back"
  +url: "/en/exercises/muscle/5-lower-back"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.10 ms
Input props
[
  "name" => "External obliques"
  "url" => "/en/exercises/muscle/15-external-obliques"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10049
  +name: "External obliques"
  +url: "/en/exercises/muscle/15-external-obliques"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.09 ms
Input props
[
  "name" => "Lats"
  "url" => "/en/exercises/muscle/25-lats"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10073
  +name: "Lats"
  +url: "/en/exercises/muscle/25-lats"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Rhomboid"
  "url" => "/en/exercises/muscle/26-rhomboid"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10097
  +name: "Rhomboid"
  +url: "/en/exercises/muscle/26-rhomboid"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Shoulders"
  "url" => "/en/exercises/muscle/28-shoulders"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10121
  +name: "Shoulders"
  +url: "/en/exercises/muscle/28-shoulders"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Gluteus medius"
  "url" => "/en/exercises/muscle/33-gluteus-medius"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10145
  +name: "Gluteus medius"
  +url: "/en/exercises/muscle/33-gluteus-medius"
  +color: "primary"
  +small: false
  +selected: false
}
ad:square:fluid App\Twig\Components\Ad\AdSquareFluid 84.5 MiB 0.13 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#9921
  +includeScript: true
  +labelClass: null
  +containerClass: "max-h-[300px] max-w-[300px]"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2927 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 84.5 MiB 0.61 ms
Input props
[
  "difficulty" => "advanced"
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#10178
  +difficulty: "advanced"
  +small: false
  +link: true
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.11 ms
Input props
[
  "name" => "Kettlebells"
  "url" => "/en/exercises/equipment/2-kettlebells"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10223
  +name: "Kettlebells"
  +url: "/en/exercises/equipment/2-kettlebells"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.10 ms
Input props
[
  "name" => "Bodybuilding"
  "url" => "/en/exercises/sport/1-bodybuilding"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10250
  +name: "Bodybuilding"
  +url: "/en/exercises/sport/1-bodybuilding"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.10 ms
Input props
[
  "name" => "Callisthenics"
  "url" => "/en/exercises/sport/3-callisthenics"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10274
  +name: "Callisthenics"
  +url: "/en/exercises/sport/3-callisthenics"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Fitness"
  "url" => "/en/exercises/sport/5-fitness"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10298
  +name: "Fitness"
  +url: "/en/exercises/sport/5-fitness"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Crossfit"
  "url" => "/en/exercises/sport/7-crossfit"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10322
  +name: "Crossfit"
  +url: "/en/exercises/sport/7-crossfit"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.09 ms
Input props
[
  "name" => "Yoga"
  "url" => "/en/exercises/sport/8-yoga"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10346
  +name: "Yoga"
  +url: "/en/exercises/sport/8-yoga"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.09 ms
Input props
[
  "name" => "Mobility"
  "url" => "/en/exercises/category/59-mobility"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10370
  +name: "Mobility"
  +url: "/en/exercises/category/59-mobility"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Strengthening"
  "url" => "/en/exercises/category/61-strengthening"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10394
  +name: "Strengthening"
  +url: "/en/exercises/category/61-strengthening"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Core"
  "url" => "/en/exercises/category/74-core"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10418
  +name: "Core"
  +url: "/en/exercises/category/74-core"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.09 ms
Input props
[
  "name" => "Functional training"
  "url" => "/en/exercises/category/77-functional-training"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10442
  +name: "Functional training"
  +url: "/en/exercises/category/77-functional-training"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Balance and stability"
  "url" => "/en/exercises/category/78-balance-and-stability"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10466
  +name: "Balance and stability"
  +url: "/en/exercises/category/78-balance-and-stability"
  +color: "gray"
  +small: true
  +selected: false
}
ad:square:fluid App\Twig\Components\Ad\AdSquareFluid 84.5 MiB 0.11 ms
Input props
[
  "containerClass" => "hidden lg:flex items-center justify-center my-6"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#10159
  +includeScript: true
  +labelClass: null
  +containerClass: "hidden lg:flex items-center justify-center my-6"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2927 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
app:loading_spinner App\Twig\Components\App\LoadingSpinner 84.5 MiB 0.58 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\App\LoadingSpinner {#8260
  +color: "fill-primary"
  +size: 8
  +centered: true
  +inline: false
}
app:loading_spinner App\Twig\Components\App\LoadingSpinner 84.5 MiB 0.10 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\App\LoadingSpinner {#10518
  +color: "fill-primary"
  +size: 8
  +centered: true
  +inline: false
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.13 ms
Input props
[
  "name" => "program"
  "class" => "w-6 h-6 mr-3 !text-white"
]
Attributes
[
  "class" => "w-6 h-6 mr-3 !text-white"
]
Component
App\Twig\Components\Media\Icon {#10558
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
ui:widget-embed App\Twig\Components\Ui\WidgetEmbed 84.5 MiB 1.86 ms
Input props
[
  "class" => "hidden md:block"
  "route" => "https://test.fitmetrics.ch/en/widgets/exercise/preview-6733d73b94185?video=1"
  "parameters" => [
    [
      "name" => "orientation"
      "description" => "Change the layout: horizontal (side by side) or vertical (stacked)"
      "example" => "?orientation=vertical"
      "values" => [
        "horizontal"
        "vertical"
      ]
    ]
    [
      "name" => "video"
      "description" => "Show the exercise video (if available): yes"
      "example" => "?video=1"
      "values" => [
        "0"
        "1"
        "true"
        "false"
      ]
    ]
  ]
  "defaultWidth" => 350
  "defaultHeight" => 700
]
Attributes
[
  "class" => "hidden md:block"
]
Component
App\Twig\Components\Ui\WidgetEmbed {#10594
  +route: "https://test.fitmetrics.ch/en/widgets/exercise/preview-6733d73b94185?video=1"
  +parameters: [
    [
      "name" => "orientation"
      "description" => "Change the layout: horizontal (side by side) or vertical (stacked)"
      "example" => "?orientation=vertical"
      "values" => [
        "horizontal"
        "vertical"
      ]
    ]
    [
      "name" => "video"
      "description" => "Show the exercise video (if available): yes"
      "example" => "?video=1"
      "values" => [
        "0"
        "1"
        "true"
        "false"
      ]
    ]
  ]
  +defaultWidth: 350
  +defaultHeight: 700
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.10 ms
Input props
[
  "name" => "check"
  "class" => "me-1"
  "style" => "width: 20px; height: 20px;"
]
Attributes
[
  "class" => "me-1"
  "style" => "width: 20px; height: 20px;"
]
Component
App\Twig\Components\Media\Icon {#10632
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.09 ms
Input props
[
  "name" => "close"
  "class" => "w-[26px] h-[26px] cursor-pointer text-black dark:text-white"
]
Attributes
[
  "class" => "w-[26px] h-[26px] cursor-pointer text-black dark:text-white"
]
Component
App\Twig\Components\Media\Icon {#10665
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 84.5 MiB 2.27 ms
Input props
[
  "class" => "content-container"
  "title" => "Kettlebell Windmill"
  "description" => "The Kettlebell Windmill is an advanced functional training movement that challenges core strength, shoulder stability, and overall mobility. This exercise involves a unique rotational hinge motion that enhances both flexibility and strength, particularly in the posterior chain and lateral core muscles. By holding a kettlebell overhead while performing a controlled side bend, the athlete recruits deep abdominal stabilizers, engages the obliques, and mobilizes the thoracic spine. It is especially valuable for developing unilateral control, improving joint integrity in the shoulder, and increasing balance. The Kettlebell Windmill is commonly used in athletic training programs and is highly regarded in CrossFit, functional fitness, and mobility routines. Its capacity to reinforce total-body control while emphasizing spinal alignment and rotational endurance makes it a powerful addition to any advanced strength or movement practice."
]
Attributes
[
  "class" => "content-container"
]
Component
App\Twig\Components\App\PageSharer {#10705
  +shareUrl: "https://test.fitmetrics.ch/en/exercise/6733d73b94185-kettlebell-windmill"
  +title: "Kettlebell Windmill"
  +description: "The Kettlebell Windmill is an advanced functional training movement that challenges core strength, shoulder stability, and overall mobility. This exercise involves a unique rotational hinge motion that enhances both flexibility and strength, particularly in the posterior chain and lateral core muscles. By holding a kettlebell overhead while performing a controlled side bend, the athlete recruits deep abdominal stabilizers, engages the obliques, and mobilizes the thoracic spine. It is especially valuable for developing unilateral control, improving joint integrity in the shoulder, and increasing balance. The Kettlebell Windmill is commonly used in athletic training programs and is highly regarded in CrossFit, functional fitness, and mobility routines. Its capacity to reinforce total-body control while emphasizing spinal alignment and rotational endurance makes it a powerful addition to any advanced strength or movement practice."
  +quote: null
  +hashtags: [
    "fitmetrics"
  ]
  +alignMobileLeft: false
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  -seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.09 ms
Input props
[
  "name" => "check"
  "class" => "w-5 h-5 text-white fill-white"
]
Attributes
[
  "class" => "w-5 h-5 text-white fill-white"
]
Component
App\Twig\Components\Media\Icon {#10713
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.08 ms
Input props
[
  "name" => "reddit"
  "class" => "w-6 h-6 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-6 h-6 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#10735
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "reddit"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.09 ms
Input props
[
  "name" => "twitter"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#10759
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "twitter"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.08 ms
Input props
[
  "name" => "threads"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#10782
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.08 ms
Input props
[
  "name" => "facebook"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#10805
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.08 ms
Input props
[
  "name" => "linkedin"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#10828
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "linkedin"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.11 ms
Input props
[
  "name" => "whatsapp"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#10851
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.08 ms
Input props
[
  "name" => "email"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#10874
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "email"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
ad:wide-skyscraper App\Twig\Components\Ad\AdWideSkyscraper 86.5 MiB 0.78 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Ad\AdWideSkyscraper {#719
  +includeScript: true
  +labelClass: null
  +containerClass: ""
  +adClass: null
  +showBgColor: false
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2927 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
  +right: true
  +left: true
}
ad:horizontal:fluid App\Twig\Components\Ad\AdHorizontalFluid 86.5 MiB 0.61 ms
Input props
[
  "containerClass" => "content-container my-4"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdHorizontalFluid {#10921
  +includeScript: true
  +labelClass: null
  +containerClass: "content-container my-4"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2927 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
app:lang-selector App\Twig\Components\App\LangSelector 86.5 MiB 0.09 ms
Input props
[
  "defaultOpenLeft" => false
]
Attributes
[]
Component
App\Twig\Components\App\LangSelector {#10976
  +routeName: null
  +params: null
  +withQuery: true
  +defaultOpenLeft: false
  -seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
  -requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  -router: Symfony\Bundle\FrameworkBundle\Routing\Router {#681 …}
}
utils:theme-switcher
[Anonymous]
86.5 MiB 0.29 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#10968
  -props: [
    "class" => "max-w-fit"
  ]
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.09 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "h-12 sm:h-16 max-w-[116px] mr-3 dark:hidden"
]
Attributes
[
  "class" => "h-12 sm:h-16 max-w-[116px] mr-3 dark:hidden"
]
Component
App\Twig\Components\Media\Icon {#11010
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.08 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "h-12 sm:h-16 max-w-[116px] mr-3 hidden dark:block"
]
Attributes
[
  "class" => "h-12 sm:h-16 max-w-[116px] mr-3 hidden dark:block"
]
Component
App\Twig\Components\Media\Icon {#11042
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 ms
Input props
[
  "name" => "heart"
  "class" => "heart h-5 w-5 text-[#eb2a2a]"
]
Attributes
[
  "class" => "heart h-5 w-5 text-[#eb2a2a]"
]
Component
App\Twig\Components\Media\Icon {#11065
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "heart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 ms
Input props
[
  "name" => "whatsapp"
  "class" => "w-[28px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#11088
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 ms
Input props
[
  "name" => "instagram"
  "class" => "w-[28px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#11111
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "instagram"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 ms
Input props
[
  "name" => "threads"
  "class" => "w-[28px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#11134
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 ms
Input props
[
  "name" => "tiktok"
  "class" => "w-[29px] h-[29px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[29px] h-[29px]"
]
Component
App\Twig\Components\Media\Icon {#11157
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "tiktok"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.06 ms
Input props
[
  "name" => "facebook"
  "class" => "w-[19px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[19px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#11180
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.06 ms
Input props
[
  "name" => "youtube"
  "class" => "w-[28px] h-[24px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[24px]"
]
Component
App\Twig\Components\Media\Icon {#11203
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6151 …}
  +name: "youtube"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}