GET https://test.fitmetrics.ch/fr/exercice/6733d70d9eead-auto-massage-du-mollet

Components

20 Twig Components
115 Render Count
760 ms Render Time
86.5 MiB Memory Usage

Components

Name Metadata Render Count Render Time
media:icon
"App\Twig\Components\Media\Icon"
components/media/icon.html.twig
67 3.45ms
ui:badge
"App\Twig\Components\Ui\Badge"
components/ui/badge.html.twig
14 1.92ms
faq
"App\Twig\Components\Ui\FaqComponent"
components/ui/faq.html.twig
5 1.38ms
raw-faq
"App\Twig\Components\Ui\RawFaqComponent"
components/ui/raw-faq.html.twig
5 0.46ms
utils:theme-switcher
[Anonymous]
components/utils/theme-switcher.html.twig
3 1.32ms
ad:square:fluid
"App\Twig\Components\Ad\AdSquareFluid"
components/ad/square-fluid.html.twig
3 0.48ms
app:lang-selector
"App\Twig\Components\App\LangSelector"
components/app/lang-selector.html.twig
2 0.55ms
app:page-sharer
"App\Twig\Components\App\PageSharer"
components/app/page-sharer.html.twig
2 3.53ms
ui:editor-render
"App\Twig\Components\Ui\Editor\EditorRender"
components/ui/editor/render.html.twig
2 0.94ms
app:loading_spinner
"App\Twig\Components\App\LoadingSpinner"
components/app/loading-spinner.html.twig
2 0.65ms
menu:main
"App\Twig\Components\Menu\MainMenu"
components/menu/main.html.twig
1 37.91ms
menu:connexion-menu
"App\Twig\Components\Menu\ConnexionMenu"
components/menu/user-menu.html.twig
1 8.64ms
menu:breadcrumb
"App\Twig\Components\Menu\Breadcrumb"
components/menu/breadcrumb.html.twig
1 0.57ms
ad:banner
"App\Twig\Components\Ad\AdBanner"
components/ad/banner.html.twig
1 0.39ms
media:video
"App\Twig\Components\Media\Video"
components/media/video.html.twig
1 0.33ms
anatomy:avatar
"App\Twig\Components\Anatomy\Avatar"
components/anatomy/avatar.html.twig
1 706.96ms
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.65ms
ad:wide-skyscraper
"App\Twig\Components\Ad\AdWideSkyscraper"
components/ad/wide-skyscraper.html.twig
1 0.73ms
ad:horizontal:fluid
"App\Twig\Components\Ad\AdHorizontalFluid"
components/ad/horizontal-fluid.html.twig
1 0.60ms

Render calls

