Components

20 Twig Components
115 Render Count
615 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 3.52ms
ui:badge
"App\Twig\Components\Ui\Badge"
components/ui/badge.html.twig
14 1.81ms
faq
"App\Twig\Components\Ui\FaqComponent"
components/ui/faq.html.twig
5 1.36ms
raw-faq
"App\Twig\Components\Ui\RawFaqComponent"
components/ui/raw-faq.html.twig
5 0.46ms
utils:theme-switcher
[Anonymous]
components/utils/theme-switcher.html.twig
3 1.55ms
ad:square:fluid
"App\Twig\Components\Ad\AdSquareFluid"
components/ad/square-fluid.html.twig
3 0.46ms
app:lang-selector
"App\Twig\Components\App\LangSelector"
components/app/lang-selector.html.twig
2 0.46ms
app:page-sharer
"App\Twig\Components\App\PageSharer"
components/app/page-sharer.html.twig
2 3.53ms
ui:editor-render
"App\Twig\Components\Ui\Editor\EditorRender"
components/ui/editor/render.html.twig
2 0.99ms
app:loading_spinner
"App\Twig\Components\App\LoadingSpinner"
components/app/loading-spinner.html.twig
2 0.63ms
menu:main
"App\Twig\Components\Menu\MainMenu"
components/menu/main.html.twig
1 37.72ms
menu:connexion-menu
"App\Twig\Components\Menu\ConnexionMenu"
components/menu/user-menu.html.twig
1 8.61ms
menu:breadcrumb
"App\Twig\Components\Menu\Breadcrumb"
components/menu/breadcrumb.html.twig
1 0.54ms
ad:banner
"App\Twig\Components\Ad\AdBanner"
components/ad/banner.html.twig
1 0.38ms
media:video
"App\Twig\Components\Media\Video"
components/media/video.html.twig
1 0.33ms
anatomy:avatar
"App\Twig\Components\Anatomy\Avatar"
components/anatomy/avatar.html.twig
1 561.89ms
training:difficulty-badge
"App\Twig\Components\Training\DifficultyBadge"
components/training/difficulity-badge.html.twig
1 0.63ms
ui:widget-embed
"App\Twig\Components\Ui\WidgetEmbed"
components/ui/widget_embed.html.twig
1 1.57ms
ad:wide-skyscraper
"App\Twig\Components\Ad\AdWideSkyscraper"
components/ad/wide-skyscraper.html.twig
1 0.81ms
ad:horizontal:fluid
"App\Twig\Components\Ad\AdHorizontalFluid"
components/ad/horizontal-fluid.html.twig
1 0.59ms

Render calls

