GET https://test.fitmetrics.ch/fr/exercice/6733d70f76309-ouverture-thoracique-avec-medecine-ball?alias=14383

Components

20 Twig Components
118 Render Count
588 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.64ms
ui:badge
"App\Twig\Components\Ui\Badge"
components/ui/badge.html.twig
17 2.10ms
faq
"App\Twig\Components\Ui\FaqComponent"
components/ui/faq.html.twig
5 1.38ms
raw-faq
"App\Twig\Components\Ui\RawFaqComponent"
components/ui/raw-faq.html.twig
5 0.47ms
utils:theme-switcher
[Anonymous]
components/utils/theme-switcher.html.twig
3 1.46ms
ad:square:fluid
"App\Twig\Components\Ad\AdSquareFluid"
components/ad/square-fluid.html.twig
3 0.50ms
app:lang-selector
"App\Twig\Components\App\LangSelector"
components/app/lang-selector.html.twig
2 0.53ms
app:page-sharer
"App\Twig\Components\App\PageSharer"
components/app/page-sharer.html.twig
2 3.67ms
ui:editor-render
"App\Twig\Components\Ui\Editor\EditorRender"
components/ui/editor/render.html.twig
2 1.05ms
app:loading_spinner
"App\Twig\Components\App\LoadingSpinner"
components/app/loading-spinner.html.twig
2 0.65ms
menu:main
"App\Twig\Components\Menu\MainMenu"
components/menu/main.html.twig
1 39.03ms
menu:connexion-menu
"App\Twig\Components\Menu\ConnexionMenu"
components/menu/user-menu.html.twig
1 8.73ms
menu:breadcrumb
"App\Twig\Components\Menu\Breadcrumb"
components/menu/breadcrumb.html.twig
1 0.57ms
ad:banner
"App\Twig\Components\Ad\AdBanner"
components/ad/banner.html.twig
1 0.39ms
media:video
"App\Twig\Components\Media\Video"
components/media/video.html.twig
1 0.32ms
anatomy:avatar
"App\Twig\Components\Anatomy\Avatar"
components/anatomy/avatar.html.twig
1 533.10ms
training:difficulty-badge
"App\Twig\Components\Training\DifficultyBadge"
components/training/difficulity-badge.html.twig
1 0.74ms
ui:widget-embed
"App\Twig\Components\Ui\WidgetEmbed"
components/ui/widget_embed.html.twig
1 1.61ms
ad:wide-skyscraper
"App\Twig\Components\Ad\AdWideSkyscraper"
components/ad/wide-skyscraper.html.twig
1 0.77ms
ad:horizontal:fluid
"App\Twig\Components\Ad\AdHorizontalFluid"
components/ad/horizontal-fluid.html.twig
1 0.65ms

Render calls