menu:main App\Twig\Components\Menu\MainMenu 74.5 MiB 37.91 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\MainMenu {#6163
  -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.43 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 {#6210
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#6221
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
68.5 MiB 0.99 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#6272
  -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 {#6287
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#6337
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "search"
  "class" => "h-7 w-7 mr-4 fill-current"
]
Attributes
[
  "class" => "h-7 w-7 mr-4 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6365
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "search"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "flexed-biceps"
  "class" => "h-7 w-7 mr-4 fill-current"
]
Attributes
[
  "class" => "h-7 w-7 mr-4 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6381
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "flexed-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.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 {#6405
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "barbell"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "category"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6429
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "category"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "fire"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6453
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "fire"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "discipline "
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6477
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "discipline "
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "stats-chart"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6501
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "stats-chart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "latest"
  "class" => "h-7 w-7 mr-4 fill-current"
]
Attributes
[
  "class" => "h-7 w-7 mr-4 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6525
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "latest"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.03 ms
Input props
[
  "name" => "random"
  "class" => "h-8 w-8 mr-3 fill-current"
]
Attributes
[
  "class" => "h-8 w-8 mr-3 fill-current"
]
Component
App\Twig\Components\Media\Icon {#6549
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#6888
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
70.5 MiB 0.10 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#6843
  -props: [
    "class" => "max-w-fit"
  ]
}
menu:connexion-menu App\Twig\Components\Menu\ConnexionMenu 74.5 MiB 8.64 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\ConnexionMenu {#6973
  -authenticationUtils: Symfony\Component\Security\Http\Authentication\AuthenticationUtils {#6974 …}
  -formFactory: Symfony\Component\Form\FormFactory {#6972 …}
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.04 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 {#7125
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7160
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7190
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7222
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "google"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 72.5 MiB 0.04 ms
Input props
[
  "name" => "apple"
  "class" => "h-[24px] w-[20px] fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "h-[24px] w-[20px] fill-white"
]
Component
App\Twig\Components\Media\Icon {#7241
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7351
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7385
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7401
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7425
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "fire"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.04 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 {#7449
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7473
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7497
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7521
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7545
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7569
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7593
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7617
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7662
  +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 {#7652
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7293
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
menu:breadcrumb App\Twig\Components\Menu\Breadcrumb 74.5 MiB 0.57 ms
Input props
[
  "builder" => App\BusinessLogic\App\Menu\BreadcrumbBuilder {#4524
    -items: [
      [
        "label" => "menu.home"
        "url" => "/fr/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/fr/exercices"
      ]
      [
        "label" => "Self-myofascial release"
        "url" => "/fr/exercices/groupe/312-self-myofascial-release"
      ]
      [
        "label" => "Auto-massage du mollet"
        "url" => null
      ]
    ]
  }
]
Attributes
[]
Component
App\Twig\Components\Menu\Breadcrumb {#7745
  +items: [
    [
      "label" => "menu.home"
      "url" => "/fr/"
    ]
    [
      "label" => "menu.exercises"
      "url" => "/fr/exercices"
    ]
    [
      "label" => "Self-myofascial release"
      "url" => "/fr/exercices/groupe/312-self-myofascial-release"
    ]
    [
      "label" => "Auto-massage du mollet"
      "url" => null
    ]
  ]
  +builder: App\BusinessLogic\App\Menu\BreadcrumbBuilder {#4524
    -items: [
      [
        "label" => "menu.home"
        "url" => "/fr/"
      ]
      [
        "label" => "menu.exercises"
        "url" => "/fr/exercices"
      ]
      [
        "label" => "Self-myofascial release"
        "url" => "/fr/exercices/groupe/312-self-myofascial-release"
      ]
      [
        "label" => "Auto-massage du mollet"
        "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 {#7775
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7797
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7820
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7863
  +includeScript: true
  +labelClass: null
  +containerClass: "my-4"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2927 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
media:video App\Twig\Components\Media\Video 74.5 MiB 0.33 ms
Input props
[
  "media" => App\Entity\Media\MediaVideo {#4455
    #uploadedFile: null
    #file: Vich\UploaderBundle\Entity\File {#4457 …}
    #credits: Doctrine\ORM\PersistentCollection {#4459 …}
    -source: null
    -zone: null
    -urlExternal: "https://www.youtube.com/watch?v=JSBtspLfvP8"
    #id: 771
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#4506 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: "azeoo"
    #createdAt: DateTimeImmutable @1731450637 {#4493
      date: 2024-11-12 23:30:37.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1731450637 {#4445
      date: 2024-11-12 23:30:37.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    -duration: null
    -format: null
    -startTime: null
    -endTime: null
    -youtubeId: "JSBtspLfvP8"
  }
  "title" => "Auto-massage du mollet"
  "showCredits" => false
]
Attributes
[]
Component
App\Twig\Components\Media\Video {#7950
  +media: App\Entity\Media\MediaVideo {#4455
    #uploadedFile: null
    #file: Vich\UploaderBundle\Entity\File {#4457 …}
    #credits: Doctrine\ORM\PersistentCollection {#4459 …}
    -source: null
    -zone: null
    -urlExternal: "https://www.youtube.com/watch?v=JSBtspLfvP8"
    #id: 771
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#4506 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: "azeoo"
    #createdAt: DateTimeImmutable @1731450637 {#4493
      date: 2024-11-12 23:30:37.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1731450637 {#4445
      date: 2024-11-12 23:30:37.0 Europe/Zurich (+01:00)
    }
    #createdBy: null
    #updatedBy: null
    -duration: null
    -format: null
    -startTime: null
    -endTime: null
    -youtubeId: "JSBtspLfvP8"
  }
  +title: "Auto-massage du mollet"
  +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 {#7966
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#7999
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 76.5 MiB 1.40 ms
Input props
[
  "class" => "mt-2 md:m-0"
]
Attributes
[
  "class" => "mt-2 md:m-0"
]
Component
App\Twig\Components\App\PageSharer {#8023
  +shareUrl: "https://test.fitmetrics.ch/fr/exercice/6733d70d9eead-auto-massage-du-mollet"
  +title: "Auto-massage du mollet - Exercice - FitMetrics"
  +description: "L'auto-massage du mollet est une technique de libération myofasciale qui permet de soulager les tensions, raideurs et inconforts dans les muscles du mollet. Réalisé à l'aide d'une balle de crosse, il consiste à appliquer une pression ciblée sur les tissus musculaires afin de détendre les points de tension et améliorer la récupération. Cette pratique contribue à favoriser la circulation sanguine, à réduire la sensation de jambes lourdes et à augmenter la souplesse de la partie inférieure de la jambe. Contrairement aux étirements classiques, l'auto-massage du mollet agit en profondeur sur les tissus musculaires et fasciaux, ce qui le rend particulièrement efficace après des efforts intenses ou des périodes prolongées de station debout. Il peut également être utilisé en préparation avant l'entraînement pour activer les muscles et améliorer la mobilité, ou en récupération pour faciliter la détente et le retour au calme. Adaptable à tous les niveaux, cet exercice offre un moyen simple et efficace de préserver la santé musculaire des mollets, de limiter le risque de blessures liées à la surcharge et d'améliorer le confort au quotidien comme dans la pratique sportive."
  +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 {#8053
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#8081
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "reddit"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.03 ms
Input props
[
  "name" => "twitter"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#8106
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "twitter"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.03 ms
Input props
[
  "name" => "threads"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#8129
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 74.5 MiB 0.03 ms
Input props
[
  "name" => "facebook"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#8152
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 76.5 MiB 0.04 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 {#8175
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#8198
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#8221
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#8252
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
ui:editor-render App\Twig\Components\Ui\Editor\EditorRender 76.5 MiB 0.83 ms
Input props
[
  "data" => [
    "time" => 1756667727
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Instructions"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "ordered"
          "items" => [
            [
              "content" => "Asseyez-vous au sol avec une jambe tendue et l'autre fléchie pour le soutien."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Placez une balle de crosse sous le mollet de la jambe tendue."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Transférez légèrement votre poids sur la balle pour appliquer une pression."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Roulez lentement d'avant en arrière le long du mollet."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Faites une pause de 15 à 30 secondes sur les zones tendues ou sensibles."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils techniques"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Contrôlez la pression en ajustant le poids exercé sur la balle."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Déplacez-vous lentement pour permettre aux muscles de se relâcher."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Gardez le tronc engagé pour maintenir une bonne posture."
              "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 en roulant ou en maintenant la pression sur une zone sensible."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Respirez régulièrement pour favoriser la détente musculaire."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Editor\EditorRender {#8301
  +title: null
  +data: [
    "time" => 1756667727
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Instructions"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "ordered"
          "items" => [
            [
              "content" => "Asseyez-vous au sol avec une jambe tendue et l'autre fléchie pour le soutien."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Placez une balle de crosse sous le mollet de la jambe tendue."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Transférez légèrement votre poids sur la balle pour appliquer une pression."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Roulez lentement d'avant en arrière le long du mollet."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Faites une pause de 15 à 30 secondes sur les zones tendues ou sensibles."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
      [
        "type" => "header"
        "data" => [
          "level" => 2
          "text" => "Conseils techniques"
        ]
      ]
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Contrôlez la pression en ajustant le poids exercé sur la balle."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Déplacez-vous lentement pour permettre aux muscles de se relâcher."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Gardez le tronc engagé pour maintenir une bonne posture."
              "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 en roulant ou en maintenant la pression sur une zone sensible."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Respirez régulièrement pour favoriser la détente musculaire."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
  +spacing: 4
  +adsInterval: 5
  +withAds: true
  +withMarketingBanner: false
  +marketingBannerPosition: 8
  -host: "https://test.fitmetrics.ch"
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
}
ui:editor-render App\Twig\Components\Ui\Editor\EditorRender 76.5 MiB 0.11 ms
Input props
[
  "data" => [
    "time" => 1756667727
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Éviter en cas de déchirure ou élongation récente du mollet."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Non recommandé en cas d'antécédent de thrombose veineuse profonde."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Consulter un médecin en cas de troubles circulatoires ou de lésions nerveuses."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Editor\EditorRender {#8362
  +title: null
  +data: [
    "time" => 1756667727
    "version" => "2.31.0-rc.7"
    "blocks" => [
      [
        "type" => "list"
        "data" => [
          "style" => "unordered"
          "items" => [
            [
              "content" => "Éviter en cas de déchirure ou élongation récente du mollet."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Non recommandé en cas d'antécédent de thrombose veineuse profonde."
              "items" => []
              "meta" => []
            ]
            [
              "content" => "Consulter un médecin en cas de troubles circulatoires ou de lésions nerveuses."
              "items" => []
              "meta" => []
            ]
          ]
          "meta" => []
        ]
      ]
    ]
  ]
  +spacing: 4
  +adsInterval: 5
  +withAds: true
  +withMarketingBanner: false
  +marketingBannerPosition: 8
  -host: "https://test.fitmetrics.ch"
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#865 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
}
ad:square:fluid App\Twig\Components\Ad\AdSquareFluid 76.5 MiB 0.26 ms
Input props
[
  "containerClass" => "mt-6"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdSquareFluid {#8349
  +includeScript: true
  +labelClass: null
  +containerClass: "mt-6"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2927 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.73 ms
Input props
[
  "faq" => App\Entity\Faq {#5054
    -news: Doctrine\ORM\PersistentCollection {#5037 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5039 …}
    #id: 5671
    #createdAt: DateTimeImmutable @1756419033 {#5049
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756419033 {#5024
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5087 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8406
  +faq: App\Entity\Faq {#5054
    -news: Doctrine\ORM\PersistentCollection {#5037 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5039 …}
    #id: 5671
    #createdAt: DateTimeImmutable @1756419033 {#5049
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756419033 {#5024
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5087 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 76.5 MiB 0.27 ms
Input props
[
  "question" => "Quels sont les bienfaits de l'auto-massage du mollet ?"
  "answer" => "L'auto-massage du mollet aide à réduire les tensions musculaires, améliore la circulation, diminue les douleurs et favorise la mobilité de la cheville, ce qui le rend utile pour la récupération et la performance."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8434
  +question: "Quels sont les bienfaits de l'auto-massage du mollet ?"
  +answer: "L'auto-massage du mollet aide à réduire les tensions musculaires, améliore la circulation, diminue les douleurs et favorise la mobilité de la cheville, ce qui le rend utile pour la récupération et la performance."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.18 ms
Input props
[
  "faq" => App\Entity\Faq {#5085
    -news: Doctrine\ORM\PersistentCollection {#5084 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5082 …}
    #id: 5672
    #createdAt: DateTimeImmutable @1756419033 {#5089
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756419033 {#5086
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5080 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8465
  +faq: App\Entity\Faq {#5085
    -news: Doctrine\ORM\PersistentCollection {#5084 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5082 …}
    #id: 5672
    #createdAt: DateTimeImmutable @1756419033 {#5089
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756419033 {#5086
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5080 …}
    #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" => "Quelle est l'erreur la plus courante lors de l'auto-massage du mollet ?"
  "answer" => "L'erreur la plus fréquente est de rouler trop rapidement sans marquer d'arrêt sur les zones sensibles, ce qui réduit l'efficacité. Il est essentiel de bouger lentement et d'appliquer une pression contrôlée."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8510
  +question: "Quelle est l'erreur la plus courante lors de l'auto-massage du mollet ?"
  +answer: "L'erreur la plus fréquente est de rouler trop rapidement sans marquer d'arrêt sur les zones sensibles, ce qui réduit l'efficacité. Il est essentiel de bouger lentement et d'appliquer une pression contrôlée."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.17 ms
Input props
[
  "faq" => App\Entity\Faq {#5076
    -news: Doctrine\ORM\PersistentCollection {#5075 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5073 …}
    #id: 5673
    #createdAt: DateTimeImmutable @1756419033 {#5078
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756419033 {#5077
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5071 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8513
  +faq: App\Entity\Faq {#5076
    -news: Doctrine\ORM\PersistentCollection {#5075 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5073 …}
    #id: 5673
    #createdAt: DateTimeImmutable @1756419033 {#5078
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756419033 {#5077
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5071 …}
    #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'auto-massage du mollet est sûr pour tout le monde ?"
  "answer" => "L'auto-massage du mollet est généralement sûr, mais doit être évité en cas de blessure récente, de problème circulatoire ou de thrombose veineuse profonde sans avis médical."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8557
  +question: "Est-ce que l'auto-massage du mollet est sûr pour tout le monde ?"
  +answer: "L'auto-massage du mollet est généralement sûr, mais doit être évité en cas de blessure récente, de problème circulatoire ou de thrombose veineuse profonde sans avis médical."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.16 ms
Input props
[
  "faq" => App\Entity\Faq {#5067
    -news: Doctrine\ORM\PersistentCollection {#5066 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5064 …}
    #id: 5674
    #createdAt: DateTimeImmutable @1756419033 {#5069
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756419033 {#5068
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5062 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8560
  +faq: App\Entity\Faq {#5067
    -news: Doctrine\ORM\PersistentCollection {#5066 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5064 …}
    #id: 5674
    #createdAt: DateTimeImmutable @1756419033 {#5069
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756419033 {#5068
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5062 …}
    #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" => "Combien de temps dois-je maintenir la pression lors de l'auto-massage du mollet ?"
  "answer" => "Maintenir la pression pendant 15 à 30 secondes sur les zones sensibles est recommandé pour relâcher les tensions et améliorer la mobilité."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8604
  +question: "Combien de temps dois-je maintenir la pression lors de l'auto-massage du mollet ?"
  +answer: "Maintenir la pression pendant 15 à 30 secondes sur les zones sensibles est recommandé pour relâcher les tensions et améliorer la mobilité."
}
faq App\Twig\Components\Ui\FaqComponent 76.5 MiB 0.15 ms
Input props
[
  "faq" => App\Entity\Faq {#5014
    -news: Doctrine\ORM\PersistentCollection {#5013 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5011 …}
    #id: 5675
    #createdAt: DateTimeImmutable @1756419033 {#5016
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756419033 {#5015
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5009 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
]
Attributes
[]
Component
App\Twig\Components\Ui\FaqComponent {#8607
  +faq: App\Entity\Faq {#5014
    -news: Doctrine\ORM\PersistentCollection {#5013 …}
    -exercises: Doctrine\ORM\PersistentCollection {#5011 …}
    #id: 5675
    #createdAt: DateTimeImmutable @1756419033 {#5016
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1756419033 {#5015
      date: 2025-08-29 00:10:33.0 Europe/Zurich (+02:00)
    }
    #createdBy: App\Entity\User {#3695 …}
    #updatedBy: App\Entity\User {#3695 …}
    #translations: Doctrine\ORM\PersistentCollection {#5009 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
  }
}
raw-faq App\Twig\Components\Ui\RawFaqComponent 76.5 MiB 0.04 ms
Input props
[
  "question" => "Quelle est la différence entre l'auto-massage du mollet et le massage avec rouleau de mousse ?"
  "answer" => "L'auto-massage avec une balle de crosse permet une pression plus précise et plus profonde, tandis que le rouleau de mousse offre un massage plus large et moins intense, adapté aux débutants."
]
Attributes
[]
Component
App\Twig\Components\Ui\RawFaqComponent {#8651
  +question: "Quelle est la différence entre l'auto-massage du mollet et le massage avec rouleau de mousse ?"
  +answer: "L'auto-massage avec une balle de crosse permet une pression plus précise et plus profonde, tandis que le rouleau de mousse offre un massage plus large et moins intense, adapté aux débutants."
}
anatomy:avatar App\Twig\Components\Anatomy\Avatar 86.5 MiB 706.96 ms
Input props
[
  "class" => "relative"
  "primaryMuscles" => [
    8
  ]
  "secondaryMuscles" => [
    36
    41
  ]
  "displayFront" => false
]
Attributes
[
  "class" => "relative"
]
Component
App\Twig\Components\Anatomy\Avatar {#8579
  #container: Symfony\Component\DependencyInjection\Argument\ServiceLocator {#8662 …}
  +primaryMuscles: [
    8
  ]
  +secondaryMuscles: [
    36
    41
  ]
  +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 {#8660 …}
  -liveResponder: Symfony\UX\LiveComponent\LiveResponder {#8661 …}
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.69 ms
Input props
[
  "name" => "Mollets"
  "url" => "/fr/exercices/muscle/8-mollets"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10159
  +name: "Mollets"
  +url: "/fr/exercices/muscle/8-mollets"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.10 ms
Input props
[
  "name" => "Tibial antérieur"
  "url" => "/fr/exercices/muscle/36-tibial-anterieur"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10211
  +name: "Tibial antérieur"
  +url: "/fr/exercices/muscle/36-tibial-anterieur"
  +color: "primary"
  +small: false
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.10 ms
Input props
[
  "name" => "Tibial postérieur"
  "url" => "/fr/exercices/muscle/41-tibial-posterieur"
  "color" => "primary"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10235
  +name: "Tibial postérieur"
  +url: "/fr/exercices/muscle/41-tibial-posterieur"
  +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 {#10069
  +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 {#10268
  +difficulty: "beginner"
  +small: false
  +link: true
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.10 ms
Input props
[
  "name" => "Isolation"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10299
  +name: "Isolation"
  +url: null
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.11 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 {#10339
  +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 86.5 MiB 0.11 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 {#10363
  +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.10 ms
Input props
[
  "name" => "Fitness"
  "url" => "/fr/exercices/sport/5-fitness"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10387
  +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" => "Crossfit"
  "url" => "/fr/exercices/sport/7-crossfit"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10411
  +name: "Crossfit"
  +url: "/fr/exercices/sport/7-crossfit"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.08 ms
Input props
[
  "name" => "Yoga"
  "url" => "/fr/exercices/sport/8-yoga"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10435
  +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.08 ms
Input props
[
  "name" => "Pilates"
  "url" => "/fr/exercices/sport/9-pilates"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10459
  +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 {#10483
  +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" => "Échauffement"
  "url" => "/fr/exercices/categorie/62-echauffement"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10507
  +name: "Échauffement"
  +url: "/fr/exercices/categorie/62-echauffement"
  +color: "gray"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 86.5 MiB 0.09 ms
Input props
[
  "name" => "Bas du corps"
  "url" => "/fr/exercices/categorie/68-bas-du-corps"
  "small" => true
  "color" => "gray"
]
Attributes
[]
Component
App\Twig\Components\Ui\Badge {#10531
  +name: "Bas du corps"
  +url: "/fr/exercices/categorie/68-bas-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 {#10555
  +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 {#10249
  +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.55 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\App\LoadingSpinner {#8288
  +color: "fill-primary"
  +size: 8
  +centered: true
  +inline: false
}
app:loading_spinner App\Twig\Components\App\LoadingSpinner 86.5 MiB 0.10 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\App\LoadingSpinner {#10610
  +color: "fill-primary"
  +size: 8
  +centered: true
  +inline: false
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.09 ms
Input props
[
  "name" => "program"
  "class" => "w-6 h-6 mr-3 !text-white"
]
Attributes
[
  "class" => "w-6 h-6 mr-3 !text-white"
]
Component
App\Twig\Components\Media\Icon {#10648
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "program"
  +title: null
  +symbolDefsName: null
}
ui:widget-embed App\Twig\Components\Ui\WidgetEmbed 86.5 MiB 1.65 ms
Input props
[
  "class" => "hidden md:block"
  "route" => "https://test.fitmetrics.ch/fr/widgets/exercise/preview-6733d70d9eead?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 {#10684
  +route: "https://test.fitmetrics.ch/fr/widgets/exercise/preview-6733d70d9eead?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 {#10722
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +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 {#10755
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 86.5 MiB 2.13 ms
Input props
[
  "class" => "content-container"
  "title" => "Auto-massage du mollet"
  "description" => "L'auto-massage du mollet est une technique de libération myofasciale qui permet de soulager les tensions, raideurs et inconforts dans les muscles du mollet. Réalisé à l'aide d'une balle de crosse, il consiste à appliquer une pression ciblée sur les tissus musculaires afin de détendre les points de tension et améliorer la récupération. Cette pratique contribue à favoriser la circulation sanguine, à réduire la sensation de jambes lourdes et à augmenter la souplesse de la partie inférieure de la jambe. Contrairement aux étirements classiques, l'auto-massage du mollet agit en profondeur sur les tissus musculaires et fasciaux, ce qui le rend particulièrement efficace après des efforts intenses ou des périodes prolongées de station debout. Il peut également être utilisé en préparation avant l'entraînement pour activer les muscles et améliorer la mobilité, ou en récupération pour faciliter la détente et le retour au calme. Adaptable à tous les niveaux, cet exercice offre un moyen simple et efficace de préserver la santé musculaire des mollets, de limiter le risque de blessures liées à la surcharge et d'améliorer le confort au quotidien comme dans la pratique sportive."
]
Attributes
[
  "class" => "content-container"
]
Component
App\Twig\Components\App\PageSharer {#10795
  +shareUrl: "https://test.fitmetrics.ch/fr/exercice/6733d70d9eead-auto-massage-du-mollet"
  +title: "Auto-massage du mollet"
  +description: "L'auto-massage du mollet est une technique de libération myofasciale qui permet de soulager les tensions, raideurs et inconforts dans les muscles du mollet. Réalisé à l'aide d'une balle de crosse, il consiste à appliquer une pression ciblée sur les tissus musculaires afin de détendre les points de tension et améliorer la récupération. Cette pratique contribue à favoriser la circulation sanguine, à réduire la sensation de jambes lourdes et à augmenter la souplesse de la partie inférieure de la jambe. Contrairement aux étirements classiques, l'auto-massage du mollet agit en profondeur sur les tissus musculaires et fasciaux, ce qui le rend particulièrement efficace après des efforts intenses ou des périodes prolongées de station debout. Il peut également être utilisé en préparation avant l'entraînement pour activer les muscles et améliorer la mobilité, ou en récupération pour faciliter la détente et le retour au calme. Adaptable à tous les niveaux, cet exercice offre un moyen simple et efficace de préserver la santé musculaire des mollets, de limiter le risque de blessures liées à la surcharge et d'améliorer le confort au quotidien comme dans la pratique sportive."
  +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.08 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 {#10803
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.09 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 {#10825
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "reddit"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 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 {#10849
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "twitter"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 ms
Input props
[
  "name" => "threads"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#10872
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 ms
Input props
[
  "name" => "facebook"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#10895
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 ms
Input props
[
  "name" => "linkedin"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#10918
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "linkedin"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 ms
Input props
[
  "name" => "whatsapp"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#10941
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 ms
Input props
[
  "name" => "email"
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-5 h-5 fill-slate-600 transition-colors group-hover:fill-white dark:fill-white dark:group-hover:fill-white"
]
Component
App\Twig\Components\Media\Icon {#10964
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "email"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
ad:wide-skyscraper App\Twig\Components\Ad\AdWideSkyscraper 86.5 MiB 0.73 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.60 ms
Input props
[
  "containerClass" => "content-container my-4"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdHorizontalFluid {#11011
  +includeScript: true
  +labelClass: null
  +containerClass: "content-container my-4"
  +adClass: null
  +showBgColor: true
  #kernel: App\Kernel {#14 …}
  #accountManager: App\BusinessLogic\User\Manager\AccountManager {#2927 …}
  #parameterBag: Symfony\Component\DependencyInjection\ParameterBag\ContainerBag {#686 …}
  #seoPage: App\BusinessLogic\App\Seo\SeoPage {#210 …}
}
app:lang-selector App\Twig\Components\App\LangSelector 86.5 MiB 0.09 ms
Input props
[
  "defaultOpenLeft" => false
]
Attributes
[]
Component
App\Twig\Components\App\LangSelector {#11066
  +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.23 ms
Input props
[
  "class" => "max-w-fit"
]
Attributes
[
  "class" => "max-w-fit"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#11058
  -props: [
    "class" => "max-w-fit"
  ]
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.08 ms
Input props
[
  "name" => "fitmetrics-biceps"
  "class" => "h-12 sm:h-16 max-w-[116px] mr-3 dark:hidden"
]
Attributes
[
  "class" => "h-12 sm:h-16 max-w-[116px] mr-3 dark:hidden"
]
Component
App\Twig\Components\Media\Icon {#11100
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.08 ms
Input props
[
  "name" => "fitmetrics-white-biceps"
  "class" => "h-12 sm:h-16 max-w-[116px] mr-3 hidden dark:block"
]
Attributes
[
  "class" => "h-12 sm:h-16 max-w-[116px] mr-3 hidden dark:block"
]
Component
App\Twig\Components\Media\Icon {#11132
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 ms
Input props
[
  "name" => "heart"
  "class" => "heart h-5 w-5 text-[#eb2a2a]"
]
Attributes
[
  "class" => "heart h-5 w-5 text-[#eb2a2a]"
]
Component
App\Twig\Components\Media\Icon {#11155
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "heart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 ms
Input props
[
  "name" => "whatsapp"
  "class" => "w-[28px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#11178
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "whatsapp"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 ms
Input props
[
  "name" => "instagram"
  "class" => "w-[28px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#11201
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "instagram"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 ms
Input props
[
  "name" => "threads"
  "class" => "w-[28px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#11224
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "threads"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 ms
Input props
[
  "name" => "tiktok"
  "class" => "w-[29px] h-[29px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[29px] h-[29px]"
]
Component
App\Twig\Components\Media\Icon {#11247
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "tiktok"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.06 ms
Input props
[
  "name" => "facebook"
  "class" => "w-[19px] h-[28px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[19px] h-[28px]"
]
Component
App\Twig\Components\Media\Icon {#11270
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "facebook"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 86.5 MiB 0.07 ms
Input props
[
  "name" => "youtube"
  "class" => "w-[28px] h-[24px]"
  "symbolDefsName" => "networks-symbol-defs.svg"
]
Attributes
[
  "class" => "w-[28px] h-[24px]"
]
Component
App\Twig\Components\Media\Icon {#11293
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#6213 …}
  +name: "youtube"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}