Redirect 301 redirect from GET @training_exercise_detail (b1cb95)

GET https://test.fitmetrics.ch/fr/exercice/6733d70f66b83-auto-massage-des-pectoraux

Components

20 Twig Components
113 Render Count
776 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 2.91ms
ui:badge
"App\Twig\Components\Ui\Badge"
components/ui/badge.html.twig
12 1.74ms
faq
"App\Twig\Components\Ui\FaqComponent"
components/ui/faq.html.twig
5 1.26ms
raw-faq
"App\Twig\Components\Ui\RawFaqComponent"
components/ui/raw-faq.html.twig
5 0.41ms
utils:theme-switcher
[Anonymous]
components/utils/theme-switcher.html.twig
3 1.27ms
ad:square:fluid
"App\Twig\Components\Ad\AdSquareFluid"
components/ad/square-fluid.html.twig
3 0.44ms
app:lang-selector
"App\Twig\Components\App\LangSelector"
components/app/lang-selector.html.twig
2 0.42ms
app:page-sharer
"App\Twig\Components\App\PageSharer"
components/app/page-sharer.html.twig
2 2.98ms
ui:editor-render
"App\Twig\Components\Ui\Editor\EditorRender"
components/ui/editor/render.html.twig
2 0.91ms
app:loading_spinner
"App\Twig\Components\App\LoadingSpinner"
components/app/loading-spinner.html.twig
2 0.75ms
menu:main
"App\Twig\Components\Menu\MainMenu"
components/menu/main.html.twig
1 38.54ms
menu:connexion-menu
"App\Twig\Components\Menu\ConnexionMenu"
components/menu/user-menu.html.twig
1 7.42ms
menu:breadcrumb
"App\Twig\Components\Menu\Breadcrumb"
components/menu/breadcrumb.html.twig
1 0.55ms
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 723.83ms
training:difficulty-badge
"App\Twig\Components\Training\DifficultyBadge"
components/training/difficulity-badge.html.twig
1 0.59ms
ui:widget-embed
"App\Twig\Components\Ui\WidgetEmbed"
components/ui/widget_embed.html.twig
1 1.72ms
ad:wide-skyscraper
"App\Twig\Components\Ad\AdWideSkyscraper"
components/ad/wide-skyscraper.html.twig
1 0.57ms
ad:horizontal:fluid
"App\Twig\Components\Ad\AdHorizontalFluid"
components/ad/horizontal-fluid.html.twig
1 0.49ms

Render calls

