Redirect 301 redirect from GET @training_exercise_detail (f12614)

GET http://test.fitmetrics.ch/fr/exercice/68e3bb68cbf4f-etirement-du-haut-du-dos

Components

20 Twig Components
118 Render Count
547 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.63ms
ui:badge
"App\Twig\Components\Ui\Badge"
components/ui/badge.html.twig
15 0.85ms
faq
"App\Twig\Components\Ui\FaqComponent"
components/ui/faq.html.twig
6 1.52ms
raw-faq
"App\Twig\Components\Ui\RawFaqComponent"
components/ui/raw-faq.html.twig
6 0.50ms
utils:theme-switcher
[Anonymous]
components/utils/theme-switcher.html.twig
3 1.29ms
ad:square:fluid
"App\Twig\Components\Ad\AdSquareFluid"
components/ad/square-fluid.html.twig
3 0.37ms
app:lang-selector
"App\Twig\Components\App\LangSelector"
components/app/lang-selector.html.twig
2 0.50ms
app:page-sharer
"App\Twig\Components\App\PageSharer"
components/app/page-sharer.html.twig
2 2.30ms
ui:editor-render
"App\Twig\Components\Ui\Editor\EditorRender"
components/ui/editor/render.html.twig
2 0.98ms
app:loading_spinner
"App\Twig\Components\App\LoadingSpinner"
components/app/loading-spinner.html.twig
2 0.28ms
menu:main
"App\Twig\Components\Menu\MainMenu"
components/menu/main.html.twig
1 40.16ms
menu:connexion-menu
"App\Twig\Components\Menu\ConnexionMenu"
components/menu/user-menu.html.twig
1 8.93ms
menu:breadcrumb
"App\Twig\Components\Menu\Breadcrumb"
components/menu/breadcrumb.html.twig
1 0.56ms
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.33ms
anatomy:avatar
"App\Twig\Components\Anatomy\Avatar"
components/anatomy/avatar.html.twig
1 496.93ms
training:difficulty-badge
"App\Twig\Components\Training\DifficultyBadge"
components/training/difficulity-badge.html.twig
1 0.28ms
ui:widget-embed
"App\Twig\Components\Ui\WidgetEmbed"
components/ui/widget_embed.html.twig
1 0.79ms
ad:wide-skyscraper
"App\Twig\Components\Ad\AdWideSkyscraper"
components/ad/wide-skyscraper.html.twig
1 0.35ms
ad:horizontal:fluid
"App\Twig\Components\Ad\AdHorizontalFluid"
components/ad/horizontal-fluid.html.twig
1 0.25ms

Render calls