menu:main App\Twig\Components\Menu\MainMenu 74.5 MiB 37.72 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\MainMenu {#6069
  -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 70.5 MiB 0.46 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 {#6116
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.05 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 {#6127
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
70.5 MiB 1.20 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#6178
  -props: [
    "class" => "max-w-fit"
  ]
}
media:icon App\Twig\Components\Media\Icon 70.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 {#6193
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 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 {#6243
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.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 {#6271
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "search"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 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 {#6287
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "flexed-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.04 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 {#6311
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "barbell"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.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 {#6335
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "category"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.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 {#6359
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "fire"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.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 {#6383
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "discipline "
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.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 {#6407
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "stats-chart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.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 {#6431
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "latest"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.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 {#6455
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "random"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.04 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 {#6800
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
70.5 MiB 0.10 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#6755
  -props: [
    "class" => "max-w-fit"
  ]
}
menu:connexion-menu App\Twig\Components\Menu\ConnexionMenu 74.5 MiB 8.61 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\ConnexionMenu {#6885
  -authenticationUtils: Symfony\Component\Security\Http\Authentication\AuthenticationUtils {#6886 …}
  -formFactory: Symfony\Component\Form\FormFactory {#6884 …}
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.05 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 {#7037
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.03 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 {#7072
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +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 {#7102
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.04 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 {#7134
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "google"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.03 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 {#7153
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "apple"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.04 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "h-[80px] w-[300px]"
]
Attributes
[
  "class" => "h-[80px] w-[300px]"
]
Component
App\Twig\Components\Media\Icon {#7263
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.04 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 {#7297
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.03 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 {#7313
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "flexed-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.03 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 {#7337
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "fire"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.03 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 {#7361
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "category"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.03 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 {#7385
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "barbell"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.03 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 {#7409
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "discipline"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.03 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 {#7433
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "stats-chart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.03 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 {#7457
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "latest"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.03 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 {#7481
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "random"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.03 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 {#7505
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.03 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 {#7529
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "more"
  +title: null
  +symbolDefsName: null
}
app:lang-selector App\Twig\Components\App\LangSelector 74.5 MiB 0.38 ms
Input props
[
  "defaultOpenLeft" => true
]
Attributes
[]
Component
App\Twig\Components\App\LangSelector {#7574
  +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.04 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 {#7564
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.03 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "h-16 w-full"
]
Attributes
[
  "class" => "h-16 w-full"
]
Component
App\Twig\Components\Media\Icon {#7205
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
menu:breadcrumb App\Twig\Components\Menu\Breadcrumb 74.5 MiB 0.54 ms
Input props
[
  "builder" => App\BusinessLogic\App\Menu\BreadcrumbBuilder {#4542
    -items: [
      [
        "label" => "menu.home"
        "url" => "/fr/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/fr/exercices"
      ]
      [
        "label" => "Overhead Press"
        "url" => "/fr/exercices/groupe/117-overhead-press"
      ]
      [
        "label" => "Développé épaules kettlebell"
        "url" => null
      ]
    ]
  }
]
Attributes
[]
Component
App\Twig\Components\Menu\Breadcrumb {#7657
  +items: [
    [
      "label" => "menu.home"
      "url" => "/fr/"
    ]
    [
      "label" => "menu.exercises"
      "url" => "/fr/exercices"
    ]
    [
      "label" => "Overhead Press"
      "url" => "/fr/exercices/groupe/117-overhead-press"
    ]
    [
      "label" => "Développé épaules kettlebell"
      "url" => null
    ]
  ]
  +builder: App\BusinessLogic\App\Menu\BreadcrumbBuilder {#4542
    -items: [
      [
        "label" => "menu.home"
        "url" => "/fr/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/fr/exercices"
      ]
      [
        "label" => "Overhead Press"
        "url" => "/fr/exercices/groupe/117-overhead-press"
      ]
      [
        "label" => "Développé épaules kettlebell"
        "url" => null
      ]
    ]
  }
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.04 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 {#7687
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.03 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 {#7709
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.03 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 {#7732
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
ad:banner App\Twig\Components\Ad\AdBanner 76.5 MiB 0.38 ms
Input props
[
  "containerClass" => "my-4"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdBanner {#7775
  +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 76.5 MiB 0.33 ms
Input props
[
  "media" => App\Entity\Media\MediaVideo {#4473
    #uploadedFile: null
    #file: Vich\UploaderBundle\Entity\File {#4475 …}
    #credits: Doctrine\ORM\PersistentCollection {#4477 …}
    -source: null
    -zone: null
    -urlExternal: "https://www.youtube.com/watch?v=pXtk_OGYpIg"
    #id: 1760
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#4524 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: "azeoo"
    #createdAt: DateTimeImmutable @1731450664 {#4511
      date: 2024-11-12 23:31:04.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1731450664 {#4463
      date: 2024-11-12 23:31:04.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    -duration: null
    -format: null
    -startTime: null
    -endTime: null
    -youtubeId: "pXtk_OGYpIg"
  }
  "title" => "Développé avec kettlebell"
  "showCredits" => false
]
Attributes
[]
Component
App\Twig\Components\Media\Video {#7862
  +media: App\Entity\Media\MediaVideo {#4473
    #uploadedFile: null
    #file: Vich\UploaderBundle\Entity\File {#4475 …}
    #credits: Doctrine\ORM\PersistentCollection {#4477 …}
    -source: null
    -zone: null
    -urlExternal: "https://www.youtube.com/watch?v=pXtk_OGYpIg"
    #id: 1760
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#4524 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: "azeoo"
    #createdAt: DateTimeImmutable @1731450664 {#4511
      date: 2024-11-12 23:31:04.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1731450664 {#4463
      date: 2024-11-12 23:31:04.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    -duration: null
    -format: null
    -startTime: null
    -endTime: null
    -youtubeId: "pXtk_OGYpIg"
  }
  +title: "Développé avec kettlebell"
  +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 76.5 MiB 0.04 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 {#7878
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.03 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 {#7911
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 76.5 MiB 1.34 ms
Input props
[
  "class" => "mt-2 md:m-0"
]
Attributes
[
  "class" => "mt-2 md:m-0"
]
Component
App\Twig\Components\App\PageSharer {#7935
  +shareUrl: "http://test.fitmetrics.ch/fr/exercice/6733d728c055e-developpe-avec-kettlebell?alias=7401&open-account-panel-popup=1"
  +title: "Développé épaules kettlebell - Exercice - FitMetrics"
  +description: "Le développé avec kettlebell est un exercice dynamique de poussée au-dessus de la tête qui renforce la stabilité des épaules et le contrôle du haut du corps tout en sollicitant la sangle abdominale. L’utilisation de la kettlebell crée une charge décentrée qui sollicite davantage les muscles stabilisateurs comparé aux haltères ou barres traditionnelles. Cet exercice développe la force fonctionnelle du haut du corps, améliore l’endurance des épaules et favorise un meilleur contrôle unilatéral ainsi qu’une posture équilibrée. Grâce à son centre de gravité spécifique, la kettlebell oblige à stabiliser continuellement la charge pendant le mouvement, ce qui renforce l’alignement articulaire et le contrôle moteur. C’est un mouvement sûr, progressif et efficace pour renforcer la position au-dessus de la tête et améliorer les performances sportives comme les gestes du quotidien nécessitant un port de charge en hauteur. Il est fréquemment intégré aux programmes de renforcement musculaire, de CrossFit et d’entraînement fonctionnel pour construire des épaules solides et résistantes."
  +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 76.5 MiB 0.04 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 {#7965
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.04 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 {#7993
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "reddit"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.03 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 {#8018
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "twitter"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.03 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 {#8041
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.03 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 {#8064
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.03 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 {#8087
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "linkedin"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.03 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 {#8110
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.03 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 {#8133
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "email"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.04 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 {#8164
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
ui:editor-render App\Twig\Components\Ui\Editor\EditorRender 76.5 MiB 0.89 ms
Input props
[
  "data" => [
    "time" => 1751031928
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Instructions"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "ordered"
          "items" => [
            [
              "content" => "Tenez-vous debout, pieds écartés à la largeur des épaules, en tenant une kettlebell dans une main au niveau de l'épaule."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Engagez votre sangle abdominale et vos fessiers pour stabiliser votre torse."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Pressez la kettlebell au-dessus de la tête jusqu'à ce que votre bras soit complètement tendu."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Marquez une pause en haut avec le biceps proche de l'oreille."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Redescendez la kettlebell de manière contrôlée jusqu'à la position de départ."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils techniques"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Gardez votre poignet aligné avec l'avant-bras pour éviter toute tension."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Évitez de cambrer le dos – maintenez la colonne neutre."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Ne haussez pas l'épaule pendant la poussée ; gardez-la basse et stable."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Saisissez fermement la kettlebell pour améliorer le contrôle et l'engagement de l'épaule."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils de respiration"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Inspirez avant de commencer la poussée."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Expirez en pressant la kettlebell au-dessus de la tête."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Inspirez en ramenant la kettlebell à la position de départ."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Editor\EditorRender {#8213
  +title: null
  +data: [
    "time" => 1751031928
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Instructions"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "ordered"
          "items" => [
            [
              "content" => "Tenez-vous debout, pieds écartés à la largeur des épaules, en tenant une kettlebell dans une main au niveau de l'épaule."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Engagez votre sangle abdominale et vos fessiers pour stabiliser votre torse."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Pressez la kettlebell au-dessus de la tête jusqu'à ce que votre bras soit complètement tendu."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Marquez une pause en haut avec le biceps proche de l'oreille."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Redescendez la kettlebell de manière contrôlée jusqu'à la position de départ."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils techniques"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Gardez votre poignet aligné avec l'avant-bras pour éviter toute tension."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Évitez de cambrer le dos – maintenez la colonne neutre."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Ne haussez pas l'épaule pendant la poussée ; gardez-la basse et stable."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Saisissez fermement la kettlebell pour améliorer le contrôle et l'engagement de l'épaule."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils de respiration"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Inspirez avant de commencer la poussée."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Expirez en pressant la kettlebell au-dessus de la tête."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Inspirez en ramenant la kettlebell à la position de départ."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
  +spacing: 4
  +adsInterval: 5
  +withAds: true
  +withMarketingBanner: false
  +marketingBannerPosition: 8
  -host: "http://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.10 ms
Input props
[
  "data" => [
    "time" => 1751031928
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Conflit sous-acromial"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Lésion de la coiffe des rotateurs"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Douleur lombaire"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Hypertension artérielle non contrôlée"
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Editor\EditorRender {#8274
  +title: null
  +data: [
    "time" => 1751031928
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Conflit sous-acromial"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Lésion de la coiffe des rotateurs"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Douleur lombaire"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Hypertension artérielle non contrôlée"
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
  +spacing: 4
  +adsInterval: 5
  +withAds: true
  +withMarketingBanner: false
  +marketingBannerPosition: 8
  -host: "http://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.25 ms
Input props
[
  "containerClass" => "mt-6"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#8261
  +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 0.71 ms
Input props
[
  "faq" => App\Entity\Faq {#5152
    -news: Doctrine\ORM\PersistentCollection {#5135 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5137 …}
    #id: 3042
    #createdAt: DateTimeImmutable @1750885991 {#5147
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1750885991 {#5122
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5185 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8318
  +faq: App\Entity\Faq {#5152
    -news: Doctrine\ORM\PersistentCollection {#5135 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5137 …}
    #id: 3042
    #createdAt: DateTimeImmutable @1750885991 {#5147
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1750885991 {#5122
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5185 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 76.5 MiB 0.26 ms
Input props
[
  "question" => "Quels muscles travaille le développé avec kettlebell ?"
  "answer" => "Le développé avec kettlebell cible principalement les épaules et sollicite également les triceps, la sangle abdominale et le haut de la poitrine pour la stabilisation et le maintien du mouvement."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8346
  +question: "Quels muscles travaille le développé avec kettlebell ?"
  +answer: "Le développé avec kettlebell cible principalement les épaules et sollicite également les triceps, la sangle abdominale et le haut de la poitrine pour la stabilisation et le maintien du mouvement."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.18 ms
Input props
[
  "faq" => App\Entity\Faq {#5183
    -news: Doctrine\ORM\PersistentCollection {#5182 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5180 …}
    #id: 3043
    #createdAt: DateTimeImmutable @1750885991 {#5187
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1750885991 {#5184
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5178 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8377
  +faq: App\Entity\Faq {#5183
    -news: Doctrine\ORM\PersistentCollection {#5182 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5180 …}
    #id: 3043
    #createdAt: DateTimeImmutable @1750885991 {#5187
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1750885991 {#5184
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5178 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 76.5 MiB 0.05 ms
Input props
[
  "question" => "Le développé avec kettlebell est-il bon pour renforcer les épaules ?"
  "answer" => "Oui, le développé avec kettlebell est excellent pour développer la force et la stabilité des épaules grâce à sa charge unilatérale et son mouvement de poussée au-dessus de la tête."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8422
  +question: "Le développé avec kettlebell est-il bon pour renforcer les épaules ?"
  +answer: "Oui, le développé avec kettlebell est excellent pour développer la force et la stabilité des épaules grâce à sa charge unilatérale et son mouvement de poussée au-dessus de la tête."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.16 ms
Input props
[
  "faq" => App\Entity\Faq {#5174
    -news: Doctrine\ORM\PersistentCollection {#5173 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5171 …}
    #id: 3044
    #createdAt: DateTimeImmutable @1750885991 {#5176
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1750885991 {#5175
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5169 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8425
  +faq: App\Entity\Faq {#5174
    -news: Doctrine\ORM\PersistentCollection {#5173 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5171 …}
    #id: 3044
    #createdAt: DateTimeImmutable @1750885991 {#5176
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1750885991 {#5175
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5169 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 76.5 MiB 0.05 ms
Input props
[
  "question" => "Les débutants peuvent-ils faire le développé avec kettlebell ?"
  "answer" => "Les débutants peuvent réaliser le développé avec kettlebell en utilisant des charges légères, en se concentrant sur la technique et la stabilité avant de progresser vers des poids plus lourds."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8469
  +question: "Les débutants peuvent-ils faire le développé avec kettlebell ?"
  +answer: "Les débutants peuvent réaliser le développé avec kettlebell en utilisant des charges légères, en se concentrant sur la technique et la stabilité avant de progresser vers des poids plus lourds."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.16 ms
Input props
[
  "faq" => App\Entity\Faq {#5165
    -news: Doctrine\ORM\PersistentCollection {#5164 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5162 …}
    #id: 3045
    #createdAt: DateTimeImmutable @1750885991 {#5167
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1750885991 {#5166
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5160 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8472
  +faq: App\Entity\Faq {#5165
    -news: Doctrine\ORM\PersistentCollection {#5164 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5162 …}
    #id: 3045
    #createdAt: DateTimeImmutable @1750885991 {#5167
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1750885991 {#5166
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5160 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 76.5 MiB 0.06 ms
Input props
[
  "question" => "Dois-je presser avec un bras ou les deux ?"
  "answer" => "Le développé avec kettlebell se réalise généralement un bras à la fois pour renforcer la force unilatérale et corriger les déséquilibres musculaires."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8516
  +question: "Dois-je presser avec un bras ou les deux ?"
  +answer: "Le développé avec kettlebell se réalise généralement un bras à la fois pour renforcer la force unilatérale et corriger les déséquilibres musculaires."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.15 ms
Input props
[
  "faq" => App\Entity\Faq {#5112
    -news: Doctrine\ORM\PersistentCollection {#5111 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5109 …}
    #id: 3046
    #createdAt: DateTimeImmutable @1750885991 {#5114
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1750885991 {#5113
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5107 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8519
  +faq: App\Entity\Faq {#5112
    -news: Doctrine\ORM\PersistentCollection {#5111 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5109 …}
    #id: 3046
    #createdAt: DateTimeImmutable @1750885991 {#5114
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1750885991 {#5113
      date: 2025-06-25 23:13:11.0 Europe/Zurich (+02:00)
    }
    #createdBy: null
    #updatedBy: null
    #translations: Doctrine\ORM\PersistentCollection {#5107 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 76.5 MiB 0.04 ms
Input props
[
  "question" => "Quelle est la différence entre un développé avec kettlebell et un push press ?"
  "answer" => "Le développé avec kettlebell sollicite uniquement la force des épaules et des bras, tandis que le push press utilise un élan des jambes pour aider à pousser la kettlebell au-dessus de la tête."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8563
  +question: "Quelle est la différence entre un développé avec kettlebell et un push press ?"
  +answer: "Le développé avec kettlebell sollicite uniquement la force des épaules et des bras, tandis que le push press utilise un élan des jambes pour aider à pousser la kettlebell au-dessus de la tête."
}
anatomy:avatar App\Twig\Components\Anatomy\Avatar 84.5 MiB 561.89 ms
Input props
[
  "class" => "relative"
  "primaryMuscles" => [
    28
  ]
  "secondaryMuscles" => [
    6
    10
    16
    17
    30
  ]
  "displayFront" => false
]
Attributes
[
  "class" => "relative"
]
Component
App\Twig\Components\Anatomy\Avatar {#8491
  #container: Symfony\Component\DependencyInjection\Argument\ServiceLocator {#8574 …}
  +primaryMuscles: [
    28
  ]
  +secondaryMuscles: [
    6
    10
    16
    17
    30
  ]
  +type: "url"
  +urlReferenceType: 2
  +displayFront: false
  +selectedMuscles: []
  +displayTagMuscles: false
  +hoverMuscleDefaultText: "-"
  #entityManager: Doctrine\ORM\EntityManager {#550 …}
  #localeSwitcher: Symfony\Component\Translation\LocaleSwitcher {#1600 …}
  #avatarData: App\BusinessLogic\Anatomy\AvatarData {#8572 …}
  -liveResponder: Symfony\UX\LiveComponent\LiveResponder {#8573 …}
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.64 ms
Input props
[
  "name" => "Épaules"
  "url" => "/fr/exercices/muscle/28-epaules"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#9877
  +name: "Épaules"
  +url: "/fr/exercices/muscle/28-epaules"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.11 ms
Input props
[
  "name" => "Abdominaux"
  "url" => "/fr/exercices/muscle/6-abdominaux"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#9929
  +name: "Abdominaux"
  +url: "/fr/exercices/muscle/6-abdominaux"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.09 ms
Input props
[
  "name" => "Triceps"
  "url" => "/fr/exercices/muscle/10-triceps"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#9953
  +name: "Triceps"
  +url: "/fr/exercices/muscle/10-triceps"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Deltoïde latéral"
  "url" => "/fr/exercices/muscle/16-delto%C3%AFde-lat%C3%A9ral"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#9977
  +name: "Deltoïde latéral"
  +url: "/fr/exercices/muscle/16-delto%C3%AFde-lat%C3%A9ral"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Deltoïde antérieur"
  "url" => "/fr/exercices/muscle/17-delto%C3%AFde-ant%C3%A9rieur"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10001
  +name: "Deltoïde antérieur"
  +url: "/fr/exercices/muscle/17-delto%C3%AFde-ant%C3%A9rieur"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Dentelé antérieur"
  "url" => "/fr/exercices/muscle/30-dentele-anterieur"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10025
  +name: "Dentelé antérieur"
  +url: "/fr/exercices/muscle/30-dentele-anterieur"
  +color: "primary"
  +small: false
  +selected: false
}
ad:square:fluid App\Twig\Components\Ad\AdSquareFluid 84.5 MiB 0.11 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#9841
  +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.63 ms
Input props
[
  "difficulty" => "intermediate"
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#10058
  +difficulty: "intermediate"
  +small: false
  +link: true
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.11 ms
Input props
[
  "name" => "Kettlebells"
  "url" => "/fr/exercices/equipement/2-kettlebells"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10103
  +name: "Kettlebells"
  +url: "/fr/exercices/equipement/2-kettlebells"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.09 ms
Input props
[
  "name" => "Tapis de sol"
  "url" => "/fr/exercices/equipement/17-tapis-de-sol"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10130
  +name: "Tapis de sol"
  +url: "/fr/exercices/equipement/17-tapis-de-sol"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.09 ms
Input props
[
  "name" => "Musculation"
  "url" => "/fr/exercices/sport/1-musculation"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10154
  +name: "Musculation"
  +url: "/fr/exercices/sport/1-musculation"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Fitness"
  "url" => "/fr/exercices/sport/5-fitness"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10178
  +name: "Fitness"
  +url: "/fr/exercices/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" => "/fr/exercices/sport/7-crossfit"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10202
  +name: "Crossfit"
  +url: "/fr/exercices/sport/7-crossfit"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.10 ms
Input props
[
  "name" => "Renforcement"
  "url" => "/fr/exercices/categorie/61-renforcement"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10226
  +name: "Renforcement"
  +url: "/fr/exercices/categorie/61-renforcement"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Haut du corps"
  "url" => "/fr/exercices/categorie/67-haut-du-corps"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10250
  +name: "Haut du corps"
  +url: "/fr/exercices/categorie/67-haut-du-corps"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Entraînement fonctionnel"
  "url" => "/fr/exercices/categorie/77-entrainement-fonctionnel"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10274
  +name: "Entraînement fonctionnel"
  +url: "/fr/exercices/categorie/77-entrainement-fonctionnel"
  +color: "gray"
  +small: true
  +selected: false
}
ad:square:fluid App\Twig\Components\Ad\AdSquareFluid 84.5 MiB 0.10 ms
Input props
[
  "containerClass" => "hidden lg:flex items-center justify-center my-6"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#10039
  +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.53 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\App\LoadingSpinner {#8200
  +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 {#10319
  +color: "fill-primary"
  +size: 8
  +centered: true
  +inline: false
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.09 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 {#10368
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
ui:widget-embed App\Twig\Components\Ui\WidgetEmbed 86.5 MiB 1.57 ms
Input props
[
  "class" => "hidden md:block"
  "route" => "http://test.fitmetrics.ch/fr/widgets/exercise/preview-6733d728c055e?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 {#10404
  +route: "http://test.fitmetrics.ch/fr/widgets/exercise/preview-6733d728c055e?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 86.5 MiB 0.12 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 {#10442
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.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 {#10475
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 86.5 MiB 2.19 ms
Input props
[
  "class" => "content-container"
  "title" => "Développé avec kettlebell"
  "description" => "Le développé avec kettlebell est un exercice dynamique de poussée au-dessus de la tête qui renforce la stabilité des épaules et le contrôle du haut du corps tout en sollicitant la sangle abdominale. L’utilisation de la kettlebell crée une charge décentrée qui sollicite davantage les muscles stabilisateurs comparé aux haltères ou barres traditionnelles. Cet exercice développe la force fonctionnelle du haut du corps, améliore l’endurance des épaules et favorise un meilleur contrôle unilatéral ainsi qu’une posture équilibrée. Grâce à son centre de gravité spécifique, la kettlebell oblige à stabiliser continuellement la charge pendant le mouvement, ce qui renforce l’alignement articulaire et le contrôle moteur. C’est un mouvement sûr, progressif et efficace pour renforcer la position au-dessus de la tête et améliorer les performances sportives comme les gestes du quotidien nécessitant un port de charge en hauteur. Il est fréquemment intégré aux programmes de renforcement musculaire, de CrossFit et d’entraînement fonctionnel pour construire des épaules solides et résistantes."
]
Attributes
[
  "class" => "content-container"
]
Component
App\Twig\Components\App\PageSharer {#10515
  +shareUrl: "http://test.fitmetrics.ch/fr/exercice/6733d728c055e-developpe-avec-kettlebell?alias=7401&open-account-panel-popup=1"
  +title: "Développé avec kettlebell"
  +description: "Le développé avec kettlebell est un exercice dynamique de poussée au-dessus de la tête qui renforce la stabilité des épaules et le contrôle du haut du corps tout en sollicitant la sangle abdominale. L’utilisation de la kettlebell crée une charge décentrée qui sollicite davantage les muscles stabilisateurs comparé aux haltères ou barres traditionnelles. Cet exercice développe la force fonctionnelle du haut du corps, améliore l’endurance des épaules et favorise un meilleur contrôle unilatéral ainsi qu’une posture équilibrée. Grâce à son centre de gravité spécifique, la kettlebell oblige à stabiliser continuellement la charge pendant le mouvement, ce qui renforce l’alignement articulaire et le contrôle moteur. C’est un mouvement sûr, progressif et efficace pour renforcer la position au-dessus de la tête et améliorer les performances sportives comme les gestes du quotidien nécessitant un port de charge en hauteur. Il est fréquemment intégré aux programmes de renforcement musculaire, de CrossFit et d’entraînement fonctionnel pour construire des épaules solides et résistantes."
  +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 86.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 {#10523
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.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 {#10545
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "reddit"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.08 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 {#10569
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "twitter"
  +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-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 {#10592
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +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" => "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 {#10615
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 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 {#10638
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "linkedin"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.08 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 {#10661
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +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" => "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 {#10684
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "email"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
ad:wide-skyscraper App\Twig\Components\Ad\AdWideSkyscraper 86.5 MiB 0.81 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.59 ms
Input props
[
  "containerClass" => "content-container my-4"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdHorizontalFluid {#10731
  +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.08 ms
Input props
[
  "defaultOpenLeft" => false
]
Attributes
[]
Component
App\Twig\Components\App\LangSelector {#10786
  +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.25 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#10778
  -props: [
    "class" => "max-w-fit"
  ]
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.08 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 {#10820
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 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 {#10852
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +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 {#10875
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +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 {#10898
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.08 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 {#10921
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "instagram"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.06 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 {#10944
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +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 {#10967
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +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 {#10990
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +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 {#11013
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6119 …}
  +name: "youtube"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}