menu:main App\Twig\Components\Menu\MainMenu 84.5 MiB 38.54 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\MainMenu {#5950
  -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 84.5 MiB 0.44 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 {#5997
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.04 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "header--logo-white header--logo hidden dark:block h-[80px] w-[130px] max-w-[130px]"
  "data-front--header-target" => "logoWhite"
]
Attributes
[
  "class" => "header--logo-white header--logo hidden dark:block h-[80px] w-[130px] max-w-[130px]"
  "data-front--header-target" => "logoWhite"
]
Component
App\Twig\Components\Media\Icon {#4387
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
84.5 MiB 1.05 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#6033
  -props: [
    "class" => "max-w-fit"
  ]
}
media:icon App\Twig\Components\Media\Icon 84.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 {#6048
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#6098
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#6126
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "search"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#6142
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "flexed-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#6166
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "barbell"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#6190
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "category"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#6214
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "fire"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#6238
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "discipline "
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#6262
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "stats-chart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#6286
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "latest"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#6310
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "random"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.5 MiB 0.05 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 {#6677
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
84.5 MiB 0.12 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#6632
  -props: [
    "class" => "max-w-fit"
  ]
}
menu:connexion-menu App\Twig\Components\Menu\ConnexionMenu 84.5 MiB 7.42 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\ConnexionMenu {#6762
  -authenticationUtils: Symfony\Component\Security\Http\Authentication\AuthenticationUtils {#6763 …}
  -formFactory: Symfony\Component\Form\FormFactory {#6761 …}
}
media:icon App\Twig\Components\Media\Icon 84.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 {#6914
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#6949
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#6979
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7011
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "google"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7030
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "apple"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7140
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7174
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7190
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "flexed-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7214
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "fire"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7238
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "category"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7262
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "barbell"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7286
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "discipline"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7310
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "stats-chart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7334
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "latest"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7358
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "random"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7382
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7406
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "more"
  +title: null
  +symbolDefsName: null
}
app:lang-selector App\Twig\Components\App\LangSelector 84.5 MiB 0.39 ms
Input props
[
  "defaultOpenLeft" => true
]
Attributes
[]
Component
App\Twig\Components\App\LangSelector {#7451
  +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 84.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 {#7441
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7082
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
menu:breadcrumb App\Twig\Components\Menu\Breadcrumb 84.5 MiB 0.55 ms
Input props
[
  "builder" => App\BusinessLogic\App\Menu\BreadcrumbBuilder {#4473
    -items: [
      [
        "label" => "menu.home"
        "url" => "/fr/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/fr/exercices"
      ]
      [
        "label" => "Massage"
        "url" => "/fr/exercices/groupe/184-massage"
      ]
      [
        "label" => "Auto-massage des pectoraux"
        "url" => null
      ]
    ]
  }
]
Attributes
[]
Component
App\Twig\Components\Menu\Breadcrumb {#7534
  +items: [
    [
      "label" => "menu.home"
      "url" => "/fr/"
    ]
    [
      "label" => "menu.exercises"
      "url" => "/fr/exercices"
    ]
    [
      "label" => "Massage"
      "url" => "/fr/exercices/groupe/184-massage"
    ]
    [
      "label" => "Auto-massage des pectoraux"
      "url" => null
    ]
  ]
  +builder: App\BusinessLogic\App\Menu\BreadcrumbBuilder {#4473
    -items: [
      [
        "label" => "menu.home"
        "url" => "/fr/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/fr/exercices"
      ]
      [
        "label" => "Massage"
        "url" => "/fr/exercices/groupe/184-massage"
      ]
      [
        "label" => "Auto-massage des pectoraux"
        "url" => null
      ]
    ]
  }
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7564
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7586
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7609
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
ad:banner App\Twig\Components\Ad\AdBanner 84.5 MiB 0.38 ms
Input props
[
  "containerClass" => "my-4"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdBanner {#7652
  +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 84.5 MiB 0.33 ms
Input props
[
  "media" => App\Entity\Media\MediaVideo {#4404
    #uploadedFile: null
    #file: Vich\UploaderBundle\Entity\File {#4406 …}
    #credits: Doctrine\ORM\PersistentCollection {#4408 …}
    -source: null
    -zone: null
    -urlExternal: "https://www.youtube.com/watch?v=kvEmT9KGJk0"
    #id: 848
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#4455 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: "azeoo"
    #createdAt: DateTimeImmutable @1731450639 {#4442
      date: 2024-11-12 23:30:39.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1731450639 {#4394
      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: "kvEmT9KGJk0"
  }
  "title" => "Auto-massage des pectoraux"
  "showCredits" => false
]
Attributes
[]
Component
App\Twig\Components\Media\Video {#7739
  +media: App\Entity\Media\MediaVideo {#4404
    #uploadedFile: null
    #file: Vich\UploaderBundle\Entity\File {#4406 …}
    #credits: Doctrine\ORM\PersistentCollection {#4408 …}
    -source: null
    -zone: null
    -urlExternal: "https://www.youtube.com/watch?v=kvEmT9KGJk0"
    #id: 848
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#4455 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: "azeoo"
    #createdAt: DateTimeImmutable @1731450639 {#4442
      date: 2024-11-12 23:30:39.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1731450639 {#4394
      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: "kvEmT9KGJk0"
  }
  +title: "Auto-massage des pectoraux"
  +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 84.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 {#7755
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7788
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 84.5 MiB 1.29 ms
Input props
[
  "class" => "mt-2 md:m-0"
]
Attributes
[
  "class" => "mt-2 md:m-0"
]
Component
App\Twig\Components\App\PageSharer {#7812
  +shareUrl: "https://test.fitmetrics.ch/fr/exercice/6733d70f66b83-auto-massage-des-pectoraux"
  +title: "Auto-massage des pectoraux - Exercice - FitMetrics"
  +description: "L’auto-massage des pectoraux est une technique de libération myofasciale simple et efficace qui aide à détendre les tensions accumulées dans la poitrine. Réalisé à l’aide d’une balle de crosse, cet exercice permet d’atteindre les tissus profonds des muscles pectoraux souvent difficiles à cibler uniquement par les étirements. En appliquant une pression contrôlée, il favorise la circulation sanguine, réduit les adhérences musculaires et contribue à soulager les sensations de raideur. Accessible à tous, des sportifs aux personnes passant de longues heures assises, il constitue un outil pratique pour améliorer le confort quotidien et la récupération musculaire. L’auto-massage des pectoraux joue également un rôle important dans l’amélioration de la mobilité et de la posture en libérant la cage thoracique et en facilitant le retour des épaules vers une position plus neutre. Facile à intégrer dans une routine d’échauffement, de récupération ou de mobilité, il ne nécessite qu’un équipement minimal et peut être pratiqué presque partout. En l’utilisant régulièrement, on optimise l’amplitude articulaire, on favorise la récupération après l’effort et on améliore la performance globale dans les exercices sollicitant le haut du corps."
  +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.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 {#7842
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7870
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "reddit"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7895
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "twitter"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7918
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7941
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7964
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "linkedin"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.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 {#7987
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.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 {#8010
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "email"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 84.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 {#8041
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
ui:editor-render App\Twig\Components\Ui\Editor\EditorRender 84.5 MiB 0.82 ms
Input props
[
  "data" => [
    "time" => 1756063652
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Instructions"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "ordered"
          "items" => [
            [
              "content" => "Placez une balle de crosse au sol ou contre un mur."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Allongez-vous face contre terre ou appuyez-vous contre le mur avec la balle positionnée sur le muscle pectoral."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Appliquez une pression contrôlée en transférant votre poids sur la balle."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Effectuez des mouvements lents ou de petits roulements pour cibler les zones tendues."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Maintenez la pression sur les points sensibles pendant 20 à 40 secondes avant de relâcher."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils techniques"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Gardez les mouvements lents et contrôlés."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Ajustez la position du corps pour cibler le haut, le milieu et le bas du thorax."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "N’appliquez pas de pression excessive sur l’articulation de l’épaule ou la clavicule."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils de respiration"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Inspirez profondément avant d’appliquer la pression."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Expirez lentement pour permettre aux muscles de se relâcher sur la balle."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Maintenez une respiration régulière tout au long du massage."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Editor\EditorRender {#8090
  +title: null
  +data: [
    "time" => 1756063652
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Instructions"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "ordered"
          "items" => [
            [
              "content" => "Placez une balle de crosse au sol ou contre un mur."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Allongez-vous face contre terre ou appuyez-vous contre le mur avec la balle positionnée sur le muscle pectoral."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Appliquez une pression contrôlée en transférant votre poids sur la balle."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Effectuez des mouvements lents ou de petits roulements pour cibler les zones tendues."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Maintenez la pression sur les points sensibles pendant 20 à 40 secondes avant de relâcher."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils techniques"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Gardez les mouvements lents et contrôlés."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Ajustez la position du corps pour cibler le haut, le milieu et le bas du thorax."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "N’appliquez pas de pression excessive sur l’articulation de l’épaule ou la clavicule."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils de respiration"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Inspirez profondément avant d’appliquer la pression."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Expirez lentement pour permettre aux muscles de se relâcher sur la balle."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Maintenez une respiration régulière tout au long du massage."
              "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 84.5 MiB 0.10 ms
Input props
[
  "data" => [
    "time" => 1756063652
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Évitez si vous avez une blessure aiguë à l’épaule ou au thorax."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Non recommandé après une chirurgie thoracique récente."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Évitez toute pression directe sur une zone enflammée ou contusionnée."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Editor\EditorRender {#8151
  +title: null
  +data: [
    "time" => 1756063652
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Évitez si vous avez une blessure aiguë à l’épaule ou au thorax."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Non recommandé après une chirurgie thoracique récente."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Évitez toute pression directe sur une zone enflammée ou contusionnée."
              "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 84.5 MiB 0.23 ms
Input props
[
  "containerClass" => "mt-6"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#8138
  +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 84.5 MiB 0.64 ms
Input props
[
  "faq" => App\Entity\Faq {#5166
    -news: Doctrine\ORM\PersistentCollection {#5149 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5151 …}
    #id: 5417
    #createdAt: DateTimeImmutable @1755870503 {#5161
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1755870503 {#5136
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5199 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8195
  +faq: App\Entity\Faq {#5166
    -news: Doctrine\ORM\PersistentCollection {#5149 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5151 …}
    #id: 5417
    #createdAt: DateTimeImmutable @1755870503 {#5161
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1755870503 {#5136
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5199 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 84.5 MiB 0.24 ms
Input props
[
  "question" => "Qu’est-ce que l’auto-massage des pectoraux ?"
  "answer" => "L’auto-massage des pectoraux est un exercice de libération myofasciale avec une balle de crosse qui aide à détendre les muscles de la poitrine, améliorer la mobilité et faciliter la récupération."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8223
  +question: "Qu’est-ce que l’auto-massage des pectoraux ?"
  +answer: "L’auto-massage des pectoraux est un exercice de libération myofasciale avec une balle de crosse qui aide à détendre les muscles de la poitrine, améliorer la mobilité et faciliter la récupération."
}
faq App\Twig\Components\Ui\FaqComponent 84.5 MiB 0.18 ms
Input props
[
  "faq" => App\Entity\Faq {#5197
    -news: Doctrine\ORM\PersistentCollection {#5196 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5194 …}
    #id: 5418
    #createdAt: DateTimeImmutable @1755870503 {#5201
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1755870503 {#5198
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5192 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8254
  +faq: App\Entity\Faq {#5197
    -news: Doctrine\ORM\PersistentCollection {#5196 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5194 …}
    #id: 5418
    #createdAt: DateTimeImmutable @1755870503 {#5201
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1755870503 {#5198
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5192 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 84.5 MiB 0.05 ms
Input props
[
  "question" => "Combien de temps dois-je maintenir l’auto-massage des pectoraux ?"
  "answer" => "Il est recommandé de maintenir la pression sur un point sensible entre 20 et 40 secondes afin de permettre au tissu musculaire de se relâcher avant de passer à une autre zone."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8299
  +question: "Combien de temps dois-je maintenir l’auto-massage des pectoraux ?"
  +answer: "Il est recommandé de maintenir la pression sur un point sensible entre 20 et 40 secondes afin de permettre au tissu musculaire de se relâcher avant de passer à une autre zone."
}
faq App\Twig\Components\Ui\FaqComponent 84.5 MiB 0.16 ms
Input props
[
  "faq" => App\Entity\Faq {#5188
    -news: Doctrine\ORM\PersistentCollection {#5187 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5185 …}
    #id: 5419
    #createdAt: DateTimeImmutable @1755870503 {#5190
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1755870503 {#5189
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5183 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8302
  +faq: App\Entity\Faq {#5188
    -news: Doctrine\ORM\PersistentCollection {#5187 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5185 …}
    #id: 5419
    #createdAt: DateTimeImmutable @1755870503 {#5190
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1755870503 {#5189
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5183 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 84.5 MiB 0.04 ms
Input props
[
  "question" => "Puis-je faire l’auto-massage des pectoraux tous les jours ?"
  "answer" => "Oui, cet auto-massage peut être pratiqué quotidiennement dans le cadre d’une routine de récupération ou de mobilité, en particulier après un entraînement du haut du corps ou une longue période assise."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8346
  +question: "Puis-je faire l’auto-massage des pectoraux tous les jours ?"
  +answer: "Oui, cet auto-massage peut être pratiqué quotidiennement dans le cadre d’une routine de récupération ou de mobilité, en particulier après un entraînement du haut du corps ou une longue période assise."
}
faq App\Twig\Components\Ui\FaqComponent 84.5 MiB 0.15 ms
Input props
[
  "faq" => App\Entity\Faq {#5179
    -news: Doctrine\ORM\PersistentCollection {#5178 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5176 …}
    #id: 5420
    #createdAt: DateTimeImmutable @1755870503 {#5181
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1755870503 {#5180
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5174 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8349
  +faq: App\Entity\Faq {#5179
    -news: Doctrine\ORM\PersistentCollection {#5178 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5176 …}
    #id: 5420
    #createdAt: DateTimeImmutable @1755870503 {#5181
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1755870503 {#5180
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5174 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 84.5 MiB 0.04 ms
Input props
[
  "question" => "Quel matériel est nécessaire pour l’auto-massage des pectoraux ?"
  "answer" => "Une simple balle de crosse suffit pour réaliser efficacement l’auto-massage des pectoraux."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8393
  +question: "Quel matériel est nécessaire pour l’auto-massage des pectoraux ?"
  +answer: "Une simple balle de crosse suffit pour réaliser efficacement l’auto-massage des pectoraux."
}
faq App\Twig\Components\Ui\FaqComponent 84.5 MiB 0.14 ms
Input props
[
  "faq" => App\Entity\Faq {#5126
    -news: Doctrine\ORM\PersistentCollection {#5125 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5123 …}
    #id: 5421
    #createdAt: DateTimeImmutable @1755870503 {#5128
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1755870503 {#5127
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5121 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8396
  +faq: App\Entity\Faq {#5126
    -news: Doctrine\ORM\PersistentCollection {#5125 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5123 …}
    #id: 5421
    #createdAt: DateTimeImmutable @1755870503 {#5128
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1755870503 {#5127
      date: 2025-08-22 15:48:23.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5121 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 84.5 MiB 0.04 ms
Input props
[
  "question" => "Qui doit éviter l’auto-massage des pectoraux ?"
  "answer" => "Les personnes souffrant d’une blessure aiguë à l’épaule, ayant subi une chirurgie thoracique récente ou présentant une inflammation locale doivent éviter cette pratique sans avis médical."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8440
  +question: "Qui doit éviter l’auto-massage des pectoraux ?"
  +answer: "Les personnes souffrant d’une blessure aiguë à l’épaule, ayant subi une chirurgie thoracique récente ou présentant une inflammation locale doivent éviter cette pratique sans avis médical."
}
anatomy:avatar App\Twig\Components\Anatomy\Avatar 86.5 MiB 723.83 ms
Input props
[
  "class" => "relative"
  "primaryMuscles" => [
    11
  ]
  "secondaryMuscles" => [
    32
    38
    42
  ]
  "displayFront" => false
]
Attributes
[
  "class" => "relative"
]
Component
App\Twig\Components\Anatomy\Avatar {#8368
  #container: Symfony\Component\DependencyInjection\Argument\ServiceLocator {#8451 …}
  +primaryMuscles: [
    11
  ]
  +secondaryMuscles: [
    32
    38
    42
  ]
  +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 {#8449 …}
  -liveResponder: Symfony\UX\LiveComponent\LiveResponder {#8450 …}
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.68 ms
Input props
[
  "name" => "Pectoraux"
  "url" => "/fr/exercices/muscle/11-pectoraux"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#9984
  +name: "Pectoraux"
  +url: "/fr/exercices/muscle/11-pectoraux"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.11 ms
Input props
[
  "name" => "Haut des pectoraux"
  "url" => "/fr/exercices/muscle/32-haut-des-pectoraux"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10036
  +name: "Haut des pectoraux"
  +url: "/fr/exercices/muscle/32-haut-des-pectoraux"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.09 ms
Input props
[
  "name" => "Pectoraux internes / moyens"
  "url" => "/fr/exercices/muscle/38-pectoraux-internes-moyens"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10060
  +name: "Pectoraux internes / moyens"
  +url: "/fr/exercices/muscle/38-pectoraux-internes-moyens"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.09 ms
Input props
[
  "name" => "Pectoraux inférieurs"
  "url" => "/fr/exercices/muscle/42-pectoraux-inferieurs"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10084
  +name: "Pectoraux inférieurs"
  +url: "/fr/exercices/muscle/42-pectoraux-inferieurs"
  +color: "primary"
  +small: false
  +selected: false
}
ad:square:fluid App\Twig\Components\Ad\AdSquareFluid 86.5 MiB 0.11 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#9894
  +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 86.5 MiB 0.59 ms
Input props
[
  "difficulty" => "beginner"
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#10117
  +difficulty: "beginner"
  +small: false
  +link: true
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.11 ms
Input props
[
  "name" => "Isolation"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10148
  +name: "Isolation"
  +url: null
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.10 ms
Input props
[
  "name" => "Balle de massage"
  "url" => "/fr/exercices/equipement/86-balle-de-massage"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10188
  +name: "Balle de massage"
  +url: "/fr/exercices/equipement/86-balle-de-massage"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.09 ms
Input props
[
  "name" => "Fitness"
  "url" => "/fr/exercices/sport/5-fitness"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10212
  +name: "Fitness"
  +url: "/fr/exercices/sport/5-fitness"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.09 ms
Input props
[
  "name" => "Yoga"
  "url" => "/fr/exercices/sport/8-yoga"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10236
  +name: "Yoga"
  +url: "/fr/exercices/sport/8-yoga"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.11 ms
Input props
[
  "name" => "Pilates"
  "url" => "/fr/exercices/sport/9-pilates"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10260
  +name: "Pilates"
  +url: "/fr/exercices/sport/9-pilates"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.10 ms
Input props
[
  "name" => "Mobilité"
  "url" => "/fr/exercices/categorie/59-mobilite"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10284
  +name: "Mobilité"
  +url: "/fr/exercices/categorie/59-mobilite"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.09 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 {#10308
  +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 86.5 MiB 0.09 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 {#10332
  +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 86.5 MiB 0.10 ms
Input props
[
  "containerClass" => "hidden lg:flex items-center justify-center my-6"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#10098
  +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 86.5 MiB 0.65 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\App\LoadingSpinner {#8077
  +color: "fill-primary"
  +size: 8
  +centered: true
  +inline: false
}
app:loading_spinner App\Twig\Components\App\LoadingSpinner 86.5 MiB 0.11 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\App\LoadingSpinner {#10387
  +color: "fill-primary"
  +size: 8
  +centered: true
  +inline: false
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.10 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 {#7009
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
ui:widget-embed App\Twig\Components\Ui\WidgetEmbed 86.5 MiB 1.72 ms
Input props
[
  "class" => "hidden md:block"
  "route" => "https://test.fitmetrics.ch/fr/widgets/exercise/preview-6733d70f66b83?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 {#9138
  +route: "https://test.fitmetrics.ch/fr/widgets/exercise/preview-6733d70f66b83?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.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 {#10397
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +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 {#10430
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 86.5 MiB 1.69 ms
Input props
[
  "class" => "content-container"
  "title" => "Auto-massage des pectoraux"
  "description" => "L’auto-massage des pectoraux est une technique de libération myofasciale simple et efficace qui aide à détendre les tensions accumulées dans la poitrine. Réalisé à l’aide d’une balle de crosse, cet exercice permet d’atteindre les tissus profonds des muscles pectoraux souvent difficiles à cibler uniquement par les étirements. En appliquant une pression contrôlée, il favorise la circulation sanguine, réduit les adhérences musculaires et contribue à soulager les sensations de raideur. Accessible à tous, des sportifs aux personnes passant de longues heures assises, il constitue un outil pratique pour améliorer le confort quotidien et la récupération musculaire. L’auto-massage des pectoraux joue également un rôle important dans l’amélioration de la mobilité et de la posture en libérant la cage thoracique et en facilitant le retour des épaules vers une position plus neutre. Facile à intégrer dans une routine d’échauffement, de récupération ou de mobilité, il ne nécessite qu’un équipement minimal et peut être pratiqué presque partout. En l’utilisant régulièrement, on optimise l’amplitude articulaire, on favorise la récupération après l’effort et on améliore la performance globale dans les exercices sollicitant le haut du corps."
]
Attributes
[
  "class" => "content-container"
]
Component
App\Twig\Components\App\PageSharer {#10470
  +shareUrl: "https://test.fitmetrics.ch/fr/exercice/6733d70f66b83-auto-massage-des-pectoraux"
  +title: "Auto-massage des pectoraux"
  +description: "L’auto-massage des pectoraux est une technique de libération myofasciale simple et efficace qui aide à détendre les tensions accumulées dans la poitrine. Réalisé à l’aide d’une balle de crosse, cet exercice permet d’atteindre les tissus profonds des muscles pectoraux souvent difficiles à cibler uniquement par les étirements. En appliquant une pression contrôlée, il favorise la circulation sanguine, réduit les adhérences musculaires et contribue à soulager les sensations de raideur. Accessible à tous, des sportifs aux personnes passant de longues heures assises, il constitue un outil pratique pour améliorer le confort quotidien et la récupération musculaire. L’auto-massage des pectoraux joue également un rôle important dans l’amélioration de la mobilité et de la posture en libérant la cage thoracique et en facilitant le retour des épaules vers une position plus neutre. Facile à intégrer dans une routine d’échauffement, de récupération ou de mobilité, il ne nécessite qu’un équipement minimal et peut être pratiqué presque partout. En l’utilisant régulièrement, on optimise l’amplitude articulaire, on favorise la récupération après l’effort et on améliore la performance globale dans les exercices sollicitant le haut du corps."
  +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.06 ms
Input props
[
  "name" => "check"
  "class" => "w-5 h-5 text-white fill-white"
]
Attributes
[
  "class" => "w-5 h-5 text-white fill-white"
]
Component
App\Twig\Components\Media\Icon {#10478
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.06 ms
Input props
[
  "name" => "reddit"
  "class" => "w-6 h-6 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-6 h-6 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#10500
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "reddit"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.06 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 {#10524
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "twitter"
  +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-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 {#10547
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "threads"
  +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-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 {#10570
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +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" => "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 {#10593
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "linkedin"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.06 ms
Input props
[
  "name" => "whatsapp"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#10616
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.06 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 {#10639
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "email"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
ad:wide-skyscraper App\Twig\Components\Ad\AdWideSkyscraper 86.5 MiB 0.57 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.49 ms
Input props
[
  "containerClass" => "content-container my-4"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdHorizontalFluid {#10686
  +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.04 ms
Input props
[
  "defaultOpenLeft" => false
]
Attributes
[]
Component
App\Twig\Components\App\LangSelector {#10741
  +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.10 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#10733
  -props: [
    "class" => "max-w-fit"
  ]
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.03 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 {#10775
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.03 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 {#10807
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.03 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 {#10830
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "heart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.03 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 {#10853
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.03 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 {#10876
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "instagram"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.03 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 {#10899
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.03 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 {#10922
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "tiktok"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.03 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 {#10945
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.03 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 {#10968
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6000 …}
  +name: "youtube"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}