menu:main App\Twig\Components\Menu\MainMenu 74.5 MiB 40.16 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\MainMenu {#6220
  -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.42 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 {#6267
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 68.5 MiB 0.04 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "header--logo-white header--logo hidden dark:block h-[80px] w-[130px] max-w-[130px]"
  "data-front--header-target" => "logoWhite"
]
Attributes
[
  "class" => "header--logo-white header--logo hidden dark:block h-[80px] w-[130px] max-w-[130px]"
  "data-front--header-target" => "logoWhite"
]
Component
App\Twig\Components\Media\Icon {#6278
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
68.5 MiB 1.04 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#6329
  -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 {#6344
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#6394
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#6422
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#6438
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#6462
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#6486
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#6510
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#6534
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#6558
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#6582
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#6606
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "random"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.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 {#6957
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
70.5 MiB 0.13 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#6944
  -props: [
    "class" => "max-w-fit"
  ]
}
menu:connexion-menu App\Twig\Components\Menu\ConnexionMenu 74.5 MiB 8.93 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\ConnexionMenu {#7035
  -authenticationUtils: Symfony\Component\Security\Http\Authentication\AuthenticationUtils {#7036 …}
  -formFactory: Symfony\Component\Form\FormFactory {#7034 …}
}
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 {#7187
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.03 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "hidden dark:block h-[80px] w-[300px]"
]
Attributes
[
  "class" => "hidden dark:block h-[80px] w-[300px]"
]
Component
App\Twig\Components\Media\Icon {#7222
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7252
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7284
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7303
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7413
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7447
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7463
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7487
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7511
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7535
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7559
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7583
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7607
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7631
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7655
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7679
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "more"
  +title: null
  +symbolDefsName: null
}
app:lang-selector App\Twig\Components\App\LangSelector 74.5 MiB 0.46 ms
Input props
[
  "defaultOpenLeft" => true
]
Attributes
[]
Component
App\Twig\Components\App\LangSelector {#7724
  +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 {#7714
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7355
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
menu:breadcrumb App\Twig\Components\Menu\Breadcrumb 74.5 MiB 0.56 ms
Input props
[
  "builder" => App\BusinessLogic\App\Menu\BreadcrumbBuilder {#4559
    -items: [
      [
        "label" => "menu.home"
        "url" => "/fr/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/fr/exercices"
      ]
      [
        "label" => "Upper Back Stretch"
        "url" => "/fr/exercices/groupe/351-upper-back-stretch"
      ]
      [
        "label" => "Étirement du haut du dos"
        "url" => null
      ]
    ]
  }
]
Attributes
[]
Component
App\Twig\Components\Menu\Breadcrumb {#7807
  +items: [
    [
      "label" => "menu.home"
      "url" => "/fr/"
    ]
    [
      "label" => "menu.exercises"
      "url" => "/fr/exercices"
    ]
    [
      "label" => "Upper Back Stretch"
      "url" => "/fr/exercices/groupe/351-upper-back-stretch"
    ]
    [
      "label" => "Étirement du haut du dos"
      "url" => null
    ]
  ]
  +builder: App\BusinessLogic\App\Menu\BreadcrumbBuilder {#4559
    -items: [
      [
        "label" => "menu.home"
        "url" => "/fr/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/fr/exercices"
      ]
      [
        "label" => "Upper Back Stretch"
        "url" => "/fr/exercices/groupe/351-upper-back-stretch"
      ]
      [
        "label" => "Étirement du haut du dos"
        "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 {#7837
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7859
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7882
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#7925
  +includeScript: true
  +labelClass: null
  +containerClass: "my-4"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2934 …}
  #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.33 ms
Input props
[
  "media" => App\Entity\Media\MediaVideo {#4490
    #uploadedFile: null
    #file: Vich\UploaderBundle\Entity\File {#4492 …}
    #credits: Doctrine\ORM\PersistentCollection {#4494 …}
    -source: null
    -zone: null
    -urlExternal: null
    #id: 2938
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#4541 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: null
    #createdAt: DateTimeImmutable @1767023810 {#4528
      date: 2025-12-29 16:56:50.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1767023810 {#4480
      date: 2025-12-29 16:56:50.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#2755 …}
    #updatedBy: App\Entity\User {#2755 …}
    -duration: null
    -format: null
    -startTime: 17
    -endTime: 41
    -youtubeId: "uDm3lzfzYzc"
  }
  "title" => "Étirement du haut du dos"
  "showCredits" => false
]
Attributes
[]
Component
App\Twig\Components\Media\Video {#8012
  +media: App\Entity\Media\MediaVideo {#4490
    #uploadedFile: null
    #file: Vich\UploaderBundle\Entity\File {#4492 …}
    #credits: Doctrine\ORM\PersistentCollection {#4494 …}
    -source: null
    -zone: null
    -urlExternal: null
    #id: 2938
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#4541 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: null
    #createdAt: DateTimeImmutable @1767023810 {#4528
      date: 2025-12-29 16:56:50.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1767023810 {#4480
      date: 2025-12-29 16:56:50.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#2755 …}
    #updatedBy: App\Entity\User {#2755 …}
    -duration: null
    -format: null
    -startTime: 17
    -endTime: 41
    -youtubeId: "uDm3lzfzYzc"
  }
  +title: "Étirement du haut du dos"
  +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 {#8028
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#8061
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 76.5 MiB 1.37 ms
Input props
[
  "class" => "mt-2 md:m-0"
]
Attributes
[
  "class" => "mt-2 md:m-0"
]
Component
App\Twig\Components\App\PageSharer {#8085
  +shareUrl: "http://test.fitmetrics.ch/fr/exercice/68e3bb68cbf4f-etirement-du-haut-du-dos"
  +title: "Étirement du haut du dos - Exercice - FitMetrics"
  +description: "L'étirement du haut du dos est un exercice de mobilité simple qui aide à diminuer les raideurs au niveau du haut de la colonne et de la zone entre les omoplates. Il est particulièrement utile après de longues heures assis, du travail sur écran ou des activités répétitives du haut du corps. En tendant les bras vers l'avant et en arrondissant légèrement le haut du dos, on favorise une sensation d'ouverture et d'espace à l'arrière de la cage thoracique. Cela peut contribuer à retrouver une posture plus confortable et une meilleure aisance dans les gestes du quotidien. Cet étirement est souvent intégré à l'échauffement, au retour au calme ou à une routine de récupération, car il se pratique facilement partout et ne demande aucun matériel. Une pratique régulière peut soutenir une meilleure fluidité des mouvements du haut du corps, notamment pour attraper, porter ou lever les bras au-dessus de la tête. Il convient aussi aux personnes qui ressentent une tension ou une sensation de compression entre les omoplates, fréquente chez celles et ceux qui restent longtemps immobiles. Comme le mouvement est contrôlé et peu intense, il convient à la plupart des niveaux. Vous pouvez l'adapter en position assise ou debout, en modulant l'amplitude de la poussée vers l'avant ou la durée du maintien. Réalisé avec une respiration calme et une posture stable, il procure rapidement une sensation de détente et de confort dans le haut du dos."
  +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 {#8115
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#8143
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "reddit"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.09 ms
Input props
[
  "name" => "twitter"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#8168
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "twitter"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.03 ms
Input props
[
  "name" => "threads"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#8191
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.03 ms
Input props
[
  "name" => "facebook"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#8214
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.03 ms
Input props
[
  "name" => "linkedin"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#8237
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "linkedin"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.03 ms
Input props
[
  "name" => "whatsapp"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#8260
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.03 ms
Input props
[
  "name" => "email"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#8283
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "email"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.04 ms
Input props
[
  "name" => "program"
  "class" => "w-6 h-6 mr-3 !text-white"
]
Attributes
[
  "class" => "w-6 h-6 mr-3 !text-white"
]
Component
App\Twig\Components\Media\Icon {#8314
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
ui:editor-render App\Twig\Components\Ui\Editor\EditorRender 76.5 MiB 0.87 ms
Input props
[
  "data" => [
    "time" => 1767024230
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Instructions"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "ordered"
          "items" => [
            [
              "content" => "Tenez-vous droit ou asseyez-vous bien droit, pieds à plat et colonne allongée."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Entrelacez les doigts devant la poitrine et tournez les paumes vers l'avant."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Tendez les bras vers l'avant à hauteur d'épaules en arrondissant doucement le haut du dos."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Laissez les omoplates s'écarter et sentez l'étirement entre elles."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Rentrez légèrement le menton et gardez les côtes abaissées pour éviter de creuser le bas du dos."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Maintenez la position pendant le temps prévu, puis relâchez et répétez si besoin."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils techniques"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Cherchez à pousser vers l'avant plutôt que vers le bas pour cibler le haut du dos."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Évitez de hausser les épaules, gardez-les loin des oreilles pendant que les omoplates s'écartent."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Gardez un léger gainage pour que l'étirement ne se déplace pas vers le bas du dos."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Allez progressivement en amplitude et arrêtez-vous avant toute douleur vive ou tout fourmillement."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Si vous le sentez surtout dans les épaules, poussez un peu plus loin vers l'avant et arrondissez davantage le haut du dos."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils de respiration"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Inspirez pour vous grandir avant d'entrer dans l'étirement."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Expirez en tendant les bras vers l'avant et en arrondissant doucement le haut du dos."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Respirez lentement par le nez pendant le maintien, en cherchant à relâcher le haut du dos à chaque expiration."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Inspirez pour garder une posture stable, puis expirez pour approfondir légèrement sans forcer."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Editor\EditorRender {#8363
  +title: null
  +data: [
    "time" => 1767024230
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Instructions"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "ordered"
          "items" => [
            [
              "content" => "Tenez-vous droit ou asseyez-vous bien droit, pieds à plat et colonne allongée."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Entrelacez les doigts devant la poitrine et tournez les paumes vers l'avant."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Tendez les bras vers l'avant à hauteur d'épaules en arrondissant doucement le haut du dos."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Laissez les omoplates s'écarter et sentez l'étirement entre elles."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Rentrez légèrement le menton et gardez les côtes abaissées pour éviter de creuser le bas du dos."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Maintenez la position pendant le temps prévu, puis relâchez et répétez si besoin."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils techniques"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Cherchez à pousser vers l'avant plutôt que vers le bas pour cibler le haut du dos."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Évitez de hausser les épaules, gardez-les loin des oreilles pendant que les omoplates s'écartent."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Gardez un léger gainage pour que l'étirement ne se déplace pas vers le bas du dos."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Allez progressivement en amplitude et arrêtez-vous avant toute douleur vive ou tout fourmillement."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Si vous le sentez surtout dans les épaules, poussez un peu plus loin vers l'avant et arrondissez davantage le haut du dos."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils de respiration"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Inspirez pour vous grandir avant d'entrer dans l'étirement."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Expirez en tendant les bras vers l'avant et en arrondissant doucement le haut du dos."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Respirez lentement par le nez pendant le maintien, en cherchant à relâcher le haut du dos à chaque expiration."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Inspirez pour garder une posture stable, puis expirez pour approfondir légèrement sans forcer."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
  +spacing: 4
  +adsInterval: 5
  +withAds: true
  +withMarketingBanner: false
  +marketingBannerPosition: 8
  -host: "http://test.fitmetrics.ch"
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
}
ui:editor-render App\Twig\Components\Ui\Editor\EditorRender 76.5 MiB 0.11 ms
Input props
[
  "data" => [
    "time" => 1767024230
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Blessure aiguë à l'épaule ou chirurgie récente de l'épaule"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Douleur cervicale importante, blessure aiguë du cou ou symptômes neurologiques irradiant dans le bras"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Blessure aiguë du rachis thoracique ou chirurgie récente du haut du dos"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Ostéoporose sévère ou risque de fracture vertébrale avec restriction de la flexion du rachis"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Engourdissement, fourmillements ou faiblesse inexpliqués dans les bras ou les mains"
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Editor\EditorRender {#8424
  +title: null
  +data: [
    "time" => 1767024230
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Blessure aiguë à l'épaule ou chirurgie récente de l'épaule"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Douleur cervicale importante, blessure aiguë du cou ou symptômes neurologiques irradiant dans le bras"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Blessure aiguë du rachis thoracique ou chirurgie récente du haut du dos"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Ostéoporose sévère ou risque de fracture vertébrale avec restriction de la flexion du rachis"
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Engourdissement, fourmillements ou faiblesse inexpliqués dans les bras ou les mains"
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
  +spacing: 4
  +adsInterval: 5
  +withAds: true
  +withMarketingBanner: false
  +marketingBannerPosition: 8
  -host: "http://test.fitmetrics.ch"
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
}
ad:square:fluid App\Twig\Components\Ad\AdSquareFluid 76.5 MiB 0.28 ms
Input props
[
  "containerClass" => "mt-6"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#8411
  +includeScript: true
  +labelClass: null
  +containerClass: "mt-6"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2934 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.72 ms
Input props
[
  "faq" => App\Entity\Faq {#5091
    -news: Doctrine\ORM\PersistentCollection {#5074 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5076 …}
    #id: 6227
    #createdAt: DateTimeImmutable @1767024020 {#5086
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1767024020 {#5061
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#2755 …}
    #updatedBy: App\Entity\User {#2755 …}
    #translations: Doctrine\ORM\PersistentCollection {#5120 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8468
  +faq: App\Entity\Faq {#5091
    -news: Doctrine\ORM\PersistentCollection {#5074 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5076 …}
    #id: 6227
    #createdAt: DateTimeImmutable @1767024020 {#5086
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1767024020 {#5061
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#2755 …}
    #updatedBy: App\Entity\User {#2755 …}
    #translations: Doctrine\ORM\PersistentCollection {#5120 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 76.5 MiB 0.28 ms
Input props
[
  "question" => "Quels sont les bienfaits de l'étirement du haut du dos ?"
  "answer" => "L'étirement du haut du dos aide à réduire les raideurs entre les omoplates, à soulager les tensions liées à la position assise et à améliorer le confort postural. Il peut aussi faciliter les mouvements de port de bras et les gestes au-dessus de la tête en rendant le haut du corps plus mobile."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8496
  +question: "Quels sont les bienfaits de l'étirement du haut du dos ?"
  +answer: "L'étirement du haut du dos aide à réduire les raideurs entre les omoplates, à soulager les tensions liées à la position assise et à améliorer le confort postural. Il peut aussi faciliter les mouvements de port de bras et les gestes au-dessus de la tête en rendant le haut du corps plus mobile."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.19 ms
Input props
[
  "faq" => App\Entity\Faq {#5122
    -news: Doctrine\ORM\PersistentCollection {#5129 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5126 …}
    #id: 6228
    #createdAt: DateTimeImmutable @1767024020 {#5117
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1767024020 {#5124
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#2755 …}
    #updatedBy: App\Entity\User {#2755 …}
    #translations: Doctrine\ORM\PersistentCollection {#5136 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8527
  +faq: App\Entity\Faq {#5122
    -news: Doctrine\ORM\PersistentCollection {#5129 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5126 …}
    #id: 6228
    #createdAt: DateTimeImmutable @1767024020 {#5117
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1767024020 {#5124
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#2755 …}
    #updatedBy: App\Entity\User {#2755 …}
    #translations: Doctrine\ORM\PersistentCollection {#5136 …}
    #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" => "Quelle est l'erreur la plus courante quand je fais l'étirement du haut du dos ?"
  "answer" => "L'erreur la plus fréquente est de hausser les épaules vers les oreilles ou de creuser le bas du dos. Gardez les côtes abaissées, arrondissez surtout le haut du dos et poussez les mains vers l'avant à hauteur d'épaules pour cibler la bonne zone."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8572
  +question: "Quelle est l'erreur la plus courante quand je fais l'étirement du haut du dos ?"
  +answer: "L'erreur la plus fréquente est de hausser les épaules vers les oreilles ou de creuser le bas du dos. Gardez les côtes abaissées, arrondissez surtout le haut du dos et poussez les mains vers l'avant à hauteur d'épaules pour cibler la bonne zone."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.17 ms
Input props
[
  "faq" => App\Entity\Faq {#5135
    -news: Doctrine\ORM\PersistentCollection {#5307 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5192 …}
    #id: 6229
    #createdAt: DateTimeImmutable @1767024020 {#5133
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1767024020 {#5132
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#2755 …}
    #updatedBy: App\Entity\User {#2755 …}
    #translations: Doctrine\ORM\PersistentCollection {#5108 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8575
  +faq: App\Entity\Faq {#5135
    -news: Doctrine\ORM\PersistentCollection {#5307 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5192 …}
    #id: 6229
    #createdAt: DateTimeImmutable @1767024020 {#5133
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1767024020 {#5132
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#2755 …}
    #updatedBy: App\Entity\User {#2755 …}
    #translations: Doctrine\ORM\PersistentCollection {#5108 …}
    #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'étirement du haut du dos est sans danger pour mes épaules et mon cou ?"
  "answer" => "En général oui, si l'étirement est réalisé en douceur et sans douleur. En cas de blessure récente au cou ou à l'épaule, de douleur vive, ou de fourmillements, évitez l'exercice et demandez l'avis d'un professionnel de santé. Réduisez l'amplitude et rentrez légèrement le menton pour limiter la tension cervicale."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8619
  +question: "Est-ce que l'étirement du haut du dos est sans danger pour mes épaules et mon cou ?"
  +answer: "En général oui, si l'étirement est réalisé en douceur et sans douleur. En cas de blessure récente au cou ou à l'épaule, de douleur vive, ou de fourmillements, évitez l'exercice et demandez l'avis d'un professionnel de santé. Réduisez l'amplitude et rentrez légèrement le menton pour limiter la tension cervicale."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.15 ms
Input props
[
  "faq" => App\Entity\Faq {#5104
    -news: Doctrine\ORM\PersistentCollection {#5103 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5101 …}
    #id: 6230
    #createdAt: DateTimeImmutable @1767024020 {#5106
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1767024020 {#5105
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#2755 …}
    #updatedBy: App\Entity\User {#2755 …}
    #translations: Doctrine\ORM\PersistentCollection {#5099 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8622
  +faq: App\Entity\Faq {#5104
    -news: Doctrine\ORM\PersistentCollection {#5103 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5101 …}
    #id: 6230
    #createdAt: DateTimeImmutable @1767024020 {#5106
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1767024020 {#5105
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#2755 …}
    #updatedBy: App\Entity\User {#2755 …}
    #translations: Doctrine\ORM\PersistentCollection {#5099 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 76.5 MiB 0.04 ms
Input props
[
  "question" => "Combien de temps dois-je tenir l'étirement du haut du dos ?"
  "answer" => "Commencez par 20 à 40 secondes par maintien, pour 1 à 3 répétitions. Pour une pause posture pendant la journée, 15 à 20 secondes peuvent déjà apporter un soulagement notable."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8666
  +question: "Combien de temps dois-je tenir l'étirement du haut du dos ?"
  +answer: "Commencez par 20 à 40 secondes par maintien, pour 1 à 3 répétitions. Pour une pause posture pendant la journée, 15 à 20 secondes peuvent déjà apporter un soulagement notable."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.15 ms
Input props
[
  "faq" => App\Entity\Faq {#5051
    -news: Doctrine\ORM\PersistentCollection {#5050 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5048 …}
    #id: 6231
    #createdAt: DateTimeImmutable @1767024020 {#5053
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1767024020 {#5052
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#2755 …}
    #updatedBy: App\Entity\User {#2755 …}
    #translations: Doctrine\ORM\PersistentCollection {#5046 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8669
  +faq: App\Entity\Faq {#5051
    -news: Doctrine\ORM\PersistentCollection {#5050 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5048 …}
    #id: 6231
    #createdAt: DateTimeImmutable @1767024020 {#5053
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1767024020 {#5052
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#2755 …}
    #updatedBy: App\Entity\User {#2755 …}
    #translations: Doctrine\ORM\PersistentCollection {#5046 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 76.5 MiB 0.04 ms
Input props
[
  "question" => "À quelle fréquence puis-je faire l'étirement du haut du dos ?"
  "answer" => "Vous pouvez le faire tous les jours, surtout si vous restez longtemps assis. Beaucoup de personnes en tirent profit avec 2 à 4 courtes pauses dans la journée, ou 1 à 2 séries après l'entraînement en retour au calme."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8713
  +question: "À quelle fréquence puis-je faire l'étirement du haut du dos ?"
  +answer: "Vous pouvez le faire tous les jours, surtout si vous restez longtemps assis. Beaucoup de personnes en tirent profit avec 2 à 4 courtes pauses dans la journée, ou 1 à 2 séries après l'entraînement en retour au calme."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.15 ms
Input props
[
  "faq" => App\Entity\Faq {#5042
    -news: Doctrine\ORM\PersistentCollection {#5041 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5039 …}
    #id: 6232
    #createdAt: DateTimeImmutable @1767024020 {#5044
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1767024020 {#5043
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#2755 …}
    #updatedBy: App\Entity\User {#2755 …}
    #translations: Doctrine\ORM\PersistentCollection {#5037 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8716
  +faq: App\Entity\Faq {#5042
    -news: Doctrine\ORM\PersistentCollection {#5041 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5039 …}
    #id: 6232
    #createdAt: DateTimeImmutable @1767024020 {#5044
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1767024020 {#5043
      date: 2025-12-29 17:00:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#2755 …}
    #updatedBy: App\Entity\User {#2755 …}
    #translations: Doctrine\ORM\PersistentCollection {#5037 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 76.5 MiB 0.04 ms
Input props
[
  "question" => "Quelle alternative si je ne peux pas entrelacer les doigts confortablement ?"
  "answer" => "Si entrelacer les doigts gêne les poignets ou les épaules, vous pouvez presser les paumes l'une contre l'autre et pousser vers l'avant, ou tenir les coudes en auto-enlacement. La posture de l'enfant sur un tapis de yoga est aussi une alternative courante pour étirer le haut du dos avec moins de contrainte sur les poignets."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8760
  +question: "Quelle alternative si je ne peux pas entrelacer les doigts confortablement ?"
  +answer: "Si entrelacer les doigts gêne les poignets ou les épaules, vous pouvez presser les paumes l'une contre l'autre et pousser vers l'avant, ou tenir les coudes en auto-enlacement. La posture de l'enfant sur un tapis de yoga est aussi une alternative courante pour étirer le haut du dos avec moins de contrainte sur les poignets."
}
anatomy:avatar App\Twig\Components\Anatomy\Avatar 84.5 MiB 496.93 ms
Input props
[
  "class" => "relative"
  "primaryMuscles" => [
    12
    13
  ]
  "secondaryMuscles" => [
    18
    25
    26
    30
  ]
  "displayFront" => false
]
Attributes
[
  "class" => "relative"
]
Component
App\Twig\Components\Anatomy\Avatar {#8688
  #container: Symfony\Component\DependencyInjection\Argument\ServiceLocator {#8771 …}
  +primaryMuscles: [
    12
    13
  ]
  +secondaryMuscles: [
    18
    25
    26
    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 {#8769 …}
  -liveResponder: Symfony\UX\LiveComponent\LiveResponder {#8770 …}
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.32 ms
Input props
[
  "name" => "Dos"
  "url" => "/fr/exercices/muscle/12-dos"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10048
  +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.04 ms
Input props
[
  "name" => "Trapèzes"
  "url" => "/fr/exercices/muscle/13-trap%C3%A8zes"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10100
  +name: "Trapèzes"
  +url: "/fr/exercices/muscle/13-trap%C3%A8zes"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.04 ms
Input props
[
  "name" => "Deltoïde postérieur"
  "url" => "/fr/exercices/muscle/18-delto%C3%AFde-post%C3%A9rieur"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10124
  +name: "Deltoïde postérieur"
  +url: "/fr/exercices/muscle/18-delto%C3%AFde-post%C3%A9rieur"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.04 ms
Input props
[
  "name" => "Grand dorsal"
  "url" => "/fr/exercices/muscle/25-grand-dorsal"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10148
  +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.04 ms
Input props
[
  "name" => "Rhomboïde"
  "url" => "/fr/exercices/muscle/26-rhombo%C3%AFde"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10172
  +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.03 ms
Input props
[
  "name" => "Dentelé antérieur"
  "url" => "/fr/exercices/muscle/30-dentele-anterieur"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10196
  +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.05 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#10036
  +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 {#2934 …}
  #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.28 ms
Input props
[
  "difficulty" => "beginner"
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#10229
  +difficulty: "beginner"
  +small: false
  +link: true
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.05 ms
Input props
[
  "name" => "Tapis de sol"
  "url" => "/fr/exercices/equipement/17-tapis-de-sol"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10274
  +name: "Tapis de sol"
  +url: "/fr/exercices/equipement/17-tapis-de-sol"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.04 ms
Input props
[
  "name" => "Sans matériel"
  "url" => "/fr/exercices/equipement/29-sans-mat%C3%A9riel"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10301
  +name: "Sans matériel"
  +url: "/fr/exercices/equipement/29-sans-mat%C3%A9riel"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.04 ms
Input props
[
  "name" => "Callisthénie"
  "url" => "/fr/exercices/sport/3-callisthenie"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10325
  +name: "Callisthénie"
  +url: "/fr/exercices/sport/3-callisthenie"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 84.5 MiB 0.04 ms
Input props
[
  "name" => "Fitness"
  "url" => "/fr/exercices/sport/5-fitness"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10349
  +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.04 ms
Input props
[
  "name" => "Yoga"
  "url" => "/fr/exercices/sport/8-yoga"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10373
  +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.03 ms
Input props
[
  "name" => "Pilates"
  "url" => "/fr/exercices/sport/9-pilates"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10397
  +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.04 ms
Input props
[
  "name" => "Mobilité"
  "url" => "/fr/exercices/categorie/59-mobilite"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10421
  +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.03 ms
Input props
[
  "name" => "Échauffement"
  "url" => "/fr/exercices/categorie/62-echauffement"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10445
  +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.03 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 {#10469
  +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.04 ms
Input props
[
  "containerClass" => "hidden lg:flex items-center justify-center my-6"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#10210
  +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 {#2934 …}
  #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.24 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\App\LoadingSpinner {#8350
  +color: "fill-primary"
  +size: 8
  +centered: true
  +inline: false
}
app:loading_spinner App\Twig\Components\App\LoadingSpinner 84.5 MiB 0.04 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\App\LoadingSpinner {#10526
  +color: "fill-primary"
  +size: 8
  +centered: true
  +inline: false
}
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 {#10563
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
ui:widget-embed App\Twig\Components\Ui\WidgetEmbed 84.5 MiB 0.79 ms
Input props
[
  "class" => "hidden md:block"
  "route" => "http://test.fitmetrics.ch/fr/widgets/exercise/preview-68e3bb68cbf4f?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 {#10599
  +route: "http://test.fitmetrics.ch/fr/widgets/exercise/preview-68e3bb68cbf4f?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.04 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 {#10637
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.04 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 {#10670
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 86.5 MiB 0.93 ms
Input props
[
  "class" => "content-container"
  "title" => "Étirement du haut du dos"
  "description" => "L'étirement du haut du dos est un exercice de mobilité simple qui aide à diminuer les raideurs au niveau du haut de la colonne et de la zone entre les omoplates. Il est particulièrement utile après de longues heures assis, du travail sur écran ou des activités répétitives du haut du corps. En tendant les bras vers l'avant et en arrondissant légèrement le haut du dos, on favorise une sensation d'ouverture et d'espace à l'arrière de la cage thoracique. Cela peut contribuer à retrouver une posture plus confortable et une meilleure aisance dans les gestes du quotidien. Cet étirement est souvent intégré à l'échauffement, au retour au calme ou à une routine de récupération, car il se pratique facilement partout et ne demande aucun matériel. Une pratique régulière peut soutenir une meilleure fluidité des mouvements du haut du corps, notamment pour attraper, porter ou lever les bras au-dessus de la tête. Il convient aussi aux personnes qui ressentent une tension ou une sensation de compression entre les omoplates, fréquente chez celles et ceux qui restent longtemps immobiles. Comme le mouvement est contrôlé et peu intense, il convient à la plupart des niveaux. Vous pouvez l'adapter en position assise ou debout, en modulant l'amplitude de la poussée vers l'avant ou la durée du maintien. Réalisé avec une respiration calme et une posture stable, il procure rapidement une sensation de détente et de confort dans le haut du dos."
]
Attributes
[
  "class" => "content-container"
]
Component
App\Twig\Components\App\PageSharer {#10710
  +shareUrl: "http://test.fitmetrics.ch/fr/exercice/68e3bb68cbf4f-etirement-du-haut-du-dos"
  +title: "Étirement du haut du dos"
  +description: "L'étirement du haut du dos est un exercice de mobilité simple qui aide à diminuer les raideurs au niveau du haut de la colonne et de la zone entre les omoplates. Il est particulièrement utile après de longues heures assis, du travail sur écran ou des activités répétitives du haut du corps. En tendant les bras vers l'avant et en arrondissant légèrement le haut du dos, on favorise une sensation d'ouverture et d'espace à l'arrière de la cage thoracique. Cela peut contribuer à retrouver une posture plus confortable et une meilleure aisance dans les gestes du quotidien. Cet étirement est souvent intégré à l'échauffement, au retour au calme ou à une routine de récupération, car il se pratique facilement partout et ne demande aucun matériel. Une pratique régulière peut soutenir une meilleure fluidité des mouvements du haut du corps, notamment pour attraper, porter ou lever les bras au-dessus de la tête. Il convient aussi aux personnes qui ressentent une tension ou une sensation de compression entre les omoplates, fréquente chez celles et ceux qui restent longtemps immobiles. Comme le mouvement est contrôlé et peu intense, il convient à la plupart des niveaux. Vous pouvez l'adapter en position assise ou debout, en modulant l'amplitude de la poussée vers l'avant ou la durée du maintien. Réalisé avec une respiration calme et une posture stable, il procure rapidement une sensation de détente et de confort dans le haut du dos."
  +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.03 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 {#10718
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.03 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 {#10740
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "reddit"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.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 {#10764
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "twitter"
  +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-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 {#10787
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.04 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 {#10810
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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" => "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 {#10833
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "linkedin"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.04 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 {#10856
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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" => "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 {#10879
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "email"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
ad:wide-skyscraper App\Twig\Components\Ad\AdWideSkyscraper 86.5 MiB 0.35 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 {#2934 …}
  #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.25 ms
Input props
[
  "containerClass" => "content-container my-4"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdHorizontalFluid {#10926
  +includeScript: true
  +labelClass: null
  +containerClass: "content-container my-4"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2934 …}
  #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 {#10981
  +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.13 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#10973
  -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 {#11015
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#11047
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.04 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 {#11070
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#11093
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#11116
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#11139
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#11162
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#11185
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +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 {#11208
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6270 …}
  +name: "youtube"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}