menu:main App\Twig\Components\Menu\MainMenu 74.5 MiB 39.03 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\MainMenu {#4503
  -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.52 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 {#6006
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.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 {#6017
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
68.5 MiB 1.10 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#6068
  -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 {#6083
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.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 {#6133
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#6161
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "search"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.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 {#6177
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#6201
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#6225
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#6249
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#6273
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#6297
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#6321
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#6345
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#6684
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
70.5 MiB 0.11 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#6639
  -props: [
    "class" => "max-w-fit"
  ]
}
menu:connexion-menu App\Twig\Components\Menu\ConnexionMenu 74.5 MiB 8.73 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\ConnexionMenu {#6769
  -authenticationUtils: Symfony\Component\Security\Http\Authentication\AuthenticationUtils {#6770 …}
  -formFactory: Symfony\Component\Form\FormFactory {#6768 …}
}
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 {#6921
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.04 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 {#6956
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.03 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 {#6986
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7018
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7037
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7147
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7181
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7197
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7221
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7245
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7269
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7293
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7317
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7341
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7365
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7389
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7413
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "more"
  +title: null
  +symbolDefsName: null
}
app:lang-selector App\Twig\Components\App\LangSelector 74.5 MiB 0.45 ms
Input props
[
  "defaultOpenLeft" => true
]
Attributes
[]
Component
App\Twig\Components\App\LangSelector {#7458
  +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 {#7448
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7089
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
menu:breadcrumb App\Twig\Components\Menu\Breadcrumb 74.5 MiB 0.57 ms
Input props
[
  "builder" => App\BusinessLogic\App\Menu\BreadcrumbBuilder {#4618
    -items: [
      [
        "label" => "menu.home"
        "url" => "/fr/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/fr/exercices"
      ]
      [
        "label" => "Thoracic Opener"
        "url" => "/fr/exercices/groupe/311-thoracic-opener"
      ]
      [
        "label" => "Etirement de la colonne thoracique sur medecine ball"
        "url" => null
      ]
    ]
  }
]
Attributes
[]
Component
App\Twig\Components\Menu\Breadcrumb {#7541
  +items: [
    [
      "label" => "menu.home"
      "url" => "/fr/"
    ]
    [
      "label" => "menu.exercises"
      "url" => "/fr/exercices"
    ]
    [
      "label" => "Thoracic Opener"
      "url" => "/fr/exercices/groupe/311-thoracic-opener"
    ]
    [
      "label" => "Etirement de la colonne thoracique sur medecine ball"
      "url" => null
    ]
  ]
  +builder: App\BusinessLogic\App\Menu\BreadcrumbBuilder {#4618
    -items: [
      [
        "label" => "menu.home"
        "url" => "/fr/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/fr/exercices"
      ]
      [
        "label" => "Thoracic Opener"
        "url" => "/fr/exercices/groupe/311-thoracic-opener"
      ]
      [
        "label" => "Etirement de la colonne thoracique sur medecine ball"
        "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 {#7571
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7593
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#7616
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
ad:banner App\Twig\Components\Ad\AdBanner 74.5 MiB 0.39 ms
Input props
[
  "containerClass" => "my-4"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdBanner {#7659
  +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.32 ms
Input props
[
  "media" => App\Entity\Media\MediaVideo {#4549
    #uploadedFile: null
    #file: Vich\UploaderBundle\Entity\File {#4551 …}
    #credits: Doctrine\ORM\PersistentCollection {#4553 …}
    -source: null
    -zone: null
    -urlExternal: "https://www.youtube.com/watch?v=mOEpmTo8uuE"
    #id: 851
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#4600 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: "azeoo"
    #createdAt: DateTimeImmutable @1731450639 {#4587
      date: 2024-11-12 23:30:39.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1731450639 {#4539
      date: 2024-11-12 23:30:39.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    -duration: null
    -format: null
    -startTime: null
    -endTime: null
    -youtubeId: "mOEpmTo8uuE"
  }
  "title" => "Ouverture thoracique avec medecine ball"
  "showCredits" => false
]
Attributes
[]
Component
App\Twig\Components\Media\Video {#7746
  +media: App\Entity\Media\MediaVideo {#4549
    #uploadedFile: null
    #file: Vich\UploaderBundle\Entity\File {#4551 …}
    #credits: Doctrine\ORM\PersistentCollection {#4553 …}
    -source: null
    -zone: null
    -urlExternal: "https://www.youtube.com/watch?v=mOEpmTo8uuE"
    #id: 851
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#4600 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: "azeoo"
    #createdAt: DateTimeImmutable @1731450639 {#4587
      date: 2024-11-12 23:30:39.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1731450639 {#4539
      date: 2024-11-12 23:30:39.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    -duration: null
    -format: null
    -startTime: null
    -endTime: null
    -youtubeId: "mOEpmTo8uuE"
  }
  +title: "Ouverture thoracique avec medecine ball"
  +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.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 {#7762
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.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 {#7795
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 74.5 MiB 1.31 ms
Input props
[
  "class" => "mt-2 md:m-0"
]
Attributes
[
  "class" => "mt-2 md:m-0"
]
Component
App\Twig\Components\App\PageSharer {#7819
  +shareUrl: "https://test.fitmetrics.ch/fr/exercice/6733d70f76309-ouverture-thoracique-avec-medecine-ball?alias=14383"
  +title: "Etirement de la colonne thoracique sur medecine ball - Exercice - FitMetrics"
  +description: "L'ouverture thoracique avec medecine ball est un exercice de mobilité conçu pour améliorer l'extension de la colonne thoracique et favoriser une meilleure posture du haut du corps. Grâce à l'utilisation d'une medecine ball comme support, cet étirement permet d'ouvrir la cage thoracique et d'encourager un alignement vertébral plus équilibré. Cet exercice est particulièrement bénéfique pour les personnes qui passent de longues heures assises, devant un bureau ou au volant, et qui développent souvent une posture voûtée vers l'avant. En intégrant régulièrement cet exercice dans une routine d'échauffement ou de récupération, il est possible d'améliorer la mobilité nécessaire pour des mouvements tels que les développés au-dessus de la tête, les arrachés ou encore les squats. De plus, l'ouverture thoracique contribue à optimiser la respiration en facilitant l'expansion de la cage thoracique et en améliorant la capacité pulmonaire. Facile à mettre en place, elle ne nécessite qu'une medecine ball et un espace limité, ce qui la rend adaptée aussi bien à l'entraînement à domicile qu'en salle de sport. En pratiquant cet exercice de manière régulière, vous favoriserez une meilleure flexibilité, une correction posturale durable et une prévention efficace des tensions dorsales. Accessible, pratique et efficace, l'ouverture thoracique avec medecine ball constitue un ajout précieux à tout programme orienté mobilité, récupération ou rééducation."
  +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.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 {#7849
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.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 {#7877
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "reddit"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.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 {#7902
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "twitter"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.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 {#7925
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.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 {#7948
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.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 {#7971
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "linkedin"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.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 {#7994
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.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 {#8017
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "email"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.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 {#8048
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
ui:editor-render App\Twig\Components\Ui\Editor\EditorRender 76.5 MiB 0.92 ms
Input props
[
  "data" => [
    "time" => 1756318131
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Instructions"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "ordered"
          "items" => [
            [
              "content" => "Asseyez-vous au sol, genoux fléchis et pieds à plat."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Placez une medecine ball sous le milieu du dos, juste sous les omoplates."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Tenez un bâton ou étendez les bras au-dessus de la tête avec les coudes légèrement fléchis."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Penchez-vous lentement en arrière sur la balle en ouvrant la poitrine."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Relâchez et maintenez l'étirement pendant la durée souhaitée."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils techniques"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Maintenez une légère activation des abdominaux pour éviter une cambrure excessive du bas du dos."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Progressez dans l'étirement de façon graduelle, sans mouvements brusques."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Gardez la tête et la nuque détendues."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Ajustez la position de la balle pour cibler différents segments thoraciques."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils de respiration"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Inspirez profondément en ouvrant la poitrine."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Expirez lentement pour vous relâcher davantage dans l'étirement."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Maintenez une respiration régulière et contrôlée tout au long de l'exercice."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Editor\EditorRender {#8097
  +title: null
  +data: [
    "time" => 1756318131
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Instructions"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "ordered"
          "items" => [
            [
              "content" => "Asseyez-vous au sol, genoux fléchis et pieds à plat."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Placez une medecine ball sous le milieu du dos, juste sous les omoplates."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Tenez un bâton ou étendez les bras au-dessus de la tête avec les coudes légèrement fléchis."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Penchez-vous lentement en arrière sur la balle en ouvrant la poitrine."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Relâchez et maintenez l'étirement pendant la durée souhaitée."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils techniques"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Maintenez une légère activation des abdominaux pour éviter une cambrure excessive du bas du dos."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Progressez dans l'étirement de façon graduelle, sans mouvements brusques."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Gardez la tête et la nuque détendues."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Ajustez la position de la balle pour cibler différents segments thoraciques."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils de respiration"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Inspirez profondément en ouvrant la poitrine."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Expirez lentement pour vous relâcher davantage dans l'étirement."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Maintenez une respiration régulière et contrôlée tout au long de l'exercice."
              "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.14 ms
Input props
[
  "data" => [
    "time" => 1756318131
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "A éviter en cas de blessures aiguës de la colonne vertébrale."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Non recommandé en cas d'ostéoporose sévère."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Prudence en cas d'instabilité chronique de l'épaule."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Consultez un médecin en cas de hernie discale ou de sténose spinale."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Editor\EditorRender {#8158
  +title: null
  +data: [
    "time" => 1756318131
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "A éviter en cas de blessures aiguës de la colonne vertébrale."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Non recommandé en cas d'ostéoporose sévère."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Prudence en cas d'instabilité chronique de l'épaule."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Consultez un médecin en cas de hernie discale ou de sténose spinale."
              "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.30 ms
Input props
[
  "containerClass" => "mt-6"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#8145
  +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.70 ms
Input props
[
  "faq" => App\Entity\Faq {#5422
    -news: Doctrine\ORM\PersistentCollection {#5405 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5407 …}
    #id: 5582
    #createdAt: DateTimeImmutable @1756298637 {#5417
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756298637 {#5392
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5451 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8202
  +faq: App\Entity\Faq {#5422
    -news: Doctrine\ORM\PersistentCollection {#5405 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5407 …}
    #id: 5582
    #createdAt: DateTimeImmutable @1756298637 {#5417
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756298637 {#5392
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5451 …}
    #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" => "A quoi sert l'ouverture thoracique avec medecine ball ?"
  "answer" => "L'ouverture thoracique avec medecine ball est idéale pour améliorer la mobilité de la colonne thoracique, ouvrir la cage thoracique et corriger une posture voûtée liée à la position assise prolongée."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8230
  +question: "A quoi sert l'ouverture thoracique avec medecine ball ?"
  +answer: "L'ouverture thoracique avec medecine ball est idéale pour améliorer la mobilité de la colonne thoracique, ouvrir la cage thoracique et corriger une posture voûtée liée à la position assise prolongée."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.20 ms
Input props
[
  "faq" => App\Entity\Faq {#5453
    -news: Doctrine\ORM\PersistentCollection {#5460 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5457 …}
    #id: 5583
    #createdAt: DateTimeImmutable @1756298637 {#5448
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756298637 {#5455
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5467 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8261
  +faq: App\Entity\Faq {#5453
    -news: Doctrine\ORM\PersistentCollection {#5460 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5457 …}
    #id: 5583
    #createdAt: DateTimeImmutable @1756298637 {#5448
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756298637 {#5455
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5467 …}
    #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" => "Combien de temps dois-je tenir l'ouverture thoracique avec medecine ball ?"
  "answer" => "Il est conseillé de maintenir l'étirement entre 20 et 60 secondes, en se concentrant sur une respiration lente et contrôlée pour favoriser la détente."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8306
  +question: "Combien de temps dois-je tenir l'ouverture thoracique avec medecine ball ?"
  +answer: "Il est conseillé de maintenir l'étirement entre 20 et 60 secondes, en se concentrant sur une respiration lente et contrôlée pour favoriser la détente."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.17 ms
Input props
[
  "faq" => App\Entity\Faq {#5466
    -news: Doctrine\ORM\PersistentCollection {#5522 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5520 …}
    #id: 5584
    #createdAt: DateTimeImmutable @1756298637 {#5464
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756298637 {#5463
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5708 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8309
  +faq: App\Entity\Faq {#5466
    -news: Doctrine\ORM\PersistentCollection {#5522 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5520 …}
    #id: 5584
    #createdAt: DateTimeImmutable @1756298637 {#5464
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756298637 {#5463
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5708 …}
    #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" => "Est-ce que les débutants peuvent pratiquer l'ouverture thoracique avec medecine ball ?"
  "answer" => "Oui, cet exercice est adapté aux débutants car il nécessite peu de matériel et permet d'ajuster progressivement l'amplitude du mouvement."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8353
  +question: "Est-ce que les débutants peuvent pratiquer l'ouverture thoracique avec medecine ball ?"
  +answer: "Oui, cet exercice est adapté aux débutants car il nécessite peu de matériel et permet d'ajuster progressivement l'amplitude du mouvement."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.16 ms
Input props
[
  "faq" => App\Entity\Faq {#5435
    -news: Doctrine\ORM\PersistentCollection {#5434 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5432 …}
    #id: 5585
    #createdAt: DateTimeImmutable @1756298637 {#5440
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756298637 {#5436
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5430 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8356
  +faq: App\Entity\Faq {#5435
    -news: Doctrine\ORM\PersistentCollection {#5434 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5432 …}
    #id: 5585
    #createdAt: DateTimeImmutable @1756298637 {#5440
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756298637 {#5436
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5430 …}
    #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" => "Quand utiliser l'ouverture thoracique avec medecine ball ?"
  "answer" => "Cet exercice peut être réalisé en échauffement pour préparer aux mouvements au-dessus de la tête ou en récupération afin d'améliorer la posture et soulager les tensions dorsales."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8400
  +question: "Quand utiliser l'ouverture thoracique avec medecine ball ?"
  +answer: "Cet exercice peut être réalisé en échauffement pour préparer aux mouvements au-dessus de la tête ou en récupération afin d'améliorer la posture et soulager les tensions dorsales."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.16 ms
Input props
[
  "faq" => App\Entity\Faq {#5382
    -news: Doctrine\ORM\PersistentCollection {#5381 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5379 …}
    #id: 5586
    #createdAt: DateTimeImmutable @1756298637 {#5384
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756298637 {#5383
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5377 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8403
  +faq: App\Entity\Faq {#5382
    -news: Doctrine\ORM\PersistentCollection {#5381 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5379 …}
    #id: 5586
    #createdAt: DateTimeImmutable @1756298637 {#5384
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756298637 {#5383
      date: 2025-08-27 14:43:57.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5377 …}
    #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" => "Est-ce que l'ouverture thoracique avec medecine ball aide à la mobilité des épaules ?"
  "answer" => "Oui, en favorisant l'extension de la colonne thoracique et l'ouverture de la cage thoracique, cet exercice contribue indirectement à améliorer la mobilité et l'amplitude des épaules."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8447
  +question: "Est-ce que l'ouverture thoracique avec medecine ball aide à la mobilité des épaules ?"
  +answer: "Oui, en favorisant l'extension de la colonne thoracique et l'ouverture de la cage thoracique, cet exercice contribue indirectement à améliorer la mobilité et l'amplitude des épaules."
}
anatomy:avatar App\Twig\Components\Anatomy\Avatar 84.5 MiB 533.10 ms
Input props
[
  "class" => "relative"
  "primaryMuscles" => [
    12
  ]
  "secondaryMuscles" => [
    11
    25
    26
    28
    30
  ]
  "displayFront" => false
]
Attributes
[
  "class" => "relative"
]
Component
App\Twig\Components\Anatomy\Avatar {#8375
  #container: Symfony\Component\DependencyInjection\Argument\ServiceLocator {#8458 …}
  +primaryMuscles: [
    12
  ]
  +secondaryMuscles: [
    11
    25
    26
    28
    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 {#8456 …}
  -liveResponder: Symfony\UX\LiveComponent\LiveResponder {#8457 …}
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.65 ms
Input props
[
  "name" => "Dos"
  "url" => "/fr/exercices/muscle/12-dos"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#9695
  +name: "Dos"
  +url: "/fr/exercices/muscle/12-dos"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.11 ms
Input props
[
  "name" => "Pectoraux"
  "url" => "/fr/exercices/muscle/11-pectoraux"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#9747
  +name: "Pectoraux"
  +url: "/fr/exercices/muscle/11-pectoraux"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.09 ms
Input props
[
  "name" => "Grand dorsal"
  "url" => "/fr/exercices/muscle/25-grand-dorsal"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#9771
  +name: "Grand dorsal"
  +url: "/fr/exercices/muscle/25-grand-dorsal"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.09 ms
Input props
[
  "name" => "Rhomboïde"
  "url" => "/fr/exercices/muscle/26-rhombo%C3%AFde"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#9795
  +name: "Rhomboïde"
  +url: "/fr/exercices/muscle/26-rhombo%C3%AFde"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Épaules"
  "url" => "/fr/exercices/muscle/28-epaules"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#9819
  +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.08 ms
Input props
[
  "name" => "Dentelé antérieur"
  "url" => "/fr/exercices/muscle/30-dentele-anterieur"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#9843
  +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 {#9683
  +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.74 ms
Input props
[
  "difficulty" => "beginner"
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#9876
  +difficulty: "beginner"
  +small: false
  +link: true
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.11 ms
Input props
[
  "name" => "Isolation"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#9907
  +name: "Isolation"
  +url: null
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.10 ms
Input props
[
  "name" => "Ballon de médecine"
  "url" => "/fr/exercices/equipement/81-ballon-de-medecine"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#9947
  +name: "Ballon de médecine"
  +url: "/fr/exercices/equipement/81-ballon-de-medecine"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.09 ms
Input props
[
  "name" => "Bâton pvc"
  "url" => "/fr/exercices/equipement/98-baton-pvc"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#9971
  +name: "Bâton pvc"
  +url: "/fr/exercices/equipement/98-baton-pvc"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.11 ms
Input props
[
  "name" => "Fitness"
  "url" => "/fr/exercices/sport/5-fitness"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#9995
  +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.09 ms
Input props
[
  "name" => "Crossfit"
  "url" => "/fr/exercices/sport/7-crossfit"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10019
  +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.08 ms
Input props
[
  "name" => "Yoga"
  "url" => "/fr/exercices/sport/8-yoga"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10043
  +name: "Yoga"
  +url: "/fr/exercices/sport/8-yoga"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Pilates"
  "url" => "/fr/exercices/sport/9-pilates"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10067
  +name: "Pilates"
  +url: "/fr/exercices/sport/9-pilates"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.09 ms
Input props
[
  "name" => "Étirement"
  "url" => "/fr/exercices/categorie/56-etirement"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10091
  +name: "Étirement"
  +url: "/fr/exercices/categorie/56-etirement"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.09 ms
Input props
[
  "name" => "Mobilité"
  "url" => "/fr/exercices/categorie/59-mobilite"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10115
  +name: "Mobilité"
  +url: "/fr/exercices/categorie/59-mobilite"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Échauffement"
  "url" => "/fr/exercices/categorie/62-echauffement"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10139
  +name: "Échauffement"
  +url: "/fr/exercices/categorie/62-echauffement"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.08 ms
Input props
[
  "name" => "Récupération et relaxation"
  "url" => "/fr/exercices/categorie/75-recuperation-et-relaxation"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10163
  +name: "Récupération et relaxation"
  +url: "/fr/exercices/categorie/75-recuperation-et-relaxation"
  +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 {#9857
  +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.55 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\App\LoadingSpinner {#8084
  +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 {#10208
  +color: "fill-primary"
  +size: 8
  +centered: true
  +inline: false
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.11 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 {#10257
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
ui:widget-embed App\Twig\Components\Ui\WidgetEmbed 84.5 MiB 1.61 ms
Input props
[
  "class" => "hidden md:block"
  "route" => "https://test.fitmetrics.ch/fr/widgets/exercise/preview-6733d70f76309?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 {#10293
  +route: "https://test.fitmetrics.ch/fr/widgets/exercise/preview-6733d70f76309?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.09 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 {#10331
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.10 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 {#10364
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 84.5 MiB 2.37 ms
Input props
[
  "class" => "content-container"
  "title" => "Ouverture thoracique avec medecine ball"
  "description" => "L'ouverture thoracique avec medecine ball est un exercice de mobilité conçu pour améliorer l'extension de la colonne thoracique et favoriser une meilleure posture du haut du corps. Grâce à l'utilisation d'une medecine ball comme support, cet étirement permet d'ouvrir la cage thoracique et d'encourager un alignement vertébral plus équilibré. Cet exercice est particulièrement bénéfique pour les personnes qui passent de longues heures assises, devant un bureau ou au volant, et qui développent souvent une posture voûtée vers l'avant. En intégrant régulièrement cet exercice dans une routine d'échauffement ou de récupération, il est possible d'améliorer la mobilité nécessaire pour des mouvements tels que les développés au-dessus de la tête, les arrachés ou encore les squats. De plus, l'ouverture thoracique contribue à optimiser la respiration en facilitant l'expansion de la cage thoracique et en améliorant la capacité pulmonaire. Facile à mettre en place, elle ne nécessite qu'une medecine ball et un espace limité, ce qui la rend adaptée aussi bien à l'entraînement à domicile qu'en salle de sport. En pratiquant cet exercice de manière régulière, vous favoriserez une meilleure flexibilité, une correction posturale durable et une prévention efficace des tensions dorsales. Accessible, pratique et efficace, l'ouverture thoracique avec medecine ball constitue un ajout précieux à tout programme orienté mobilité, récupération ou rééducation."
]
Attributes
[
  "class" => "content-container"
]
Component
App\Twig\Components\App\PageSharer {#10404
  +shareUrl: "https://test.fitmetrics.ch/fr/exercice/6733d70f76309-ouverture-thoracique-avec-medecine-ball?alias=14383"
  +title: "Ouverture thoracique avec medecine ball"
  +description: "L'ouverture thoracique avec medecine ball est un exercice de mobilité conçu pour améliorer l'extension de la colonne thoracique et favoriser une meilleure posture du haut du corps. Grâce à l'utilisation d'une medecine ball comme support, cet étirement permet d'ouvrir la cage thoracique et d'encourager un alignement vertébral plus équilibré. Cet exercice est particulièrement bénéfique pour les personnes qui passent de longues heures assises, devant un bureau ou au volant, et qui développent souvent une posture voûtée vers l'avant. En intégrant régulièrement cet exercice dans une routine d'échauffement ou de récupération, il est possible d'améliorer la mobilité nécessaire pour des mouvements tels que les développés au-dessus de la tête, les arrachés ou encore les squats. De plus, l'ouverture thoracique contribue à optimiser la respiration en facilitant l'expansion de la cage thoracique et en améliorant la capacité pulmonaire. Facile à mettre en place, elle ne nécessite qu'une medecine ball et un espace limité, ce qui la rend adaptée aussi bien à l'entraînement à domicile qu'en salle de sport. En pratiquant cet exercice de manière régulière, vous favoriserez une meilleure flexibilité, une correction posturale durable et une prévention efficace des tensions dorsales. Accessible, pratique et efficace, l'ouverture thoracique avec medecine ball constitue un ajout précieux à tout programme orienté mobilité, récupération ou rééducation."
  +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 {#10412
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#10434
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "reddit"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.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 {#10458
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#10481
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.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 {#10504
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#10527
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "linkedin"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.07 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 {#10550
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#10573
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "email"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
ad:wide-skyscraper App\Twig\Components\Ad\AdWideSkyscraper 84.5 MiB 0.77 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 84.5 MiB 0.65 ms
Input props
[
  "containerClass" => "content-container my-4"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdHorizontalFluid {#10620
  +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 84.5 MiB 0.08 ms
Input props
[
  "defaultOpenLeft" => false
]
Attributes
[]
Component
App\Twig\Components\App\LangSelector {#10675
  +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]
84.5 MiB 0.24 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#10667
  -props: [
    "class" => "max-w-fit"
  ]
}
media:icon App\Twig\Components\Media\Icon 84.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 {#10709
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#10741
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#10764
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "heart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#10787
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#10810
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#10833
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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 {#10856
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "tiktok"
  +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-[19px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[19px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#10879
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +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" => "youtube"
  "class" => "w-[28px] h-[24px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[24px]"
]
Component
App\Twig\Components\Media\Icon {#10902
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6009 …}
  +name: "youtube"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}