原始 JSON 报告 机器可读
{
"data": {
"repo": {
"topics": [
"symfony",
"javascript",
"hacktoberfest"
],
"is_fork": false,
"size_kb": 43283,
"has_wiki": false,
"homepage": "https://ux.symfony.com/",
"languages": {
"CSS": 4050,
"PHP": 2696831,
"Vue": 173,
"HTML": 2559398,
"Twig": 303851,
"Shell": 5622,
"JavaScript": 86471,
"TypeScript": 733894
},
"pushed_at": "2026-07-25T12:33:42Z",
"created_at": "2020-11-28T10:09:32Z",
"owner_type": "Organization",
"updated_at": "2026-07-24T18:26:10Z",
"description": "Symfony UX initiative: a JavaScript ecosystem for Symfony",
"is_archived": false,
"is_disabled": false,
"license_spdx": "MIT",
"default_branch": "3.x",
"license_spdx_raw": "MIT",
"primary_language": "PHP",
"significant_languages": [
"PHP",
"HTML",
"TypeScript"
]
},
"owner": {
"blog": "https://symfony.com/",
"name": "Symfony",
"type": "Organization",
"login": "symfony",
"company": null,
"location": "The Internet",
"followers": 2177,
"avatar_url": "https://avatars.githubusercontent.com/u/143937?v=4",
"created_at": "2009-10-24T04:05:23Z",
"is_verified": null,
"public_repos": 414,
"account_age_days": 6119
},
"license": {
"state": "standard",
"spdx_id": "MIT",
"raw_spdx": "MIT",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v3.3.0",
"kind": "minor",
"published_at": "2026-07-14T16:28:47Z"
},
{
"tag": "v2.36.2",
"kind": "patch",
"published_at": "2026-07-08T13:57:48Z"
},
{
"tag": "v3.2.0",
"kind": "minor",
"published_at": "2026-06-19T07:14:51Z"
},
{
"tag": "v2.36.1",
"kind": "patch",
"published_at": "2026-06-19T07:08:33Z"
},
{
"tag": "v3.1.0",
"kind": "minor",
"published_at": "2026-05-29T07:09:52Z"
},
{
"tag": "v2.36.0",
"kind": "minor",
"published_at": "2026-05-29T07:00:18Z"
},
{
"tag": "v2.35.0",
"kind": "minor",
"published_at": "2026-04-13T14:51:09Z"
},
{
"tag": "v3.0.0",
"kind": "major",
"published_at": "2026-04-13T14:00:21Z"
},
{
"tag": "v2.34.0",
"kind": "minor",
"published_at": "2026-03-22T22:21:57Z"
},
{
"tag": "v2.33.0",
"kind": "minor",
"published_at": "2026-03-17T21:15:45Z"
},
{
"tag": "v2.32.0",
"kind": "minor",
"published_at": "2026-01-05T14:07:17Z"
},
{
"tag": "v2.31.0",
"kind": "minor",
"published_at": "2025-10-23T13:28:18Z"
},
{
"tag": "v2.30.0",
"kind": "minor",
"published_at": "2025-08-27T18:29:03Z"
},
{
"tag": "v2.29.2",
"kind": "patch",
"published_at": "2025-08-19T12:13:30Z"
},
{
"tag": "v2.29.1",
"kind": "patch",
"published_at": "2025-08-08T12:47:38Z"
},
{
"tag": "v2.29.0",
"kind": "minor",
"published_at": "2025-08-08T11:45:37Z"
},
{
"tag": "v2.28.2",
"kind": "patch",
"published_at": "2025-07-30T12:27:55Z"
},
{
"tag": "v2.28.1",
"kind": "patch",
"published_at": "2025-07-28T20:46:32Z"
},
{
"tag": "v2.28.0",
"kind": "minor",
"published_at": "2025-07-28T19:26:51Z"
},
{
"tag": "v2.27.0",
"kind": "minor",
"published_at": "2025-06-27T12:30:02Z"
},
{
"tag": "v2.26.1",
"kind": "patch",
"published_at": "2025-06-06T20:31:40Z"
},
{
"tag": "v2.26.0",
"kind": "minor",
"published_at": "2025-06-05T17:57:10Z"
},
{
"tag": "v2.25.2",
"kind": "patch",
"published_at": "2025-05-20T14:18:00Z"
},
{
"tag": "v2.25.1",
"kind": "patch",
"published_at": "2025-05-19T15:51:54Z"
},
{
"tag": "v2.25.0",
"kind": "minor",
"published_at": "2025-05-19T15:47:10Z"
},
{
"tag": "v2.24.0",
"kind": "minor",
"published_at": "2025-04-05T14:45:05Z"
},
{
"tag": "v2.23.0",
"kind": "minor",
"published_at": "2025-02-10T02:34:28Z"
},
{
"tag": "v2.22.1",
"kind": "patch",
"published_at": "2024-12-09T22:14:09Z"
},
{
"tag": "v2.22.0",
"kind": "minor",
"published_at": "2024-11-30T19:52:19Z"
},
{
"tag": "v2.21.0",
"kind": "minor",
"published_at": "2024-10-22T23:54:25Z"
},
{
"tag": "v2.20.0",
"kind": "minor",
"published_at": "2024-09-24T19:01:58Z"
},
{
"tag": "v2.19.3",
"kind": "patch",
"published_at": "2024-08-16T18:49:45Z"
},
{
"tag": "v2.19.2",
"kind": "patch",
"published_at": "2024-08-13T17:20:51Z"
},
{
"tag": "v2.19.1",
"kind": "patch",
"published_at": "2024-08-12T20:53:51Z"
},
{
"tag": "v2.19.0",
"kind": "minor",
"published_at": "2024-08-12T20:04:08Z"
},
{
"tag": "v2.18.1",
"kind": "patch",
"published_at": "2024-06-12T13:54:38Z"
},
{
"tag": "v2.18.0",
"kind": "minor",
"published_at": "2024-06-07T23:35:17Z"
},
{
"tag": "v2.17.0",
"kind": "minor",
"published_at": "2024-04-23T14:16:34Z"
},
{
"tag": "v2.16.0",
"kind": "minor",
"published_at": "2024-02-29T16:53:40Z"
},
{
"tag": "v2.15.0",
"kind": "minor",
"published_at": "2024-02-20T16:23:25Z"
},
{
"tag": "v2.14.2",
"kind": "patch",
"published_at": "2024-02-07T20:35:08Z"
},
{
"tag": "v2.14.1",
"kind": "patch",
"published_at": "2024-02-03T01:15:10Z"
},
{
"tag": "v2.14.0",
"kind": "minor",
"published_at": "2024-01-30T19:40:54Z"
},
{
"tag": "v2.13.3",
"kind": "patch",
"published_at": "2024-01-30T14:34:50Z"
},
{
"tag": "v2.13.2",
"kind": "patch",
"published_at": "2023-11-11T01:30:59Z"
},
{
"tag": "v2.13.1",
"kind": "patch",
"published_at": "2023-11-09T15:42:44Z"
},
{
"tag": "v2.13.0",
"kind": "minor",
"published_at": "2023-11-08T14:59:20Z"
},
{
"tag": "v2.12.0",
"kind": "minor",
"published_at": "2023-09-22T14:04:43Z"
},
{
"tag": "v2.11.2",
"kind": "patch",
"published_at": "2023-09-11T13:25:29Z"
},
{
"tag": "v2.11.1",
"kind": "patch",
"published_at": "2023-09-07T15:09:20Z"
},
{
"tag": "v2.11.0",
"kind": "minor",
"published_at": "2023-08-28T13:05:10Z"
},
{
"tag": "v2.10.0",
"kind": "minor",
"published_at": "2023-07-06T10:42:13Z"
},
{
"tag": "v2.9.1",
"kind": "patch",
"published_at": "2023-05-31T14:01:05Z"
},
{
"tag": "v2.9.0",
"kind": "minor",
"published_at": "2023-05-29T00:42:45Z"
},
{
"tag": "v2.8.1",
"kind": "patch",
"published_at": "2023-05-16T17:46:57Z"
},
{
"tag": "v2.8.0",
"kind": "minor",
"published_at": "2023-05-03T12:48:30Z"
},
{
"tag": "v2.7.1",
"kind": "patch",
"published_at": "2023-01-25T13:52:39Z"
},
{
"tag": "v2.7.0",
"kind": "minor",
"published_at": "2023-01-23T15:13:51Z"
},
{
"tag": "v2.6.1",
"kind": "patch",
"published_at": "2022-12-07T16:58:33Z"
},
{
"tag": "v2.6.0",
"kind": "minor",
"published_at": "2022-11-28T18:20:52Z"
},
{
"tag": "v2.5.0",
"kind": "minor",
"published_at": "2022-11-08T14:17:45Z"
},
{
"tag": "v2.3.0",
"kind": "minor",
"published_at": "2022-07-11T13:22:13Z"
}
],
"recent_commits": [
{
"oid": "095f29610b644fa8260ee3407b4cab7bd52ac765",
"body": "…PI reference (kbond)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit] Document Stimulus controllers in the recipe API reference\n\n| Q | A\n| ------------- | ---\n| Bug fix? | no\n| New feature? | yes\n| Docs? | no\n| Issues | -\n| License | \n[…]\nc values`/`static targets` declarations in both directions, and every ``@action`` matching a real method.\n\nCommits\n-------\n\n20426dee [Toolkit] Document Stimulus controllers in the recipe API reference",
"is_bot": false,
"headline": "feature #3724 [Toolkit] Document Stimulus controllers in the recipe A…",
"author_name": "Kevin Bond",
"author_login": "kbond",
"committed_at": "2026-07-24T18:25:57Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "20426dee96f21cccd124153d4e2a6a25581e90aa",
"body": "Recipes that ship a Stimulus controller had no way to surface its public API in\ntheir documentation. `RecipeDocRenderer` now parses each controller's `@value`/\n`@target`/`@action` docblock tags and renders them under `::: api-reference`,\nalongside the existing Twig component tables. The code stays t\n[…]\n consistent with the\n`static values`/`static targets` declarations in both directions, and every\n`@action` matching a real method. Documentation is opt-in: a controller with no\ntags is left untouched.",
"is_bot": false,
"headline": "[Toolkit] Document Stimulus controllers in the recipe API reference",
"author_name": "Kevin Bond",
"author_login": "kbond",
"committed_at": "2026-07-24T18:12:36Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0ac0c6cc44b9f1946b85eaf4be8ba93a9c0d8095",
"body": "This PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit][Common] Add `closeable` recipe\n\n| Q | A\n| ------------- | ---\n| Bug fix? | no\n| New feature? | yes\n| Docs? | no\n| Issues | -\n| License | MIT\n\nAdds `common/closeable`, a controller-only re\n[…]\n for its API reference to render. A companion PR on `symfony/ux.symfony.com` will register the controller so the live previews boot.\n\nCommits\n-------\n\n715f1858 [Toolkit][Common] Add `closeable` recipe",
"is_bot": false,
"headline": "feature #3725 [Toolkit][Common] Add `closeable` recipe (kbond)",
"author_name": "Kevin Bond",
"author_login": "kbond",
"committed_at": "2026-07-23T23:57:33Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "715f1858cc9cfd971d382bb85a8820815cbb9711",
"body": null,
"is_bot": false,
"headline": "[Toolkit][Common] Add `closeable` recipe",
"author_name": "Kevin Bond",
"author_login": "kbond",
"committed_at": "2026-07-23T23:40:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "02e0ecf1059c457381aca1825f2e21f9a3ccaa75",
"body": "This PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Translator] Make the component non-experimental\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | yes <!-- please update src/**/CHANGELOG.md files -->\n| Deprecations? | no <!-- if yes, also update U\n[…]\neak (in a minor version) was done 7 months ago (2.32).\n\nIt's been pretty stable since.\n\nTime to make it non-experimental!\n\nCommits\n-------\n\n5f92e393bf4 [Translator] Make the component non-experimental",
"is_bot": false,
"headline": "feature #3716 [Translator] Make the component non-experimental (Kocal)",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-23T09:05:15Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "5f92e393bf4e2ad9cdc1777ec060b370a58f1396",
"body": "UX Translator has been released 3 years ago, and the latest BC break (in a minor version) was done 7 months ago (2.32).\n\nIt's been pretty stable since.\n\nTime to make it non-experimental!",
"is_bot": false,
"headline": "[Translator] Make the component non-experimental",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-23T09:01:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9b2b83537bc8502606c47e5da6064f507943be8d",
"body": "This PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit] Boostrap Toolkit\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | yes\n| Deprecations? | no\n| Documentation? | yes\n| Issues | Fix #...\n| License | MIT\n\nIntroducing Bootstrap \n[…]\nap 5.3)\n\nNot sure if all these files are supposed to be commited\n\nCommits\n-------\n\n404f2dbb748 [Toolkit][Bootstrap] Manually fixes somes examples\nfad9f8463c8 [Toolkit][Bootstrap] Add the Bootstrap kit",
"is_bot": false,
"headline": "feature #3713 [Toolkit] Boostrap Toolkit (smnandre, Kocal)",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-23T06:12:11Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "404f2dbb7485d1c470217586b2145c7e641c555f",
"body": null,
"is_bot": false,
"headline": "[Toolkit][Bootstrap] Manually fixes somes examples",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-23T06:07:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fad9f8463c8b581a43babea48666ca2f0428b017",
"body": "[Toolkit][Bootstrap] Harden Offcanvas a11y wiring and Toast attributes\n\nOffcanvas now mirrors Modal's provide/inject pattern with Offcanvas:Header,\nOffcanvas:Title and Offcanvas:Body sub-components. The title id is auto-wired\nto the root aria-labelledby, so a custom header can no longer leave a dang\n[…]\nImage overlays\n+\n+Use an image as the card background and place concise, high-contrast content over it.\n+\n+```twig {\"preview\":true,\"height\":\"410px\"}\n+{% set image_url = 'https://images.unsplash.com/p…",
"is_bot": false,
"headline": "[Toolkit][Bootstrap] Add the Bootstrap kit",
"author_name": "Simon André",
"author_login": "smnandre",
"committed_at": "2026-07-22T22:25:58Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "4af61f6468e696da31b248a48d92aca410bc0f4d",
"body": "…andre)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit] Fix suggested frontend installation commands\n\n| Q | A\n| -------------- | ---\n| Bug fix? | yes\n| New feature? | no <!-- please update src/**/CHANGELOG.md files -->\n| Deprecations? | no <!-- if yes\n[…]\nexist, explain below instead -->\n| License | MIT\n\nCherry-picked from https://github.com/symfony/ux/pull/3713\n\nCommits\n-------\n\n69d6b8feb34 [Toolkit] Fix suggested frontend installation commands",
"is_bot": false,
"headline": "bug #3720 [Toolkit] Fix suggested frontend installation commands (smn…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-22T22:21:23Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "69d6b8feb34bbc5107896d88a0d28e0e389e8736",
"body": null,
"is_bot": false,
"headline": "[Toolkit] Fix suggested frontend installation commands",
"author_name": "Simon André",
"author_login": "smnandre",
"committed_at": "2026-07-22T21:59:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "49953a9754d4f18e58c277786e61dc302e1c1715",
"body": "This PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit] Support kit-level dependencies\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | yes <!-- please update src/**/CHANGELOG.md files -->\n| Deprecations? | no <!-- if yes, also update UPGRADE-*\n[…]\nissue if none exist, explain below instead -->\n| License | MIT\n\nCherry-picked from https://github.com/symfony/ux/pull/3713\n\nCommits\n-------\n\n6aa0a049592 [Toolkit] Support kit-level dependencies",
"is_bot": false,
"headline": "feature #3719 [Toolkit] Support kit-level dependencies (smnandre)",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-22T21:58:33Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "d73427cea4fea8eab3349677da3b69d7c433bbe9",
"body": "…html_attr_*` filters (Kocal)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit] Require the correct twig/html-extra version for `html_attr_*` filters\n\n| Q | A\n| -------------- | ---\n| Bug fix? | yes\n| New feature? | no <!-- please update src/**/CHANGELOG\n[…]\nstead -->\n| License | MIT\n\nCherry-picked from https://github.com/symfony/ux/pull/3713\n\nCommits\n-------\n\n45696601469 [Toolkit] Require the correct twig/html-extra version for html_attr_* filters",
"is_bot": false,
"headline": "bug #3721 [Toolkit] Require the correct twig/html-extra version for `…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-22T21:58:04Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "6aa0a049592e9da9d7f99158edfae4066c591710",
"body": null,
"is_bot": false,
"headline": "[Toolkit] Support kit-level dependencies",
"author_name": "Simon André",
"author_login": "smnandre",
"committed_at": "2026-07-22T21:48:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "45696601469e0c0c49d978b7acb93af5b99cb68d",
"body": "… filters\n\nRework ComposerSymbolChecker to a \"symbol -> required packages\" model with AND\nsemantics: a Twig filter is satisfied only when every Composer package it needs\nis declared at a compatible version. html_attr_merge/html_attr_type now require\nboth twig/extra-bundle and twig/html-extra:^3.24, instead of a version-less\ntwig/extra-bundle masking an under-pinned twig/html-extra.\n\nBump the bootstrap tooltip and popover manifests to twig/html-extra:^3.24.0.",
"is_bot": false,
"headline": "[Toolkit] Require the correct twig/html-extra version for html_attr_*…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-22T21:43:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b512b740563c7c402e8c93e7921eba699bcc1401",
"body": "…an describe themselves (Kocal)\n\nThis PR was squashed before being merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit] Add a documentation rendering layer so kits can describe themselves\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | yes\n| Deprecation\n[…]\nline-README examples model\n5ef931a8967 [Toolkit] Inline recipe examples into README; drop examples/*.html.twig\ne54d9ceaad3 [Toolkit] Add a documentation rendering layer so kits can describe themselves",
"is_bot": false,
"headline": "feature #3718 [Toolkit] Add a documentation rendering layer so kits c…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-21T06:23:18Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "5c4d6cf7389d4e9dfec021eb992f521e05391f5a",
"body": "…ME examples model\n\nUpdate the symfony-ux-toolkit-kit skill for the new single-source model:\nexamples are inline ```twig {\"preview\":true} blocks in each recipe README.md,\nno more examples/*.html.twig files, no `::: example` directive, no per-recipe\n.md.twig companion (docs render from the README), a\n[…]\nkeyed by example\nindex via phpunit (simple-phpunit is gone).\n\nScaffold a Button/README.md in that structure from ux:toolkit:create-kit so new\nkits start correct, and assert it in CreateKitCommandTest.",
"is_bot": false,
"headline": "[Toolkit] Align kit-authoring skill + scaffolder with the inline-READ…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-21T06:14:31Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "5ef931a8967830f827b18341658d9744fe301a43",
"body": "Each `::: example <Name> {opts}` directive is replaced by the example's Twig\ninlined as a fenced block: runnable examples as ```twig {\"preview\":true, ...opts}\n(rendered by FencedCodePreviewExtension), the Usage block as a plain static\n```twig. The examples/*.html.twig files are removed, so the READM\n[…]\nrates Recipe::getExamples() instead of the\nfiles; snapshots regenerated. The three previously test-only fixtures (button-group\nAccessibility, typography Arabic/Hebrew RTL) are now documented examples.",
"is_bot": false,
"headline": "[Toolkit] Inline recipe examples into README; drop examples/*.html.twig",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-21T06:14:31Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "e54d9ceaad3af701477ff70c2f846aa929059818",
"body": "…emselves",
"is_bot": false,
"headline": "[Toolkit] Add a documentation rendering layer so kits can describe th…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-21T06:00:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4c9bfe16c79b25d45a907bb901271e1c922ce784",
"body": null,
"is_bot": false,
"headline": "Update branch reference for features and deprecations",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-19T14:17:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "632b601057fc5a1d21e661533df8414acfe20ed6",
"body": "…d Symfony version (MrYamous)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Turbo][Documention] Remove mention to unsupported Symfony version\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | no\n| Deprecations? | no\n| Documentation? | yes\n| Is\n[…]\nis requiring Symfony 6.4, I think it's no longer relevant to keep in documentation an example about 6.2\n\nCommits\n-------\n\n44d18a31b51 [Documention][Turbo] Remove mention to unsupported Symfony version",
"is_bot": false,
"headline": "documentation #3715 [Turbo][Documention] Remove mention to unsupporte…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-19T08:22:10Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "44d18a31b51c802317d8c0985828ca41760ce545",
"body": null,
"is_bot": false,
"headline": "[Documention][Turbo] Remove mention to unsupported Symfony version",
"author_name": "Matthieu Lempereur",
"author_login": "MrYamous",
"committed_at": "2026-07-19T08:12:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "20bf32441651a604bdfbe301c054f713bf06d16f",
"body": "…ony Reprise) (Kocal)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[React][Vue] Add support for `import.meta.glob()` (Symfony Reprise)\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | yes <!-- please update src/**/CHANGELOG.md files -->\n| Depr\n[…]\n- https://github.com/symfony/reprise/pull/43\n\nSupport for React and HMR with Vite requires Reprise 0.4\n\nCommits\n-------\n\n578acb9cafd [React][Vue] Add support for `import.meta.glob()` (Symfony Reprise)",
"is_bot": false,
"headline": "feature #3714 [React][Vue] Add support for `import.meta.glob()` (Symf…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-19T08:09:07Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "578acb9cafd4211d1b069011131a2cfc3f5b3b33",
"body": "registerReactControllerComponents() and registerVueControllerComponents() only\naccepted a Webpack require.context(). Vite and Rsbuild (used by Symfony Reprise)\ndo not provide it and expose import.meta.glob() instead. Both functions now accept\neither input: a require.context() (a function) or an import.meta.glob() result (an\nobject), whose keys are normalized to the ./<name>.<ext> form. React expects the\neager option; Vue supports both eager and lazy globs.",
"is_bot": false,
"headline": "[React][Vue] Add support for `import.meta.glob()` (Symfony Reprise)",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-19T07:51:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0e423fd53442e6f02fd070f7e68888bf74ffbd51",
"body": "…k` and `post-link` recipes (kbond)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit][Common] Add the `common` kit with `logout-link` and `post-link` recipes\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | yes\n| Deprecations? | https://\n[…]\ns the [companion ux.symfony.com PR](https://github.com/symfony/ux.symfony.com/pull/159).\n\nCommits\n-------\n\n166a59a70a9 [Toolkit][Common] Add the `common` kit with `logout-link` and `post-link` recipes",
"is_bot": false,
"headline": "feature #3707 [Toolkit][Common] Add the `common` kit with `logout-lin…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-17T09:18:55Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "166a59a70a95614669487130d13945ddf60c22e4",
"body": "…ink` recipes\n\nIntroduce a new design-system agnostic kit for common Symfony needs. It ships\ntwo recipes:\n\n- `post-link`: a link submitted as a form, with optional HTTP method spoofing,\n CSRF protection, and a confirmation prompt\n- `logout-link`: a link that logs the current user out through a secure POST\n form (built on top of `post-link`)",
"is_bot": false,
"headline": "[Toolkit][Common] Add the `common` kit with `logout-link` and `post-l…",
"author_name": "Kevin Bond",
"author_login": "kbond",
"committed_at": "2026-07-17T09:13:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dbf2f0a404a7a2431606eba651922ade4ead3b04",
"body": "…ttibutes merging (stephen-lewis)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit][Shadcn] Fix `Table:Cell` and `Table:Head` class attibutes merging\n\n| Q | A\n| -------------- | ---\n| Bug fix? | yes\n| New feature? | no <!-- please update src/**/CHANGELOG\n[…]\nting-a-changelog-entry\n - Never break backward compatibility (see https://symfony.com/bc).\n-->\n\nCommits\n-------\n\nb68bbf62b06 [Toolkit][Shadcn] Fix `Table:Cell` and `Table:Head` class attibutes merging",
"is_bot": false,
"headline": "bug #3710 [Toolkit][Shadcn] Fix `Table:Cell` and `Table:Head` class a…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-17T08:36:03Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "b68bbf62b069088d1cea4b2603abded974767170",
"body": "…erging",
"is_bot": false,
"headline": "[Toolkit][Shadcn] Fix `Table:Cell` and `Table:Head` class attibutes m…",
"author_name": "Stephen Lewis",
"author_login": "stephen-lewis",
"committed_at": "2026-07-17T08:31:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e740d84b76603af03398e0d11506ec787ffbc07d",
"body": "… linter (Kocal)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit] Add `ClassMergeSpacingChecker` checker to the linter\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | yes <!-- please update src/**/CHANGELOG.md files -->\n| Deprecations? \n[…]\nll render `class=\"foobar\"`\n\nRelated to https://github.com/symfony/ux/pull/3708#pullrequestreview-4720468133\n\nCommits\n-------\n\ne5cb89c37e7 [Toolkit] Add `ClassMergeSpacingChecker` checker to the linter",
"is_bot": false,
"headline": "feature #3709 [Toolkit] Add `ClassMergeSpacingChecker` checker to the…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-17T08:17:06Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "e5cb89c37e719f9f000a22c8ac8e884d76fc8f02",
"body": "We have some occurences `'foo' ~ attributes.render('class')` which generates invalid classes when the user is passing `class` attr (e.g.: `<twig:Toto class=\"bar\">` will render `class=\"foobar\"`",
"is_bot": false,
"headline": "[Toolkit] Add `ClassMergeSpacingChecker` checker to the linter",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-17T08:11:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d4fb61166d0a96f7c13265df4ae3247f9723d7e2",
"body": "This PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[StimulusBundle] Add support for Symfony Reprise\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | yes\n| Deprecations? | no\n| Documentation? | yes\n| Issues | -\n| License | MIT\n\n[Symfon\n[…]\ndge manually (documented).\n\nRelated: symfony/recipes#1543 (matching Flex recipes) and https://github.com/symfony/reprise.\n\nCommits\n-------\n\n9c50560b1c8 [StimulusBundle] Add support for Symfony Reprise",
"is_bot": false,
"headline": "feature #3705 [StimulusBundle] Add support for Symfony Reprise (Kocal)",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-13T16:18:59Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "9c50560b1c83fc65e9b64ad2b03eb9f964732e1e",
"body": "Document Symfony Reprise (the Vite and Rsbuild asset integration) as a supported\nasset system next to AssetMapper and Webpack Encore, and drop the Encore-specific\n`@symfony/stimulus-bridge` from the npm peer dependencies so AssetMapper and\nReprise projects no longer pull it in. Webpack Encore still needs it and now\ninstalls it manually (documented).",
"is_bot": false,
"headline": "[StimulusBundle] Add support for Symfony Reprise",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-13T16:10:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1311aa13e9df7cf826a9f60234c8302e9d3ad7ee",
"body": "…'lazy' */` syntax (IndraGunawan)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[StimulusBundle] Support preserved `/*! stimulusFetch: 'lazy' */` syntax\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | yes <!-- please update src/**/CHANGELOG.md\n[…]\nd.\n\nThis also fixes the tests, was `OK (1 test, 2 assertions)`, now `OK (2 tests, 15 assertions)`\n\nCommits\n-------\n\nfbe243ebcf1 [StimulusBundle] Support preserved `/*! stimulusFetch: 'lazy' */` syntax",
"is_bot": false,
"headline": "feature #3702 [StimulusBundle] Support preserved `/*! stimulusFetch: …",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-10T16:08:11Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "fbe243ebcf194988be396e9f9125f7f6589a5ae5",
"body": null,
"is_bot": false,
"headline": "[StimulusBundle] Support preserved `/*! stimulusFetch: 'lazy' */` syntax",
"author_name": "Indra Gunawan",
"author_login": "IndraGunawan",
"committed_at": "2026-07-10T16:03:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6c3ac801cd6b2ee05106ec02839f3f3c2aac374b",
"body": "…ted loader deterministic (Amoifr)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[StimulusBundle] Sort custom controllers to keep the generated loader deterministic\n\n| Q | A\n| ------------- | ---\n| Bug fix? | yes\n| New feature? | no\n| Issues | Fix #3562\n| \n[…]\n.md` points at, but I'm happy to retarget if you'd rather have it on the older branch.\n\nCommits\n-------\n\n29098634257 [StimulusBundle] Sort custom controllers to keep the generated loader deterministic",
"is_bot": false,
"headline": "bug #3703 [StimulusBundle] Sort custom controllers to keep the genera…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-10T15:48:03Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "88cb1a0a7cfa9070162b1343cecb435b0968c164",
"body": "…loads (Amoifr)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[LiveComponent] Avoid 500 errors on malformed hydration payloads\n\n| Q | A\n| ------------- | ---\n| Bug fix? | yes\n| New feature? | no\n| Tickets | -\n| License | MIT\n\nHydrating a LiveComponent\n[…]\nitable value is ignored like any other bad data and the original value is kept.\n\nDiscussed with `@Kocal`.\n\nCommits\n-------\n\n0a4503f285f [LiveComponent] Avoid 500 errors on malformed hydration payloads",
"is_bot": false,
"headline": "bug #3676 [LiveComponent] Avoid 500 errors on malformed hydration pay…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-10T15:47:13Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "3b7f212e78eb6d1fd411a35b5c5dc8476bc6fa57",
"body": "…-ignore subtrees (Amoifr)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[LiveComponent] Fix data-loading scanner ignoring data-live-ignore subtrees\n\n| Q | A\n| -------------- | ---\n| Bug fix? | yes\n| New feature? | no\n| Deprecations? | no\n| Documentation? | n\n[…]\ne-ignore` subtree, the same way nested live-component elements are already skipped just above.\n\nCommits\n-------\n\n41a0807514b [LiveComponent] Fix data-loading scanner ignoring data-live-ignore subtrees",
"is_bot": false,
"headline": "bug #3688 [LiveComponent] Fix data-loading scanner ignoring data-live…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-10T15:46:39Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2909863425757454ca7cf81819205ec5770dda04",
"body": "… deterministic\n\n`ControllersMapGenerator::loadCustomControllers()` iterated a `Finder` without\nany sort. Directory iteration order is filesystem-dependent, so the controllers\nwere emitted in a different order across builds, changing the contents of the\ngenerated loader and therefore its digest, even though no controller had\nchanged.",
"is_bot": false,
"headline": "[StimulusBundle] Sort custom controllers to keep the generated loader…",
"author_name": "Amoifr",
"author_login": "Amoifr",
"committed_at": "2026-07-10T12:23:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bd86a5fb2ac7291b5ba541ea4ec162da12781d06",
"body": "…(Kocal)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[CI] Pin actions to latest releases with version comments\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | no <!-- please update src/**/CHANGELOG.md files -->\n| Deprecations? | no <!-- if \n[…]\nLicense | MIT\n\nTIL: Dependabot correctly update the version comments, see dependabot/dependabot-core#5951\n\nCommits\n-------\n\n001eb2e89f6 [CI] Pin actions to latest releases with version comments",
"is_bot": false,
"headline": "tidy #3701 [CI] Pin actions to latest releases with version comments …",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-10T06:06:07Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "001eb2e89f6078b6de6a43171fed988180937319",
"body": "Bump every SHA-pinned GitHub Action to its latest stable release and add a\ntrailing version comment (e.g. `# v7.0.0`) next to each pin, so Dependabot can\ntrack the pinned SHAs and keep the human-readable version in sync\n(dependabot/dependabot-core#5951).\n\nMajor bumps: actions/checkout v6->v7, actions/cache v5->v6,\nactions/github-script v8->v9.",
"is_bot": false,
"headline": "[CI] Pin actions to latest releases with version comments",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-10T05:58:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "13027df28cbc8f306d6672c4ef779c35689ac443",
"body": "…ies on component (rogierknoester)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[LiveComponent] Fix support for nullable collection properties on component\n\n| Q | A\n| -------------- | ---\n| Bug fix? | yes\n| New feature? | no <!-- please update src/**/CHANGELO\n[…]\ning>`. This PR fixes that by checking if the inner type of a nullable type might be a collection type.\n\nCommits\n-------\n\n0725ea5e527 [LiveComponent] Support nullable collection properties on component",
"is_bot": false,
"headline": "bug #3690 [LiveComponent] Fix support for nullable collection propert…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-09T16:01:20Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0725ea5e5277de404182df4f136ab49760986742",
"body": null,
"is_bot": false,
"headline": "[LiveComponent] Support nullable collection properties on component",
"author_name": "rogierknoester",
"author_login": "rogierknoester",
"committed_at": "2026-07-09T08:44:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fb1f26eadd717a537c2fbb714e1e6fb8c538d908",
"body": "* 2.x:\n Bump npm packages to v2.36.2\n Fix typo",
"is_bot": false,
"headline": "Merge branch '2.x' into 3.x",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-09T05:17:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e909a16d537571a4494a85097c0742a941af762a",
"body": "…tively and suggest alternatives (Kocal)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit] Resolve `ux:install` recipe name case-insensitively and suggest alternatives\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | yes <!-- please updat\n[…]\n any official kit, the error now suggests\nclose alternatives found across all kits.\n\nCommits\n-------\n\n975d48f3cff [Toolkit] Resolve `ux:install` recipe name case-insensitively and suggest alternatives",
"is_bot": false,
"headline": "feature #3700 [Toolkit] Resolve `ux:install` recipe name case-insensi…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-09T05:13:44Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "975d48f3cff7bf75727ae0a884cec8fa1ebd93e8",
"body": "…gest alternatives\n\nRecipe names are stored in lower-case, so `ux:install Alert` used to fail\nwith a raw \"does not exist in any official kits\" error. Recipe lookup is now\ncase-insensitive: `Alert` resolves to the `alert` recipe and offers to install\nit from the kits that contain it, both without `--\n[…]\nfirmation). Genuine typos still go through the alternative-recipe\nsuggestions.\n\nWhen a recipe truly does not exist in any official kit, the error now suggests\nclose alternatives found across all kits.",
"is_bot": false,
"headline": "[Toolkit] Resolve `ux:install` recipe name case-insensitively and sug…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-09T05:03:19Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "6644c07c30f7167cc413e444141907c85fc7b87f",
"body": " Bump npm packages to v2.36.2",
"is_bot": false,
"headline": "Merge pull request #3698 from symfony/bump/v2.36.2",
"author_name": "Fabien Potencier",
"author_login": "fabpot",
"committed_at": "2026-07-08T13:57:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "20721611e7bb4f977036fcb90ea80ac41df2aae1",
"body": null,
"is_bot": true,
"headline": "Bump npm packages to v2.36.2",
"author_name": "github-actions[bot]",
"author_login": "github-actions[bot]",
"committed_at": "2026-07-08T13:49:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8d0770f74395144475ff1470f6c85542c9c9cb4e",
"body": null,
"is_bot": false,
"headline": "Fix typo",
"author_name": "Fabien Potencier",
"author_login": "fabpot",
"committed_at": "2026-07-08T08:47:43Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "024a8d0e47c25e2d40713f0da36e4a65060d0d0d",
"body": "This PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[TwigComponent] Fix syntax\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | no\n| Deprecations? | no\n| Documentation? | yes\n| Issues |\n| License | MIT\n\nI suppose it's caused by rst syn\n[…]\napture d’écran 2026-07-05 à 17 45 48\" src=\"https://github.com/user-attachments/assets/426533d1-145f-471e-a1a8-4b000725c65c\" />\n\nCommits\n-------\n\nd3a0692870b [Documentation][TwigComponent] Fix syntax",
"is_bot": false,
"headline": "documentation #3695 [TwigComponent] Fix syntax (MrYamous)",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-05T21:52:01Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "43f11e180719b14ad340af1c36e540837e741046",
"body": "…esize, and stop it from intercepting pointer events while hidden (Kocal)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit][Shadcn] Dismiss the `tooltip` on scroll and resize, and stop it from intercepting pointer events while hidden\n\n| Q | A\n| -------------- | \n[…]\nhttps://github.com/symfony/ux.symfony.com/pull/157\n\nCommits\n-------\n\n79b974903a9 [Toolkit][Shadcn] Dismiss the `tooltip` on scroll and resize, and stop it from intercepting pointer events while hidden",
"is_bot": false,
"headline": "feature #3696 [Toolkit][Shadcn] Dismiss the `tooltip` on scroll and r…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-05T21:17:35Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "79b974903a92408f211496b0257bbe34de5174f8",
"body": "…p it from intercepting pointer events while hidden\n\nFound while working on UX website.",
"is_bot": false,
"headline": "[Toolkit][Shadcn] Dismiss the `tooltip` on scroll and resize, and sto…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-05T21:03:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ac4f12fb75e0621efc0092896f99fcb1712824c2",
"body": "…@block`` comments format (Kocal)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit] Refactor (again) but improve ``@prop`` and ``@block`` comments format\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | yes <!-- please update src/**/CHANG\n[…]\ns to easily fix issues found by the linting tool.\n\nAll kit recipes were fixed accordingly.\n\nCommits\n-------\n\n359ffca0752 [Toolkit] Refactor (again) but improve ``@prop`` and ``@block`` comments format",
"is_bot": false,
"headline": "feature #3694 [Toolkit] Refactor (again) but improve ``@prop`` and ``…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-05T19:30:28Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "359ffca07521954ab3379789bd981a5ea3a8bf7a",
"body": "…format",
"is_bot": false,
"headline": "[Toolkit] Refactor (again) but improve `@prop` and `@block` comments …",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-05T19:00:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d3a0692870b36ce91f26c53b1ff2ad72b98432fd",
"body": null,
"is_bot": false,
"headline": "[Documentation][TwigComponent] Fix syntax",
"author_name": "Matthieu Lempereur",
"author_login": "MrYamous",
"committed_at": "2026-07-05T15:45:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "94167345de06acd1939bdd4deba84d4d771dbbcb",
"body": "* 2.x:\n [Autocomplete] Fix next 2.x release",
"is_bot": false,
"headline": "Merge branch '2.x' into 3.x",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-05T08:08:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c328b22a7bbab6e596564dceb34d3dc06381da56",
"body": null,
"is_bot": false,
"headline": "[Autocomplete] Fix next 2.x release",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-05T08:07:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "721a0cd5dd6c96653ebbb0961cf03a097522c00c",
"body": "* 2.x:\n [Autocomplete] Fix LIKE ESCAPE clause breaking search on PostgreSQL",
"is_bot": false,
"headline": "Merge branch '2.x' into 3.x",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-05T08:06:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "39378083fd5373e8ea691ede2700d0dd209cf281",
"body": "…stgreSQL (Amoifr)\n\nThis PR was merged into the 2.x branch.\n\nDiscussion\n----------\n\n[Autocomplete] Fix LIKE ESCAPE clause breaking search on PostgreSQL\n\n| Q | A\n| ------------- | ---\n| Bug fix? | yes\n| New feature? | no\n| Tickets | Fix #3668\n| License | MIT\n\nSince 2.36,\n[…]\noff`; the new `ESCAPE '!'` works\n under both settings and correctly matches literal `%`, `_` and `!`.\n\nCommits\n-------\n\n91d8147c5b1 [Autocomplete] Fix LIKE ESCAPE clause breaking search on PostgreSQL",
"is_bot": false,
"headline": "bug #3685 [Autocomplete] Fix LIKE ESCAPE clause breaking search on Po…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-05T08:03:21Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "91d8147c5b18487969847e01a58512763e620c99",
"body": "The \"ESCAPE '\\'\" clause added in 2.36 to escape LIKE wildcards produces\ninvalid SQL on PostgreSQL: with standard_conforming_strings=off the\nbackslash escapes the closing quote, breaking the statement (surfaces as\nSQLSTATE[HY093] / [22025]).\n\nUse a backslash-free escape character (\"!\") via the platform's\nescapeStringForLike() instead. The explicit ESCAPE clause is kept since\nSQLite has no default LIKE escape character.",
"is_bot": false,
"headline": "[Autocomplete] Fix LIKE ESCAPE clause breaking search on PostgreSQL",
"author_name": "Amoifr",
"author_login": "Amoifr",
"committed_at": "2026-07-05T07:59:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "401acbcab9467ff2430ec70977dfc15ebd9e77a1",
"body": "This PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Shadcn] Add Sonner\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | yes\n| Deprecations? | no\n| Documentation? | no\n| Issues | Part of #3233\n| License | MIT\n\nAdd Sonner component\n\nCommits\n-------\n\n9d523ec8f8a [Toolkit][Shadcn] Add `sonner` recipe",
"is_bot": false,
"headline": "feature #3477 [Shadcn] Add Sonner (makraz)",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-05T07:55:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9d523ec8f8aa9a6760192d0dc7f7985564fdedf4",
"body": null,
"is_bot": false,
"headline": "[Toolkit][Shadcn] Add `sonner` recipe",
"author_name": "Hamza Makraz",
"author_login": "makraz",
"committed_at": "2026-07-05T07:51:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d37ae1b9ec47ca2dd6617a00467a0faac7cc1355",
"body": "…from the libxml version (Kocal)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit] Make component rendering snapshots independent from the libxml version\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | no <!-- please update src/**/CHANGE\n[…]\nse I (and other people with recent libxml) were not able to regenerate Toolkit snapshots.\n\nCommits\n-------\n\n52fa673fcfd [Toolkit] Make component rendering snapshots independent from the libxml version",
"is_bot": false,
"headline": "minor #3693 [Toolkit] Make component rendering snapshots independent …",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-05T06:57:35Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "52fa673fcfdeb3f94ab0e451118a3c3af75ea776",
"body": "…xml version\n\nSince I changed how I installed PHP on my machine (from HomeBrew to Nix), it looks like `libxml` was updated and rendered snapshots by not converting \"weird symbols\" to HTML entities (e.g. `מאומת` stays `מאומת` instead of `מאומת`).\n\nI then challenged Claude to write a path to normalize things between my machine and the CI, otherwise I (and other people with recent libxml) were not able to regenerate Toolkit snapshots.",
"is_bot": false,
"headline": "[Toolkit] Make component rendering snapshots independent from the lib…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-05T06:49:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "aa3b3323944e70bbe9381f6959633b51e7097508",
"body": "This PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit][Shadcn] Add Combobox\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | yes\n| Deprecations? | no\n| Documentation? | no\n| Issues | Part of https://github.com/symfony/ux/issues/3233\n| License | MIT\n\nAdd Combobox component\n\nhttps://github.com/user-attachments/assets/e756b9f7-00e1-436c-aa7e-c8b616f363ff\n\nCommits\n-------\n\nfceec5f1448 [Shadcn] Add `combobox` recipe",
"is_bot": false,
"headline": "feature #3482 [Toolkit][Shadcn] Add Combobox (makraz)",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-07-05T06:12:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fceec5f14487119617dc7f66145f43565efe55b7",
"body": null,
"is_bot": false,
"headline": "[Shadcn] Add `combobox` recipe",
"author_name": "Hamza Makraz",
"author_login": "makraz",
"committed_at": "2026-07-05T06:03:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "41a0807514b9b0eff54302a023bbd26fc4f2e94b",
"body": "…btrees",
"is_bot": false,
"headline": "[LiveComponent] Fix data-loading scanner ignoring data-live-ignore su…",
"author_name": "Amoifr",
"author_login": "Amoifr",
"committed_at": "2026-06-25T16:47:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "721417c64bbc85022c56d1e3fb7f66874a38cef2",
"body": null,
"is_bot": false,
"headline": "Update CHANGELOGs for 3.2.0",
"author_name": "Fabien Potencier",
"author_login": "fabpot",
"committed_at": "2026-06-19T07:14:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dcf035ec8c6cd2dec729950cd72a7b61ed52c19c",
"body": "* ux-2.x:\n [UX][Icons] Add missing changelog entry\n [Icons] Sanitize SVG output and unify icon creation\n [Toolkit] Harden recipe installer against path traversal",
"is_bot": false,
"headline": "Merge branch 'ux-2.x' into ux-3.x",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-19T06:54:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dfd2ce941ec3e92af36427685cfb4e900ea9244c",
"body": null,
"is_bot": false,
"headline": "[UX][Icons] Add missing changelog entry",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-19T06:52:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3a4964ec3700f0af4e13f7bfbf8bb3174c3e79d1",
"body": "…y icon creation (Kocal)\n\nThis PR was merged into the ux-2.x branch.",
"is_bot": false,
"headline": "security #cve-2026-55877 [Icons] Sanitize Iconify SVG output and unif…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-19T06:41:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7b4ddf3764bf269a1b5fde5bf03c4bce568694e4",
"body": "…th traversal (Kocal)\n\nThis PR was merged into the ux-2.x branch.",
"is_bot": false,
"headline": "security #cve-2026-55878 [Toolkit] Harden recipe installer against pa…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-19T06:40:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cf07ac2bcd2edeb787e310abdf0bda9ad2bb451e",
"body": "SVG from the Iconify API and from local SVG files was rendered as raw HTML\nwithout sanitization, allowing XSS.\n\nA new IconFactory unifies icon creation: fromBody() (Iconify) and fromFile()\n(local files, moved out of Icon::fromFile) share the same sanitization path.\nIcon becomes a pure value object. \n[…]\n an IconNotFoundException so\n\"ignore_not_found\" still works, and skips the offending icon in fetchIcons()\nbatches.\n\nNote: clear the icon cache after upgrading so already-cached icons are\nre-sanitized.",
"is_bot": false,
"headline": "[Icons] Sanitize SVG output and unify icon creation",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-16T05:43:46Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "d9996ebeb5c92b11f1f84f7987dba2b8dd96473d",
"body": "A recipe's `copy-files` map drives the source/destination of each copied\nfile. The only guard was `Path::isRelative()`, which returns true for\npaths like `../../../etc`, so `Path::join()` resolved the `..` segments\nand let a crafted kit read from or write to arbitrary locations outside\nthe recipe/ta\n[…]\n (the gate that also protects the source Finder) and\n`File`. As a last-line defense, the installer re-checks the fully resolved\npaths with `Path::isBasePath()` right before each filesystem read/write.",
"is_bot": false,
"headline": "[Toolkit] Harden recipe installer against path traversal",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-16T04:43:23Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "b033596d894938b4e4756ca8cba763572dbea9b6",
"body": "* 2.x:\n Revert \"[CI] Add workflow to prepare NPM release\"\n Bump npm packages to v2.36.1\n [CI] Add workflow to prepare NPM release",
"is_bot": false,
"headline": "Merge branch '2.x' into 3.x",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-15T22:23:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "35715a14ea69acda2979b16207e4769747c226f0",
"body": "This PR was merged into the 2.x branch.\n\nDiscussion\n----------\n\n Bump npm packages to v2.36.1\n\nPrepared by the `Prepare NPM release` workflow.\n\nOnce merged, create and push the `v2.36.1` tag via the standard Symfony release process. The `release-on-npm.yaml` workflow then publishes via OIDC.\n\nCommits\n-------\n\n4266f1358d7 Bump npm packages to v2.36.1",
"is_bot": false,
"headline": "minor #3683 Bump npm packages to v2.36.1 (github-actions[bot])",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-15T22:21:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "109cd644ac6e107d8630c8f7cf0a1a0f0f6a8af1",
"body": "This reverts commit 8a78621321b40401a07f7e73f234bee8553cf114.",
"is_bot": false,
"headline": "Revert \"[CI] Add workflow to prepare NPM release\"",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-15T22:19:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4266f1358d78bd37e8f0c13a7eb79d0b2ff95936",
"body": null,
"is_bot": true,
"headline": "Bump npm packages to v2.36.1",
"author_name": "github-actions[bot]",
"author_login": "github-actions[bot]",
"committed_at": "2026-06-15T22:17:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8a78621321b40401a07f7e73f234bee8553cf114",
"body": null,
"is_bot": false,
"headline": "[CI] Add workflow to prepare NPM release",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-15T22:15:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "08eeb19ebba378b9f22ee3ed358df98970ba462f",
"body": "…oltip` recipe (Kocal)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit][Shadcn] Fix position and phantom text-node in `tooltip` recipe\n\n| Q | A\n| -------------- | ---\n| Bug fix? | yes\n| New feature? | no <!-- please update src/**/CHANGELOG.md files -->\n\n[…]\n implementing `tooltip` recipe in UX website (https://github.com/symfony/ux.symfony.com/pull/149)\n\nCommits\n-------\n\na9188dea114 [Toolkit][Shadcn] Fix position and phantom text-node in `tooltip` recipe",
"is_bot": false,
"headline": "bug #3682 [Toolkit][Shadcn] Fix position and phantom text-node in `to…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-14T17:42:52Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a9188dea1145a09724e71ad9287739c7f6fbb0e6",
"body": "Noticed while implementing `tooltip` recipe in UX website",
"is_bot": false,
"headline": "[Toolkit][Shadcn] Fix position and phantom text-node in `tooltip` recipe",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-14T08:51:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "36130e5a47dbaad19e3cd60e181d4f3ba9cb1bf0",
"body": "…updates (dependabot[bot])\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n Bump the github-actions group across 1 directory with 2 updates\n\nBumps the github-actions group with 2 updates in the / directory: [ramsey/composer-install](https://github.com/ramsey/composer-install) and [a\n[…]\ncondition>` will remove the ignore condition of the specified dependency and ignore conditions\n\n</details>\n\nCommits\n-------\n\n6e263d76b4a Bump the github-actions group across 1 directory with 2 updates",
"is_bot": false,
"headline": "minor #3681 Bump the github-actions group across 1 directory with 2 …",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-13T21:37:10Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "6e263d76b4ac42a5701e514a0557c3921ebe5592",
"body": "Bumps the github-actions group with 2 updates in the / directory: [ramsey/composer-install](https://github.com/ramsey/composer-install) and [actions/setup-node](https://github.com/actions/setup-node).\n\n\nUpdates `ramsey/composer-install` from 5c2bcf28d7b060ef3c601d7b476d5430a7b46c27 to 26d8a556604053\n[…]\n\n dependency-version: 6.4.0\n dependency-type: direct:production\n update-type: version-update:semver-minor\n dependency-group: github-actions\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
"is_bot": true,
"headline": "Bump the github-actions group across 1 directory with 2 updates",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-13T12:33:50Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "5a70caf530481939a34ab8974a03f0e16d8d4de0",
"body": "…container (guillaume-sainthillier)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[TwigComponent] Allow standalone usage with any PSR-11 container\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | yes\n| Deprecations? | no\n| Documentation? | no\n\n[…]\nContainerInterface\n $propertyAccessor,\n $eventDispatcher,\n $config,\n $classMap,\n $twig,\n);\n\nCommits\n-------\n\n81802443a34 [TwigComponent] Allow standalone usage with any PSR-11 container",
"is_bot": false,
"headline": "feature #3602 [TwigComponent] Allow standalone usage with any PSR-11 …",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-11T20:45:21Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "81802443a34603f46587a13d886d14b0255cbfc3",
"body": null,
"is_bot": false,
"headline": "[TwigComponent] Allow standalone usage with any PSR-11 container",
"author_name": "Guillaume Sainthillier",
"author_login": "guillaume-sainthillier",
"committed_at": "2026-06-11T20:32:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e48c3952428d05248172359cabd398d3bb42e080",
"body": "This PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[CalendarLink] Fix rendering issue\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | no\n| Deprecations? | no\n| Documentation? | yes\n| Issues |\n| License | MIT\n\nIn documentation, - in r\n[…]\n\"image\" src=\"https://github.com/user-attachments/assets/1631e773-bb61-460b-b0e1-a470b362e631\" />\n\nMinor fix to wrap it as code for rendering\n\nCommits\n-------\n\n3819b6e2f21 [CalendarLink][Documentation]",
"is_bot": false,
"headline": "minor #3677 [CalendarLink] Fix rendering issue (MrYamous)",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-11T20:18:56Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "3819b6e2f21096f72812e51c90ed3e2e11a3a280",
"body": null,
"is_bot": false,
"headline": "[CalendarLink][Documentation]",
"author_name": "Matthieu Lempereur",
"author_login": "MrYamous",
"committed_at": "2026-06-11T18:39:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0a4503f285f17c48e36a7e09dc33090826a57a56",
"body": null,
"is_bot": false,
"headline": "[LiveComponent] Avoid 500 errors on malformed hydration payloads",
"author_name": "Pascal CESCON - Amoifr",
"author_login": "Amoifr",
"committed_at": "2026-06-11T12:34:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d7912e6318da931f01c61d7f5e7e764769dfd8d2",
"body": "… upstream publish\" (Kocal)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n Revert \"[Encore] Pin vue to <3.5.36 to workaround broken upstream publish\"\n\nReverts symfony/ux#3673, https://github.com/vuejs/core/issues/14952#issuecomment-4677482782 should have fixed the issue.\n\nCommits\n-------\n\ne8056f854f0 Revert \"[Encore] Pin vue to <3.5.36 to workaround broken upstream publish\"",
"is_bot": false,
"headline": "minor #3675 Revert \"[Encore] Pin vue to <3.5.36 to workaround broken…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-11T05:43:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e8056f854f003e10b44371f43e4d26fa78a5322a",
"body": "…lish\"",
"is_bot": false,
"headline": "Revert \"[Encore] Pin vue to <3.5.36 to workaround broken upstream pub…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-11T05:42:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bfcead6fd70dc4fb468775d4651606e09c76950d",
"body": "This PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n Update pnpm to ^11.5\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | no <!-- please update src/**/CHANGELOG.md files -->\n| Deprecations? | no <!-- if yes, also update UPGRADE-*.md and src/**/CHANG\n[…]\n.com/doc/current/contributing/code/conventions.html#writing-a-changelog-entry\n - Never break backward compatibility (see https://symfony.com/bc).\n-->\n\nCommits\n-------\n\n1133a1f26e4 Update pnpm to ^11.5",
"is_bot": false,
"headline": "minor #3674 Update pnpm to ^11.5 (Kocal)",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-11T05:40:50Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "1133a1f26e4e5b4c8bf7a4db7cd911dc39530697",
"body": null,
"is_bot": false,
"headline": "Update pnpm to ^11.5",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-11T05:27:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0cd3c6066f81a1a1a4563bccf85ba91d022cad5f",
"body": "…ublish (Kocal)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Encore] Pin vue to <3.5.36 to workaround broken upstream publish\n\n| Q | A\n| -------------- | ---\n| Bug fix? | yes\n| New feature? | no <!-- please update src/**/CHANGELOG.md files -->\n| Deprecations\n[…]\nour Encore (based on npm) jobs fail.\n\nTo revert when https://github.com/vuejs/core/issues/14952 is fixed\n\nCommits\n-------\n\n827eb6b0b6b [Encore] Pin vue to <3.5.36 to workaround broken upstream publish",
"is_bot": false,
"headline": "bug #3673 [Encore] Pin vue to <3.5.36 to workaround broken upstream p…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-11T04:48:48Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "827eb6b0b6be449718cbd0a41ff2f0c25343a506",
"body": "vue@3.5.36 shipped ~1h ago, ships with `workspace:*` in constrain version, making our Encore (based on npm) jobs fail.\n\nTo revert when https://github.com/vuejs/core/issues/14952 is fixed",
"is_bot": false,
"headline": "[Encore] Pin vue to <3.5.36 to workaround broken upstream publish",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-11T04:46:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c3921cd203ad09d816aea94542d61bb06c646f80",
"body": "This PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit][Flowbite4] Fix linting issues\n\n| Q | A\n| -------------- | ---\n| Bug fix? | yes\n| New feature? | no <!-- please update src/**/CHANGELOG.md files -->\n| Deprecations? | no <!-- if yes, also update UPGRADE-*.\n[…]\nntributing/code/conventions.html#writing-a-changelog-entry\n - Never break backward compatibility (see https://symfony.com/bc).\n-->\n\nCommits\n-------\n\n753650caea3 [Toolkit][Flowbite4] Fix linting issues",
"is_bot": false,
"headline": "bug #3672 [Toolkit][Flowbite4] Fix linting issues (Kocal)",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-11T04:26:55Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "753650caea39ac56eb06a252e50d9808b3fc7216",
"body": null,
"is_bot": false,
"headline": "[Toolkit][Flowbite4] Fix linting issues",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-11T04:22:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b97a9b13e992f04437605445d6a2225fc11794f5",
"body": "…t manifest (Kocal)\n\nThis PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[Toolkit] Allow declaring kit-global dependencies in kit manifest\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | yes <!-- please update src/**/CHANGELOG.md files -->\n| Deprecat\n[…]\nl npm/importmap packages as available for\nall recipes. Extract the shared parsing into DependencyParser.\n\nCommits\n-------\n\nb54bef6bdd1 [Toolkit] Allow declaring kit-global dependencies in kit manifest",
"is_bot": false,
"headline": "feature #3671 [Toolkit] Allow declaring kit-global dependencies in ki…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-11T04:19:22Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "b54bef6bdd11ec2114aa351f8556f371f3a83caf",
"body": "The `JsImportChecker` only matched JS imports against per-recipe npm/importmap\ndependencies, so kit-global libraries (e.g. flowbite, installed once via the\nkit's ` INSTALL.md) were reported as `js.import.undeclared` on every recipe.\n\nAdd a `dependencies` object (composer/npm/importmap) to the kit manifest and\nhave JsImportChecker treat kit-level npm/importmap packages as available for\nall recipes. Extract the shared parsing into DependencyParser.",
"is_bot": false,
"headline": "[Toolkit] Allow declaring kit-global dependencies in kit manifest",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-11T04:12:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d013d926dbdb80fe577bfe09ae799055edeeec1f",
"body": "This PR was merged into the 3.x branch.\n\nDiscussion\n----------\n\n[CalendarLink] Add E2E tests\n\n| Q | A\n| -------------- | ---\n| Bug fix? | no\n| New feature? | no <!-- please update src/**/CHANGELOG.md files -->\n| Deprecations? | no <!-- if yes, also update UPGRADE-*.md and src/*\n[…]\n/current/contributing/code/conventions.html#writing-a-changelog-entry\n - Never break backward compatibility (see https://symfony.com/bc).\n-->\n\nCommits\n-------\n\n8091fa867d4 [CalendarLink] Add E2E tests",
"is_bot": false,
"headline": "minor #3670 [CalendarLink] Add E2E tests (Kocal)",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-11T03:42:44Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8091fa867d479b3294c2f3120c84f10dd988d186",
"body": null,
"is_bot": false,
"headline": "[CalendarLink] Add E2E tests",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-10T21:21:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4474e2fd7c1acd963492e22c24d57fe10d224780",
"body": "…nd recurrence fields",
"is_bot": false,
"headline": "[Documentation] Update index.rst to correct formatting of reminders a…",
"author_name": "Hugo Alliaume",
"author_login": "Kocal",
"committed_at": "2026-06-05T15:19:52Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 62,
"commits_last_year": 1040,
"latest_release_at": "2026-07-14T16:28:47Z",
"latest_release_tag": "v3.3.0",
"releases_from_tags": false,
"days_since_last_push": 0,
"active_weeks_last_year": 52,
"days_since_latest_release": 11,
"mean_days_between_releases": 13.2
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": true,
"health_percentage": 87,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": true
},
"ecosystem": {
"packages": [
{
"name": "symfony/ux-map",
"exists": true,
"license": "MIT",
"keywords": [
"map",
"maps",
"markers",
"symfony-ux"
],
"ecosystem": "packagist",
"matches_repo": true,
"registry_url": "https://packagist.org/packages/symfony/ux-map",
"is_deprecated": false,
"latest_version": "v3.3.0",
"repository_url": "https://github.com/symfony/ux-map",
"versions_count": 32,
"total_downloads": 254986,
"dependents_count": 6,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": 20203,
"first_published_at": null,
"latest_published_at": "2026-07-09T05:17:17Z",
"latest_version_yanked": null,
"days_since_latest_publish": 16
},
{
"name": "symfony/ux-icons",
"exists": true,
"license": "MIT",
"keywords": [
"twig",
"icons",
"svg",
"symfony-ux"
],
"ecosystem": "packagist",
"matches_repo": true,
"registry_url": "https://packagist.org/packages/symfony/ux-icons",
"is_deprecated": false,
"latest_version": "v3.3.0",
"repository_url": "https://github.com/symfony/ux-icons",
"versions_count": 29,
"total_downloads": 7729925,
"dependents_count": 64,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": 455073,
"first_published_at": null,
"latest_published_at": "2026-06-19T06:54:48Z",
"latest_version_yanked": null,
"days_since_latest_publish": 36
},
{
"name": "symfony/ux-react",
"exists": true,
"license": "MIT",
"keywords": [
"symfony-ux"
],
"ecosystem": "packagist",
"matches_repo": true,
"registry_url": "https://packagist.org/packages/symfony/ux-react",
"is_deprecated": false,
"latest_version": "v3.3.0",
"repository_url": "https://github.com/symfony/ux-react",
"versions_count": 54,
"total_downloads": 1689899,
"dependents_count": 2,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": 61519,
"first_published_at": null,
"latest_published_at": "2026-07-09T05:17:17Z",
"latest_version_yanked": null,
"days_since_latest_publish": 16
},
{
"name": "symfony/ux-turbo",
"exists": true,
"license": "MIT",
"keywords": [
"javascript",
"turbo",
"mercure",
"symfony-ux",
"hotwire",
"turbo-stream"
],
"ecosystem": "packagist",
"matches_repo": true,
"registry_url": "https://packagist.org/packages/symfony/ux-turbo",
"is_deprecated": false,
"latest_version": "v3.3.0",
"repository_url": "https://github.com/symfony/ux-turbo",
"versions_count": 61,
"total_downloads": 8618506,
"dependents_count": 64,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": 455046,
"first_published_at": null,
"latest_published_at": "2026-07-09T05:17:17Z",
"latest_version_yanked": null,
"days_since_latest_publish": 16
},
{
"name": "symfony/ux-native",
"exists": true,
"license": "MIT",
"keywords": [
"native",
"symfony-ux",
"hotwire"
],
"ecosystem": "packagist",
"matches_repo": true,
"registry_url": "https://packagist.org/packages/symfony/ux-native",
"is_deprecated": false,
"latest_version": "v3.3.0",
"repository_url": "https://github.com/symfony/ux-native",
"versions_count": 8,
"total_downloads": 11888,
"dependents_count": 0,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": 3984,
"first_published_at": null,
"latest_published_at": "2026-07-09T05:17:17Z",
"latest_version_yanked": null,
"days_since_latest_publish": 16
},
{
"name": "symfony/ux-notify",
"exists": true,
"license": "MIT",
"keywords": [
"symfony-ux"
],
"ecosystem": "packagist",
"matches_repo": true,
"registry_url": "https://packagist.org/packages/symfony/ux-notify",
"is_deprecated": false,
"latest_version": "v3.3.0",
"repository_url": "https://github.com/symfony/ux-notify",
"versions_count": 54,
"total_downloads": 96538,
"dependents_count": 0,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": 5766,
"first_published_at": null,
"latest_published_at": "2026-07-09T05:17:17Z",
"latest_version_yanked": null,
"days_since_latest_publish": 16
},
{
"name": "symfony/ux-chartjs",
"exists": true,
"license": "MIT",
"keywords": [
"symfony-ux"
],
"ecosystem": "packagist",
"matches_repo": true,
"registry_url": "https://packagist.org/packages/symfony/ux-chartjs",
"is_deprecated": false,
"latest_version": "v3.3.0",
"repository_url": "https://github.com/symfony/ux-chartjs",
"versions_count": 63,
"total_downloads": 3955161,
"dependents_count": 20,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": 177924,
"first_published_at": null,
"latest_published_at": "2026-07-09T05:17:17Z",
"latest_version_yanked": null,
"days_since_latest_publish": 16
},
{
"name": "symfony/ux-toolkit",
"exists": true,
"license": "MIT",
"keywords": [
"twig",
"ui",
"components",
"design-system",
"symfony-ux"
],
"ecosystem": "packagist",
"matches_repo": true,
"registry_url": "https://packagist.org/packages/symfony/ux-toolkit",
"is_deprecated": false,
"latest_version": "v3.3.0",
"repository_url": "https://github.com/symfony/ux-toolkit",
"versions_count": 10,
"total_downloads": 157204,
"dependents_count": 1,
"deprecation_note": null,
"maintainers_count": null,
"monthly_downloads": 37025,
"first_published_at": null,
"latest_published_at": "2026-07-09T05:03:19Z",
"latest_version_yanked": null,
"days_since_latest_publish": 17
}
]
},
"popularity": {
"forks": 425,
"stars": 1068,
"watchers": 31,
"fork_history": {
"days": [
{
"date": "2020-12-04",
"count": 1
},
{
"date": "2020-12-05",
"count": 3
},
{
"date": "2020-12-07",
"count": 1
},
{
"date": "2020-12-10",
"count": 1
},
{
"date": "2020-12-29",
"count": 1
},
{
"date": "2021-01-05",
"count": 1
},
{
"date": "2021-01-23",
"count": 1
},
{
"date": "2021-02-02",
"count": 1
},
{
"date": "2021-02-20",
"count": 1
},
{
"date": "2021-03-02",
"count": 2
},
{
"date": "2021-03-08",
"count": 1
},
{
"date": "2021-03-18",
"count": 1
},
{
"date": "2021-03-23",
"count": 1
},
{
"date": "2021-03-31",
"count": 1
},
{
"date": "2021-04-05",
"count": 2
},
{
"date": "2021-04-07",
"count": 1
},
{
"date": "2021-04-09",
"count": 1
},
{
"date": "2021-04-14",
"count": 1
},
{
"date": "2021-05-03",
"count": 1
},
{
"date": "2021-05-05",
"count": 1
},
{
"date": "2021-05-07",
"count": 1
},
{
"date": "2021-06-16",
"count": 1
},
{
"date": "2021-06-18",
"count": 1
},
{
"date": "2021-06-19",
"count": 2
},
{
"date": "2021-06-22",
"count": 1
},
{
"date": "2021-06-30",
"count": 1
},
{
"date": "2021-07-02",
"count": 1
},
{
"date": "2021-07-05",
"count": 1
},
{
"date": "2021-07-06",
"count": 1
},
{
"date": "2021-07-08",
"count": 1
},
{
"date": "2021-07-13",
"count": 1
},
{
"date": "2021-11-20",
"count": 1
},
{
"date": "2021-11-28",
"count": 1
},
{
"date": "2021-11-29",
"count": 1
},
{
"date": "2021-12-08",
"count": 1
},
{
"date": "2021-12-12",
"count": 1
},
{
"date": "2021-12-15",
"count": 1
},
{
"date": "2021-12-27",
"count": 1
},
{
"date": "2022-01-11",
"count": 1
},
{
"date": "2022-01-12",
"count": 1
},
{
"date": "2022-01-14",
"count": 1
},
{
"date": "2022-01-21",
"count": 1
},
{
"date": "2022-01-23",
"count": 1
},
{
"date": "2022-01-24",
"count": 1
},
{
"date": "2022-01-28",
"count": 1
},
{
"date": "2022-02-09",
"count": 1
},
{
"date": "2022-03-03",
"count": 1
},
{
"date": "2022-03-22",
"count": 1
},
{
"date": "2022-04-23",
"count": 1
},
{
"date": "2022-05-22",
"count": 1
},
{
"date": "2022-05-25",
"count": 1
},
{
"date": "2022-05-29",
"count": 1
},
{
"date": "2022-06-16",
"count": 1
},
{
"date": "2022-06-17",
"count": 1
},
{
"date": "2022-06-18",
"count": 1
},
{
"date": "2022-06-21",
"count": 1
},
{
"date": "2022-06-22",
"count": 1
},
{
"date": "2022-06-29",
"count": 1
},
{
"date": "2022-06-30",
"count": 1
},
{
"date": "2022-07-04",
"count": 2
},
{
"date": "2022-07-05",
"count": 1
},
{
"date": "2022-07-27",
"count": 1
},
{
"date": "2022-08-11",
"count": 1
},
{
"date": "2022-08-27",
"count": 1
},
{
"date": "2022-09-06",
"count": 1
},
{
"date": "2022-09-11",
"count": 1
},
{
"date": "2022-09-12",
"count": 1
},
{
"date": "2022-09-21",
"count": 1
},
{
"date": "2022-09-22",
"count": 1
},
{
"date": "2022-09-24",
"count": 1
},
{
"date": "2022-09-29",
"count": 1
},
{
"date": "2022-10-06",
"count": 1
},
{
"date": "2022-10-09",
"count": 2
},
{
"date": "2022-10-17",
"count": 1
},
{
"date": "2022-10-28",
"count": 1
},
{
"date": "2022-11-07",
"count": 1
},
{
"date": "2022-11-12",
"count": 1
},
{
"date": "2022-11-15",
"count": 1
},
{
"date": "2022-11-18",
"count": 1
},
{
"date": "2022-11-26",
"count": 1
},
{
"date": "2022-11-28",
"count": 1
},
{
"date": "2022-12-04",
"count": 1
},
{
"date": "2022-12-08",
"count": 1
},
{
"date": "2022-12-14",
"count": 1
},
{
"date": "2022-12-15",
"count": 1
},
{
"date": "2022-12-17",
"count": 1
},
{
"date": "2022-12-22",
"count": 1
},
{
"date": "2022-12-26",
"count": 1
},
{
"date": "2023-01-03",
"count": 1
},
{
"date": "2023-01-20",
"count": 1
},
{
"date": "2023-01-26",
"count": 1
},
{
"date": "2023-02-01",
"count": 1
},
{
"date": "2023-02-09",
"count": 1
},
{
"date": "2023-02-20",
"count": 2
},
{
"date": "2023-02-23",
"count": 1
},
{
"date": "2023-02-27",
"count": 1
},
{
"date": "2023-03-01",
"count": 1
},
{
"date": "2023-03-05",
"count": 2
},
{
"date": "2023-03-06",
"count": 1
},
{
"date": "2023-03-15",
"count": 2
},
{
"date": "2023-03-19",
"count": 1
},
{
"date": "2023-03-21",
"count": 1
},
{
"date": "2023-04-11",
"count": 1
},
{
"date": "2023-04-12",
"count": 1
},
{
"date": "2023-04-17",
"count": 1
},
{
"date": "2023-04-19",
"count": 1
},
{
"date": "2023-05-08",
"count": 2
},
{
"date": "2023-05-11",
"count": 1
},
{
"date": "2023-05-15",
"count": 1
},
{
"date": "2023-05-25",
"count": 1
},
{
"date": "2023-06-06",
"count": 2
},
{
"date": "2023-06-08",
"count": 1
},
{
"date": "2023-06-12",
"count": 1
},
{
"date": "2023-06-19",
"count": 1
},
{
"date": "2023-06-20",
"count": 1
},
{
"date": "2023-06-21",
"count": 1
},
{
"date": "2023-06-27",
"count": 2
},
{
"date": "2023-06-30",
"count": 1
},
{
"date": "2023-07-01",
"count": 1
},
{
"date": "2023-07-04",
"count": 1
},
{
"date": "2023-07-09",
"count": 1
},
{
"date": "2023-07-10",
"count": 1
},
{
"date": "2023-07-11",
"count": 1
},
{
"date": "2023-07-20",
"count": 2
},
{
"date": "2023-07-23",
"count": 1
},
{
"date": "2023-07-24",
"count": 1
},
{
"date": "2023-07-25",
"count": 1
},
{
"date": "2023-07-26",
"count": 1
},
{
"date": "2023-08-04",
"count": 1
},
{
"date": "2023-08-07",
"count": 1
},
{
"date": "2023-08-21",
"count": 1
},
{
"date": "2023-08-23",
"count": 1
},
{
"date": "2023-08-24",
"count": 1
},
{
"date": "2023-08-29",
"count": 1
},
{
"date": "2023-08-30",
"count": 1
},
{
"date": "2023-09-01",
"count": 1
},
{
"date": "2023-09-07",
"count": 1
},
{
"date": "2023-09-20",
"count": 1
},
{
"date": "2023-09-22",
"count": 2
},
{
"date": "2023-09-23",
"count": 1
},
{
"date": "2023-09-26",
"count": 3
},
{
"date": "2023-09-27",
"count": 1
},
{
"date": "2023-10-03",
"count": 1
},
{
"date": "2023-10-05",
"count": 1
},
{
"date": "2023-10-08",
"count": 1
},
{
"date": "2023-10-10",
"count": 1
},
{
"date": "2023-10-13",
"count": 1
},
{
"date": "2023-10-16",
"count": 2
},
{
"date": "2023-10-17",
"count": 1
},
{
"date": "2023-10-21",
"count": 1
},
{
"date": "2023-11-01",
"count": 1
},
{
"date": "2023-11-02",
"count": 1
},
{
"date": "2023-11-05",
"count": 1
},
{
"date": "2023-11-08",
"count": 1
},
{
"date": "2023-11-10",
"count": 2
},
{
"date": "2023-11-12",
"count": 1
},
{
"date": "2023-11-13",
"count": 1
},
{
"date": "2023-11-15",
"count": 1
},
{
"date": "2023-11-16",
"count": 1
},
{
"date": "2023-11-23",
"count": 1
},
{
"date": "2023-11-24",
"count": 1
},
{
"date": "2023-11-28",
"count": 2
},
{
"date": "2023-11-29",
"count": 1
},
{
"date": "2023-12-02",
"count": 1
},
{
"date": "2023-12-11",
"count": 1
},
{
"date": "2023-12-21",
"count": 1
},
{
"date": "2023-12-24",
"count": 1
},
{
"date": "2024-01-01",
"count": 1
},
{
"date": "2024-01-30",
"count": 1
},
{
"date": "2024-02-01",
"count": 1
},
{
"date": "2024-02-07",
"count": 1
},
{
"date": "2024-02-09",
"count": 1
},
{
"date": "2024-02-17",
"count": 2
},
{
"date": "2024-02-19",
"count": 1
},
{
"date": "2024-02-22",
"count": 1
},
{
"date": "2024-02-23",
"count": 1
},
{
"date": "2024-03-01",
"count": 1
},
{
"date": "2024-03-05",
"count": 1
},
{
"date": "2024-03-10",
"count": 1
},
{
"date": "2024-03-14",
"count": 1
},
{
"date": "2024-03-24",
"count": 1
},
{
"date": "2024-03-25",
"count": 1
},
{
"date": "2024-03-28",
"count": 1
},
{
"date": "2024-04-04",
"count": 1
},
{
"date": "2024-04-06",
"count": 1
},
{
"date": "2024-04-07",
"count": 1
},
{
"date": "2024-04-09",
"count": 2
},
{
"date": "2024-04-10",
"count": 2
},
{
"date": "2024-04-11",
"count": 1
},
{
"date": "2024-04-15",
"count": 1
},
{
"date": "2024-04-17",
"count": 2
},
{
"date": "2024-04-24",
"count": 3
},
{
"date": "2024-04-28",
"count": 1
},
{
"date": "2024-04-29",
"count": 1
},
{
"date": "2024-04-30",
"count": 1
},
{
"date": "2024-05-03",
"count": 1
},
{
"date": "2024-05-05",
"count": 1
},
{
"date": "2024-05-06",
"count": 2
},
{
"date": "2024-05-09",
"count": 2
},
{
"date": "2024-05-17",
"count": 1
},
{
"date": "2024-05-19",
"count": 1
},
{
"date": "2024-05-20",
"count": 1
},
{
"date": "2024-05-23",
"count": 1
},
{
"date": "2024-05-29",
"count": 1
},
{
"date": "2024-06-03",
"count": 1
},
{
"date": "2024-06-16",
"count": 1
},
{
"date": "2024-06-19",
"count": 1
},
{
"date": "2024-06-28",
"count": 1
},
{
"date": "2024-07-04",
"count": 1
},
{
"date": "2024-07-05",
"count": 1
},
{
"date": "2024-07-08",
"count": 1
},
{
"date": "2024-07-10",
"count": 1
},
{
"date": "2024-07-15",
"count": 1
},
{
"date": "2024-07-17",
"count": 1
},
{
"date": "2024-07-20",
"count": 1
},
{
"date": "2024-07-24",
"count": 1
},
{
"date": "2024-07-25",
"count": 1
},
{
"date": "2024-07-26",
"count": 1
},
{
"date": "2024-08-01",
"count": 2
},
{
"date": "2024-08-07",
"count": 1
},
{
"date": "2024-08-08",
"count": 1
},
{
"date": "2024-08-10",
"count": 1
},
{
"date": "2024-08-12",
"count": 1
},
{
"date": "2024-08-18",
"count": 1
},
{
"date": "2024-08-20",
"count": 1
},
{
"date": "2024-08-24",
"count": 1
},
{
"date": "2024-08-28",
"count": 1
},
{
"date": "2024-08-31",
"count": 1
},
{
"date": "2024-09-02",
"count": 1
},
{
"date": "2024-09-03",
"count": 1
},
{
"date": "2024-09-11",
"count": 3
},
{
"date": "2024-09-19",
"count": 1
},
{
"date": "2024-09-23",
"count": 1
},
{
"date": "2024-09-27",
"count": 1
},
{
"date": "2024-10-02",
"count": 1
},
{
"date": "2024-10-04",
"count": 2
},
{
"date": "2024-10-11",
"count": 2
},
{
"date": "2024-10-15",
"count": 1
},
{
"date": "2024-10-17",
"count": 3
},
{
"date": "2024-10-18",
"count": 1
},
{
"date": "2024-10-19",
"count": 1
},
{
"date": "2024-10-23",
"count": 1
},
{
"date": "2024-10-25",
"count": 1
},
{
"date": "2024-11-02",
"count": 2
},
{
"date": "2024-11-03",
"count": 1
},
{
"date": "2024-11-04",
"count": 2
},
{
"date": "2024-11-14",
"count": 1
},
{
"date": "2024-11-20",
"count": 1
},
{
"date": "2024-12-02",
"count": 1
},
{
"date": "2024-12-05",
"count": 1
},
{
"date": "2024-12-06",
"count": 1
},
{
"date": "2024-12-07",
"count": 2
},
{
"date": "2024-12-17",
"count": 1
},
{
"date": "2024-12-18",
"count": 2
},
{
"date": "2024-12-30",
"count": 3
},
{
"date": "2025-01-01",
"count": 1
},
{
"date": "2025-01-06",
"count": 1
},
{
"date": "2025-01-10",
"count": 1
},
{
"date": "2025-01-17",
"count": 1
},
{
"date": "2025-01-19",
"count": 2
},
{
"date": "2025-01-22",
"count": 1
},
{
"date": "2025-01-25",
"count": 1
},
{
"date": "2025-01-28",
"count": 1
},
{
"date": "2025-01-31",
"count": 2
},
{
"date": "2025-02-02",
"count": 1
},
{
"date": "2025-02-20",
"count": 1
},
{
"date": "2025-02-25",
"count": 1
},
{
"date": "2025-02-27",
"count": 1
},
{
"date": "2025-02-28",
"count": 1
},
{
"date": "2025-03-03",
"count": 1
},
{
"date": "2025-03-06",
"count": 2
},
{
"date": "2025-03-13",
"count": 1
},
{
"date": "2025-03-24",
"count": 1
},
{
"date": "2025-03-25",
"count": 1
},
{
"date": "2025-03-26",
"count": 1
},
{
"date": "2025-03-28",
"count": 1
},
{
"date": "2025-03-29",
"count": 1
},
{
"date": "2025-04-01",
"count": 1
},
{
"date": "2025-04-07",
"count": 1
},
{
"date": "2025-04-10",
"count": 3
},
{
"date": "2025-04-15",
"count": 1
},
{
"date": "2025-04-21",
"count": 1
},
{
"date": "2025-04-29",
"count": 1
},
{
"date": "2025-05-05",
"count": 1
},
{
"date": "2025-05-08",
"count": 1
},
{
"date": "2025-05-22",
"count": 1
},
{
"date": "2025-05-23",
"count": 1
},
{
"date": "2025-05-29",
"count": 1
},
{
"date": "2025-05-31",
"count": 1
},
{
"date": "2025-06-02",
"count": 1
},
{
"date": "2025-06-04",
"count": 1
},
{
"date": "2025-06-12",
"count": 3
},
{
"date": "2025-06-30",
"count": 1
},
{
"date": "2025-07-02",
"count": 1
},
{
"date": "2025-07-03",
"count": 1
},
{
"date": "2025-07-11",
"count": 1
},
{
"date": "2025-07-18",
"count": 1
},
{
"date": "2025-07-23",
"count": 1
},
{
"date": "2025-07-28",
"count": 1
},
{
"date": "2025-07-29",
"count": 1
},
{
"date": "2025-08-05",
"count": 1
},
{
"date": "2025-08-07",
"count": 1
},
{
"date": "2025-08-10",
"count": 1
},
{
"date": "2025-08-16",
"count": 1
},
{
"date": "2025-08-20",
"count": 1
},
{
"date": "2025-08-22",
"count": 2
},
{
"date": "2025-08-24",
"count": 1
},
{
"date": "2025-08-26",
"count": 1
},
{
"date": "2025-09-02",
"count": 1
},
{
"date": "2025-09-05",
"count": 2
},
{
"date": "2025-09-24",
"count": 1
},
{
"date": "2025-10-08",
"count": 1
},
{
"date": "2025-10-17",
"count": 3
},
{
"date": "2025-10-19",
"count": 1
},
{
"date": "2025-11-02",
"count": 1
},
{
"date": "2025-11-05",
"count": 2
},
{
"date": "2025-11-07",
"count": 1
},
{
"date": "2025-11-10",
"count": 1
},
{
"date": "2025-11-11",
"count": 2
},
{
"date": "2025-11-14",
"count": 1
},
{
"date": "2025-11-22",
"count": 1
},
{
"date": "2025-11-23",
"count": 1
},
{
"date": "2025-11-28",
"count": 1
},
{
"date": "2025-11-29",
"count": 2
},
{
"date": "2025-12-12",
"count": 2
},
{
"date": "2026-01-02",
"count": 1
},
{
"date": "2026-01-09",
"count": 1
},
{
"date": "2026-01-11",
"count": 1
},
{
"date": "2026-01-19",
"count": 1
},
{
"date": "2026-01-31",
"count": 1
},
{
"date": "2026-02-11",
"count": 1
},
{
"date": "2026-02-12",
"count": 1
},
{
"date": "2026-02-20",
"count": 3
},
{
"date": "2026-02-24",
"count": 1
},
{
"date": "2026-03-02",
"count": 1
},
{
"date": "2026-03-09",
"count": 1
},
{
"date": "2026-03-12",
"count": 1
},
{
"date": "2026-03-14",
"count": 1
},
{
"date": "2026-03-16",
"count": 1
},
{
"date": "2026-03-19",
"count": 2
},
{
"date": "2026-03-20",
"count": 1
},
{
"date": "2026-03-26",
"count": 1
},
{
"date": "2026-04-07",
"count": 2
},
{
"date": "2026-04-17",
"count": 1
},
{
"date": "2026-04-26",
"count": 2
},
{
"date": "2026-05-01",
"count": 1
},
{
"date": "2026-05-06",
"count": 1
},
{
"date": "2026-05-09",
"count": 1
},
{
"date": "2026-05-18",
"count": 1
},
{
"date": "2026-05-20",
"count": 1
},
{
"date": "2026-05-22",
"count": 1
},
{
"date": "2026-05-26",
"count": 1
},
{
"date": "2026-05-27",
"count": 1
},
{
"date": "2026-05-31",
"count": 1
},
{
"date": "2026-06-11",
"count": 2
},
{
"date": "2026-06-19",
"count": 1
},
{
"date": "2026-06-29",
"count": 1
},
{
"date": "2026-07-01",
"count": 1
},
{
"date": "2026-07-09",
"count": 1
},
{
"date": "2026-07-17",
"count": 1
},
{
"date": "2026-07-25",
"count": 1
}
],
"complete": true,
"collected": 423,
"total_forks": 425
},
"star_history": null,
"open_issues_and_prs": 154
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [],
"has_llms_txt": false,
"has_dockerfile": true,
"has_mcp_signal": false,
"bootstrap_files": [],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [
"src/Autocomplete/assets/tsconfig.json",
"src/Chartjs/assets/tsconfig.json",
"src/Cropperjs/assets/tsconfig.json",
"src/Dropzone/assets/tsconfig.json",
"src/LiveComponent/assets/tsconfig.json",
"src/Map/assets/tsconfig.json",
"src/Map/src/Bridge/Google/assets/tsconfig.json",
"src/Map/src/Bridge/Leaflet/assets/tsconfig.json",
"src/Notify/assets/tsconfig.json",
"src/React/assets/tsconfig.json",
"src/StimulusBundle/assets/tsconfig.json",
"src/Translator/assets/tsconfig.json",
"src/Turbo/assets/tsconfig.json",
"src/Vue/assets/tsconfig.json",
"tsconfig.json"
],
"toolchain_manifests": [],
"largest_source_bytes": 100720,
"source_files_sampled": 1243,
"oversized_source_files": 1,
"agent_instruction_files": [
"AGENTS.md",
"CLAUDE.md"
],
"agent_instruction_max_bytes": 5223
},
"dependencies": {
"manifests": [
"composer.json",
"package.json"
],
"advisories": {
"error": null,
"scope": "repository_graph",
"source": "osv",
"findings": [
{
"name": "basic-ftp",
"direct": false,
"version": "5.2.0",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 8.6,
"advisory_ids": [
"GHSA-6v7q-wjvx-w8wg",
"GHSA-chqc-8p9q-pq6q",
"GHSA-rp42-5vxx-qpwr",
"GHSA-rpmf-866q-6p89"
],
"fixed_version": "5.3.1",
"advisory_count": 4,
"oldest_advisory_days": 108
},
{
"name": "brace-expansion",
"direct": false,
"version": "1.1.12",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3jxr-9vmj-r5cp",
"GHSA-f886-m6hf-6m8v",
"GHSA-mh99-v99m-4gvg"
],
"fixed_version": "5.0.8",
"advisory_count": 3,
"oldest_advisory_days": 121
},
{
"name": "form-data",
"direct": false,
"version": "4.0.4",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-hmw2-7cc7-3qxx"
],
"fixed_version": "4.0.6",
"advisory_count": 1,
"oldest_advisory_days": 40
},
{
"name": "minimatch",
"direct": false,
"version": "3.1.2",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-23c5-xmqv-rm74",
"GHSA-3ppc-4f35-3m26",
"GHSA-7r86-cg39-jmmj"
],
"fixed_version": "10.2.3",
"advisory_count": 3,
"oldest_advisory_days": 157
},
{
"name": "picomatch",
"direct": false,
"version": "2.3.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3v7f-55p6-f55p",
"GHSA-c2c7-rcm5-vvqj"
],
"fixed_version": "4.0.4",
"advisory_count": 2,
"oldest_advisory_days": 122
},
{
"name": "picomatch",
"direct": false,
"version": "4.0.3",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3v7f-55p6-f55p",
"GHSA-c2c7-rcm5-vvqj"
],
"fixed_version": "4.0.4",
"advisory_count": 2,
"oldest_advisory_days": 122
},
{
"name": "postcss",
"direct": false,
"version": "8.5.6",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-6g55-p6wh-862q",
"GHSA-qx2v-qp2m-jg93",
"GHSA-r28c-9q8g-f849"
],
"fixed_version": "8.5.18",
"advisory_count": 3,
"oldest_advisory_days": 92
},
{
"name": "vite",
"direct": false,
"version": "7.3.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-4w7w-66w2-5vf9",
"GHSA-fx2h-pf6j-xcff",
"GHSA-p9ff-h696-f583",
"GHSA-v2wj-q39q-566r",
"GHSA-v6wh-96g9-6wx3"
],
"fixed_version": "8.0.16",
"advisory_count": 5,
"oldest_advisory_days": 110
},
{
"name": "ws",
"direct": false,
"version": "8.18.3",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-58qx-3vcg-4xpx",
"GHSA-96hv-2xvq-fx4p"
],
"fixed_version": "8.21.0",
"advisory_count": 2,
"oldest_advisory_days": 68
},
{
"name": "@hotwired/turbo",
"direct": false,
"version": "8.0.13",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 4.8,
"advisory_ids": [
"GHSA-qppm-g56g-fpvp"
],
"fixed_version": "8.0.21",
"advisory_count": 1,
"oldest_advisory_days": 186
},
{
"name": "ip-address",
"direct": false,
"version": "10.1.0",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": null,
"advisory_ids": [
"GHSA-v2v4-37r5-5v8g"
],
"fixed_version": "10.1.1",
"advisory_count": 1,
"oldest_advisory_days": 81
},
{
"name": "@babel/core",
"direct": false,
"version": "7.28.0",
"severity": "low",
"ecosystem": "npm",
"cvss_score": 3.2,
"advisory_ids": [
"GHSA-4x5r-pxfx-6jf8"
],
"fixed_version": "8.0.0-rc.6",
"advisory_count": 1,
"oldest_advisory_days": 40
},
{
"name": "@babel/core",
"direct": false,
"version": "7.28.3",
"severity": "low",
"ecosystem": "npm",
"cvss_score": 3.2,
"advisory_ids": [
"GHSA-4x5r-pxfx-6jf8"
],
"fixed_version": "8.0.0-rc.6",
"advisory_count": 1,
"oldest_advisory_days": 40
},
{
"name": "esbuild",
"direct": false,
"version": "0.27.3",
"severity": "low",
"ecosystem": "npm",
"cvss_score": 2.5,
"advisory_ids": [
"GHSA-g7r4-m6w7-qqqr"
],
"fixed_version": "0.28.1",
"advisory_count": 1,
"oldest_advisory_days": 43
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"low": 3,
"high": 9,
"moderate": 2
},
"advisory_count": 30,
"affected_count": 14,
"assessed_count": 606,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 145,
"direct_affected_count": 0
},
"ecosystems": [
"npm",
"packagist"
],
"dependencies": [
{
"name": "symfony/asset",
"manifest": "apps/demo-native/composer.json",
"ecosystem": "packagist",
"version_constraint": "8.0.*"
},
{
"name": "symfony/asset-mapper",
"manifest": "apps/demo-native/composer.json",
"ecosystem": "packagist",
"version_constraint": "8.0.*"
},
{
"name": "symfony/console",
"manifest": "apps/demo-native/composer.json",
"ecosystem": "packagist",
"version_constraint": "8.0.*"
},
{
"name": "symfony/dotenv",
"manifest": "apps/demo-native/composer.json",
"ecosystem": "packagist",
"version_constraint": "8.0.*"
},
{
"name": "symfony/flex",
"manifest": "apps/demo-native/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.10"
},
{
"name": "symfony/framework-bundle",
"manifest": "apps/demo-native/composer.json",
"ecosystem": "packagist",
"version_constraint": "8.0.*"
},
{
"name": "symfony/runtime",
"manifest": "apps/demo-native/composer.json",
"ecosystem": "packagist",
"version_constraint": "8.0.*"
},
{
"name": "symfony/stimulus-bundle",
"manifest": "apps/demo-native/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/twig-bundle",
"manifest": "apps/demo-native/composer.json",
"ecosystem": "packagist",
"version_constraint": "8.0.*"
},
{
"name": "symfony/ux-native",
"manifest": "apps/demo-native/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-turbo",
"manifest": "apps/demo-native/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/yaml",
"manifest": "apps/demo-native/composer.json",
"ecosystem": "packagist",
"version_constraint": "8.0.*"
},
{
"name": "twig/extra-bundle",
"manifest": "apps/demo-native/composer.json",
"ecosystem": "packagist",
"version_constraint": "^3.24"
},
{
"name": "twig/string-extra",
"manifest": "apps/demo-native/composer.json",
"ecosystem": "packagist",
"version_constraint": "^3.24"
},
{
"name": "twig/twig",
"manifest": "apps/demo-native/composer.json",
"ecosystem": "packagist",
"version_constraint": "^3.24"
},
{
"name": "doctrine/dbal",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "^3.10.1|^4.4.3"
},
{
"name": "doctrine/doctrine-bundle",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.15.1|^3.2.2"
},
{
"name": "doctrine/orm",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "^3.5.2"
},
{
"name": "symfony/asset",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*|8.1.*"
},
{
"name": "symfony/asset-mapper",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*|8.1.*"
},
{
"name": "symfony/console",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*|8.1.*"
},
{
"name": "symfony/dotenv",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*|8.1.*"
},
{
"name": "symfony/expression-language",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*|8.1.*"
},
{
"name": "symfony/flex",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.8.1"
},
{
"name": "symfony/form",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*|8.1.*"
},
{
"name": "symfony/framework-bundle",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*|8.1.*"
},
{
"name": "symfony/http-client",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*|8.1.*"
},
{
"name": "symfony/intl",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*|8.1.*"
},
{
"name": "symfony/monolog-bundle",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "^3.10|^4.0"
},
{
"name": "symfony/property-access",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*|8.1.*"
},
{
"name": "symfony/property-info",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*|8.1.*"
},
{
"name": "symfony/runtime",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*|8.1.*"
},
{
"name": "symfony/serializer",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*|8.1.*"
},
{
"name": "symfony/stimulus-bundle",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/twig-bundle",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*|8.1.*"
},
{
"name": "symfony/ux-autocomplete",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-calendar-link",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-chartjs",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-cropperjs",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-dropzone",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-google-map",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-icons",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-leaflet-map",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-live-component",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-map",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-native",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-notify",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-react",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-translator",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-turbo",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-twig-component",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-vue",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/yaml",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*|8.1.*"
},
{
"name": "symfonycasts/dynamic-forms",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "^0.2"
},
{
"name": "twig/extra-bundle",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "^3.21"
},
{
"name": "twig/twig",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "^3.21.1"
},
{
"name": "zenstruck/foundry",
"manifest": "apps/e2e/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.8"
},
{
"name": "symfony/console",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*"
},
{
"name": "symfony/dotenv",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*"
},
{
"name": "symfony/flex",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.10"
},
{
"name": "symfony/framework-bundle",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*"
},
{
"name": "symfony/runtime",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*"
},
{
"name": "symfony/stimulus-bundle",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-autocomplete",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-chartjs",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-cropperjs",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-dropzone",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-google-map",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-icons",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-leaflet-map",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-live-component",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-map",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-native",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-notify",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-react",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-translator",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-turbo",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-twig-component",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/ux-vue",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "3.x-dev"
},
{
"name": "symfony/webpack-encore-bundle",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.4"
},
{
"name": "symfony/yaml",
"manifest": "apps/encore/composer.json",
"ecosystem": "packagist",
"version_constraint": "7.4.*"
},
{
"name": "symfony/dependency-injection",
"manifest": "src/Autocomplete/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/deprecation-contracts",
"manifest": "src/Autocomplete/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.5|^3"
},
{
"name": "symfony/http-foundation",
"manifest": "src/Autocomplete/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/http-kernel",
"manifest": "src/Autocomplete/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/property-access",
"manifest": "src/Autocomplete/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/framework-bundle",
"manifest": "src/CalendarLink/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/twig-bundle",
"manifest": "src/CalendarLink/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/uid",
"manifest": "src/CalendarLink/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/config",
"manifest": "src/Chartjs/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/dependency-injection",
"manifest": "src/Chartjs/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/http-kernel",
"manifest": "src/Chartjs/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/stimulus-bundle",
"manifest": "src/Chartjs/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.9.1|^3.0"
},
{
"name": "intervention/image",
"manifest": "src/Cropperjs/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.5"
},
{
"name": "symfony/config",
"manifest": "src/Cropperjs/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/dependency-injection",
"manifest": "src/Cropperjs/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/deprecation-contracts",
"manifest": "src/Cropperjs/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.5|^3"
},
{
"name": "symfony/form",
"manifest": "src/Cropperjs/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/http-kernel",
"manifest": "src/Cropperjs/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/options-resolver",
"manifest": "src/Cropperjs/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/validator",
"manifest": "src/Cropperjs/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/config",
"manifest": "src/Dropzone/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/dependency-injection",
"manifest": "src/Dropzone/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/form",
"manifest": "src/Dropzone/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/http-kernel",
"manifest": "src/Dropzone/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/options-resolver",
"manifest": "src/Dropzone/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/framework-bundle",
"manifest": "src/Icons/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/twig-bundle",
"manifest": "src/Icons/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/deprecation-contracts",
"manifest": "src/LiveComponent/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.5|^3.0"
},
{
"name": "symfony/property-access",
"manifest": "src/LiveComponent/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/property-info",
"manifest": "src/LiveComponent/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/type-info",
"manifest": "src/LiveComponent/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/stimulus-bundle",
"manifest": "src/LiveComponent/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.9|^3.0"
},
{
"name": "symfony/ux-twig-component",
"manifest": "src/LiveComponent/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.33.0|^3.0"
},
{
"name": "twig/twig",
"manifest": "src/LiveComponent/composer.json",
"ecosystem": "packagist",
"version_constraint": "^3.10.3"
},
{
"name": "symfony/stimulus-bundle",
"manifest": "src/Map/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.18.1|^3.0"
},
{
"name": "symfony/asset",
"manifest": "src/Native/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/filesystem",
"manifest": "src/Native/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/process",
"manifest": "src/Native/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/stimulus-bundle",
"manifest": "src/Native/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.18.1|^3.0"
},
{
"name": "symfony/ux-turbo",
"manifest": "src/Native/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.18.1|^3.0"
},
{
"name": "symfony/config",
"manifest": "src/Notify/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/dependency-injection",
"manifest": "src/Notify/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/http-kernel",
"manifest": "src/Notify/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/mercure-bundle",
"manifest": "src/Notify/composer.json",
"ecosystem": "packagist",
"version_constraint": "^0.3.4|^0.4.1"
},
{
"name": "symfony/mercure-notifier",
"manifest": "src/Notify/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/stimulus-bundle",
"manifest": "src/Notify/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.9.1|^3.0"
},
{
"name": "symfony/twig-bundle",
"manifest": "src/Notify/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/stimulus-bundle",
"manifest": "src/React/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.9.1|^3.0"
},
{
"name": "symfony/config",
"manifest": "src/StimulusBundle/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/dependency-injection",
"manifest": "src/StimulusBundle/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/finder",
"manifest": "src/StimulusBundle/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/http-kernel",
"manifest": "src/StimulusBundle/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "twig/twig",
"manifest": "src/StimulusBundle/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.15.3|^3.8"
},
{
"name": "symfony/deprecation-contracts",
"manifest": "src/StimulusBundle/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.0|^3.0"
},
{
"name": "twig/twig",
"manifest": "src/Toolkit/composer.json",
"ecosystem": "packagist",
"version_constraint": "^3.0"
},
{
"name": "symfony/console",
"manifest": "src/Toolkit/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/filesystem",
"manifest": "src/Toolkit/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/framework-bundle",
"manifest": "src/Toolkit/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/string",
"manifest": "src/Toolkit/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/twig-bundle",
"manifest": "src/Toolkit/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/ux-twig-component",
"manifest": "src/Toolkit/composer.json",
"ecosystem": "packagist",
"version_constraint": "^3.1"
},
{
"name": "symfony/yaml",
"manifest": "src/Toolkit/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/console",
"manifest": "src/Translator/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/filesystem",
"manifest": "src/Translator/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/string",
"manifest": "src/Translator/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/translation",
"manifest": "src/Translator/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/stimulus-bundle",
"manifest": "src/Turbo/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.9.1|^3.0"
},
{
"name": "psr/container",
"manifest": "src/TwigComponent/composer.json",
"ecosystem": "packagist",
"version_constraint": "^1.1|^2.0"
},
{
"name": "symfony/deprecation-contracts",
"manifest": "src/TwigComponent/composer.json",
"ecosystem": "packagist",
"version_constraint": "^2.2|^3.0"
},
{
"name": "symfony/event-dispatcher",
"manifest": "src/TwigComponent/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "symfony/property-access",
"manifest": "src/TwigComponent/composer.json",
"ecosystem": "packagist",
"version_constraint": "^7.4|^8.0"
},
{
"name": "twig/twig",
"manifest": "src/TwigComponent/composer.json",
"ecosystem": "packagist",
"version_constraint": "^3.10.3"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "doctrine/dbal",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "doctrine/doctrine-bundle",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "doctrine/orm",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "intervention/image",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "psr/container",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/asset",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/asset-mapper",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/config",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/console",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/dependency-injection",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/deprecation-contracts",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/dotenv",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/event-dispatcher",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/expression-language",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/filesystem",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/finder",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/flex",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/form",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/framework-bundle",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/http-client",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/http-foundation",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/http-kernel",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/intl",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/mercure-bundle",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/mercure-notifier",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/monolog-bundle",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/options-resolver",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/process",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/property-access",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/property-info",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/runtime",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/serializer",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/stimulus-bundle",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/string",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/translation",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/twig-bundle",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/type-info",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/uid",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-autocomplete",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-calendar-link",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-chartjs",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-cropperjs",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-dropzone",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-google-map",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-icons",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-leaflet-map",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-live-component",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-map",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-native",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-notify",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-react",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-translator",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-turbo",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-twig-component",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/ux-vue",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/validator",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/webpack-encore-bundle",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/yaml",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfonycasts/dynamic-forms",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "twig/extra-bundle",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "twig/string-extra",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "twig/twig",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "zenstruck/foundry",
"direct": true,
"version": null,
"ecosystem": "packagist"
},
{
"name": "@adobe/css-tools",
"direct": false,
"version": "4.4.3",
"ecosystem": "npm"
},
{
"name": "@adobe/css-tools",
"direct": false,
"version": "4.4.4",
"ecosystem": "npm"
},
{
"name": "@ampproject/remapping",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "@asamuzakjp/css-color",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "@babel/cli",
"direct": false,
"version": "7.28.3",
"ecosystem": "npm"
},
{
"name": "@babel/code-frame",
"direct": false,
"version": "7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/code-frame",
"direct": false,
"version": "7.29.0",
"ecosystem": "npm"
},
{
"name": "@babel/compat-data",
"direct": false,
"version": "7.28.0",
"ecosystem": "npm"
},
{
"name": "@babel/core",
"direct": false,
"version": "7.28.0",
"ecosystem": "npm"
},
{
"name": "@babel/core",
"direct": false,
"version": "7.28.3",
"ecosystem": "npm"
},
{
"name": "@babel/core",
"direct": false,
"version": "^7.17.0",
"ecosystem": "npm"
},
{
"name": "@babel/generator",
"direct": false,
"version": "7.28.0",
"ecosystem": "npm"
},
{
"name": "@babel/generator",
"direct": false,
"version": "7.28.3",
"ecosystem": "npm"
},
{
"name": "@babel/generator",
"direct": false,
"version": "8.0.0-rc.4",
"ecosystem": "npm"
},
{
"name": "@babel/helper-annotate-as-pure",
"direct": false,
"version": "7.27.3",
"ecosystem": "npm"
},
{
"name": "@babel/helper-compilation-targets",
"direct": false,
"version": "7.27.2",
"ecosystem": "npm"
},
{
"name": "@babel/helper-globals",
"direct": false,
"version": "7.28.0",
"ecosystem": "npm"
},
{
"name": "@babel/helper-module-imports",
"direct": false,
"version": "7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/helper-module-transforms",
"direct": false,
"version": "7.27.3",
"ecosystem": "npm"
},
{
"name": "@babel/helper-module-transforms",
"direct": false,
"version": "7.28.3",
"ecosystem": "npm"
},
{
"name": "@babel/helper-plugin-utils",
"direct": false,
"version": "7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/helper-string-parser",
"direct": false,
"version": "7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/helper-string-parser",
"direct": false,
"version": "8.0.0-rc.5",
"ecosystem": "npm"
},
{
"name": "@babel/helper-validator-identifier",
"direct": false,
"version": "7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/helper-validator-identifier",
"direct": false,
"version": "7.28.5",
"ecosystem": "npm"
},
{
"name": "@babel/helper-validator-identifier",
"direct": false,
"version": "8.0.0-rc.4",
"ecosystem": "npm"
},
{
"name": "@babel/helper-validator-identifier",
"direct": false,
"version": "8.0.0-rc.5",
"ecosystem": "npm"
},
{
"name": "@babel/helper-validator-option",
"direct": false,
"version": "7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/helpers",
"direct": false,
"version": "7.27.6",
"ecosystem": "npm"
},
{
"name": "@babel/helpers",
"direct": false,
"version": "7.28.3",
"ecosystem": "npm"
},
{
"name": "@babel/parser",
"direct": false,
"version": "7.28.0",
"ecosystem": "npm"
},
{
"name": "@babel/parser",
"direct": false,
"version": "7.28.3",
"ecosystem": "npm"
},
{
"name": "@babel/parser",
"direct": false,
"version": "8.0.0-rc.4",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-syntax-jsx",
"direct": false,
"version": "7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-react-display-name",
"direct": false,
"version": "7.28.0",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-react-jsx",
"direct": false,
"version": "7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-react-jsx-development",
"direct": false,
"version": "7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-react-jsx-self",
"direct": false,
"version": "7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-react-jsx-source",
"direct": false,
"version": "7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-react-pure-annotations",
"direct": false,
"version": "7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/preset-env",
"direct": false,
"version": "^7.16.0",
"ecosystem": "npm"
},
{
"name": "@babel/preset-react",
"direct": false,
"version": "7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/preset-react",
"direct": false,
"version": "^7.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/runtime",
"direct": false,
"version": "7.27.6",
"ecosystem": "npm"
},
{
"name": "@babel/runtime",
"direct": false,
"version": "7.28.6",
"ecosystem": "npm"
},
{
"name": "@babel/template",
"direct": false,
"version": "7.27.2",
"ecosystem": "npm"
},
{
"name": "@babel/traverse",
"direct": false,
"version": "7.28.0",
"ecosystem": "npm"
},
{
"name": "@babel/traverse",
"direct": false,
"version": "7.28.3",
"ecosystem": "npm"
},
{
"name": "@babel/types",
"direct": false,
"version": "7.28.1",
"ecosystem": "npm"
},
{
"name": "@babel/types",
"direct": false,
"version": "7.28.2",
"ecosystem": "npm"
},
{
"name": "@babel/types",
"direct": false,
"version": "8.0.0-rc.5",
"ecosystem": "npm"
},
{
"name": "@bundled-es-modules/cookie",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "@bundled-es-modules/statuses",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@bundled-es-modules/tough-cookie",
"direct": false,
"version": "0.1.6",
"ecosystem": "npm"
},
{
"name": "@csstools/color-helpers",
"direct": false,
"version": "5.0.2",
"ecosystem": "npm"
},
{
"name": "@csstools/css-calc",
"direct": false,
"version": "2.1.4",
"ecosystem": "npm"
},
{
"name": "@csstools/css-color-parser",
"direct": false,
"version": "3.0.10",
"ecosystem": "npm"
},
{
"name": "@csstools/css-parser-algorithms",
"direct": false,
"version": "3.0.5",
"ecosystem": "npm"
},
{
"name": "@csstools/css-tokenizer",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "@emnapi/core",
"direct": false,
"version": "1.10.0",
"ecosystem": "npm"
},
{
"name": "@emnapi/runtime",
"direct": false,
"version": "1.10.0",
"ecosystem": "npm"
},
{
"name": "@emnapi/wasi-threads",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/aix-ppc64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/aix-ppc64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-arm",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-arm",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-arm64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-arm64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-x64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-x64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/darwin-arm64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/darwin-arm64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/darwin-x64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/darwin-x64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/freebsd-arm64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/freebsd-arm64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/freebsd-x64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/freebsd-x64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-arm",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-arm",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-arm64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-arm64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-ia32",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-ia32",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-loong64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-loong64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-mips64el",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-mips64el",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-ppc64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-ppc64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-riscv64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-riscv64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-s390x",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-s390x",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-x64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-x64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/netbsd-arm64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/netbsd-arm64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/netbsd-x64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/netbsd-x64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/openbsd-arm64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/openbsd-arm64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/openbsd-x64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/openbsd-x64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/openharmony-arm64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/openharmony-arm64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/sunos-x64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/sunos-x64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-arm64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-arm64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-ia32",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-ia32",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-x64",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-x64",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "@formatjs/ecma402-abstract",
"direct": false,
"version": "2.3.4",
"ecosystem": "npm"
},
{
"name": "@formatjs/fast-memoize",
"direct": false,
"version": "2.2.7",
"ecosystem": "npm"
},
{
"name": "@formatjs/icu-messageformat-parser",
"direct": false,
"version": "2.11.2",
"ecosystem": "npm"
},
{
"name": "@formatjs/icu-skeleton-parser",
"direct": false,
"version": "1.8.14",
"ecosystem": "npm"
},
{
"name": "@formatjs/intl-localematcher",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "@googlemaps/js-api-loader",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "@googlemaps/js-api-loader",
"direct": false,
"version": "^2.0.0",
"ecosystem": "npm"
},
{
"name": "@hotwired/hotwire-native-bridge",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "@hotwired/stimulus",
"direct": false,
"version": "3.2.2",
"ecosystem": "npm"
},
{
"name": "@hotwired/stimulus",
"direct": false,
"version": "^3.0.0",
"ecosystem": "npm"
},
{
"name": "@hotwired/turbo",
"direct": false,
"version": "8.0.13",
"ecosystem": "npm"
},
{
"name": "@hotwired/turbo",
"direct": false,
"version": "^7.1.0 || ^8.0",
"ecosystem": "npm"
},
{
"name": "@hotwired/turbo",
"direct": false,
"version": "^7.1.1 || ^8.0",
"ecosystem": "npm"
},
{
"name": "@inquirer/ansi",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "@inquirer/confirm",
"direct": false,
"version": "5.1.21",
"ecosystem": "npm"
},
{
"name": "@inquirer/core",
"direct": false,
"version": "10.3.2",
"ecosystem": "npm"
},
{
"name": "@inquirer/figures",
"direct": false,
"version": "1.0.15",
"ecosystem": "npm"
},
{
"name": "@inquirer/type",
"direct": false,
"version": "3.0.10",
"ecosystem": "npm"
},
{
"name": "@jridgewell/gen-mapping",
"direct": false,
"version": "0.3.12",
"ecosystem": "npm"
},
{
"name": "@jridgewell/gen-mapping",
"direct": false,
"version": "0.3.13",
"ecosystem": "npm"
},
{
"name": "@jridgewell/resolve-uri",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "@jridgewell/source-map",
"direct": false,
"version": "0.3.11",
"ecosystem": "npm"
},
{
"name": "@jridgewell/sourcemap-codec",
"direct": false,
"version": "1.5.4",
"ecosystem": "npm"
},
{
"name": "@jridgewell/sourcemap-codec",
"direct": false,
"version": "1.5.5",
"ecosystem": "npm"
},
{
"name": "@jridgewell/trace-mapping",
"direct": false,
"version": "0.3.29",
"ecosystem": "npm"
},
{
"name": "@jridgewell/trace-mapping",
"direct": false,
"version": "0.3.30",
"ecosystem": "npm"
},
{
"name": "@jridgewell/trace-mapping",
"direct": false,
"version": "0.3.31",
"ecosystem": "npm"
},
{
"name": "@mswjs/interceptors",
"direct": false,
"version": "0.39.8",
"ecosystem": "npm"
},
{
"name": "@napi-rs/wasm-runtime",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@nicolo-ribaudo/chokidar-2",
"direct": false,
"version": "2.1.8-no-fsevents.3",
"ecosystem": "npm"
},
{
"name": "@open-draft/deferred-promise",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "@open-draft/logger",
"direct": false,
"version": "0.3.0",
"ecosystem": "npm"
},
{
"name": "@open-draft/until",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "@orchidjs/sifter",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@orchidjs/unicode-variants",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@oxc-project/types",
"direct": false,
"version": "0.115.0",
"ecosystem": "npm"
},
{
"name": "@oxc-project/types",
"direct": false,
"version": "0.130.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-android-arm-eabi",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-android-arm64",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-darwin-arm64",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-darwin-x64",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-freebsd-x64",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-arm-gnueabihf",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-arm-musleabihf",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-arm64-gnu",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-arm64-musl",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-ppc64-gnu",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-riscv64-gnu",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-riscv64-musl",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-s390x-gnu",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-x64-gnu",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-linux-x64-musl",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-openharmony-arm64",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-win32-arm64-msvc",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-win32-ia32-msvc",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxfmt/binding-win32-x64-msvc",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-android-arm-eabi",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-android-arm64",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-darwin-arm64",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-darwin-x64",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-freebsd-x64",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-arm-gnueabihf",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-arm-musleabihf",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-arm64-gnu",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-arm64-musl",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-ppc64-gnu",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-riscv64-gnu",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-riscv64-musl",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-s390x-gnu",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-x64-gnu",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-linux-x64-musl",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-openharmony-arm64",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-win32-arm64-msvc",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-win32-ia32-msvc",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@oxlint/binding-win32-x64-msvc",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "@playwright/test",
"direct": false,
"version": "1.58.2",
"ecosystem": "npm"
},
{
"name": "@puppeteer/browsers",
"direct": false,
"version": "2.13.0",
"ecosystem": "npm"
},
{
"name": "@quansync/fs",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-android-arm64",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-android-arm64",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-darwin-arm64",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-darwin-arm64",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-darwin-x64",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-darwin-x64",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-freebsd-x64",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-freebsd-x64",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm-gnueabihf",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm-gnueabihf",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm64-gnu",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm64-gnu",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm64-musl",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm64-musl",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-ppc64-gnu",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-ppc64-gnu",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-s390x-gnu",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-s390x-gnu",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-x64-gnu",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-x64-gnu",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-x64-musl",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-x64-musl",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-openharmony-arm64",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-openharmony-arm64",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-wasm32-wasi",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-wasm32-wasi",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-win32-arm64-msvc",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-win32-arm64-msvc",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-win32-x64-msvc",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-win32-x64-msvc",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rolldown/pluginutils",
"direct": false,
"version": "1.0.0-beta.27",
"ecosystem": "npm"
},
{
"name": "@rolldown/pluginutils",
"direct": false,
"version": "1.0.0-beta.29",
"ecosystem": "npm"
},
{
"name": "@rolldown/pluginutils",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "@rolldown/pluginutils",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-android-arm-eabi",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-android-arm64",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-darwin-arm64",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-darwin-x64",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-freebsd-arm64",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-freebsd-x64",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm-gnueabihf",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm-musleabihf",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm64-gnu",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm64-musl",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-loong64-gnu",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-loong64-musl",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-ppc64-gnu",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-ppc64-musl",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-riscv64-gnu",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-riscv64-musl",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-s390x-gnu",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-x64-gnu",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-x64-musl",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-openbsd-x64",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-openharmony-arm64",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-arm64-msvc",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-ia32-msvc",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-x64-gnu",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-x64-msvc",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "@standard-schema/spec",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@symfony/stimulus-bridge",
"direct": false,
"version": "^3.2.0",
"ecosystem": "npm"
},
{
"name": "@symfony/webpack-encore",
"direct": false,
"version": "^5.0.0",
"ecosystem": "npm"
},
{
"name": "@testing-library/dom",
"direct": false,
"version": "10.4.0",
"ecosystem": "npm"
},
{
"name": "@testing-library/dom",
"direct": false,
"version": "10.4.1",
"ecosystem": "npm"
},
{
"name": "@testing-library/dom",
"direct": false,
"version": "^10.4.0",
"ecosystem": "npm"
},
{
"name": "@testing-library/dom",
"direct": false,
"version": "^10.4.1",
"ecosystem": "npm"
},
{
"name": "@testing-library/jest-dom",
"direct": false,
"version": "6.7.0",
"ecosystem": "npm"
},
{
"name": "@testing-library/jest-dom",
"direct": false,
"version": "6.9.1",
"ecosystem": "npm"
},
{
"name": "@testing-library/jest-dom",
"direct": false,
"version": "^6.6.3",
"ecosystem": "npm"
},
{
"name": "@testing-library/user-event",
"direct": false,
"version": "13.5.0",
"ecosystem": "npm"
},
{
"name": "@testing-library/user-event",
"direct": false,
"version": "14.6.1",
"ecosystem": "npm"
},
{
"name": "@testing-library/user-event",
"direct": false,
"version": "^13.1.9",
"ecosystem": "npm"
},
{
"name": "@testing-library/user-event",
"direct": false,
"version": "^14.6.1",
"ecosystem": "npm"
},
{
"name": "@tootallnate/quickjs-emscripten",
"direct": false,
"version": "0.23.0",
"ecosystem": "npm"
},
{
"name": "@tsdown/css",
"direct": false,
"version": "0.22.0",
"ecosystem": "npm"
},
{
"name": "@tybys/wasm-util",
"direct": false,
"version": "0.10.1",
"ecosystem": "npm"
},
{
"name": "@types/aria-query",
"direct": false,
"version": "5.0.4",
"ecosystem": "npm"
},
{
"name": "@types/babel__core",
"direct": false,
"version": "7.20.5",
"ecosystem": "npm"
},
{
"name": "@types/babel__generator",
"direct": false,
"version": "7.27.0",
"ecosystem": "npm"
},
{
"name": "@types/babel__template",
"direct": false,
"version": "7.4.4",
"ecosystem": "npm"
},
{
"name": "@types/babel__traverse",
"direct": false,
"version": "7.20.7",
"ecosystem": "npm"
},
{
"name": "@types/chai",
"direct": false,
"version": "5.2.3",
"ecosystem": "npm"
},
{
"name": "@types/cookie",
"direct": false,
"version": "0.6.0",
"ecosystem": "npm"
},
{
"name": "@types/deep-eql",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "@types/estree",
"direct": false,
"version": "1.0.8",
"ecosystem": "npm"
},
{
"name": "@types/geojson",
"direct": false,
"version": "7946.0.16",
"ecosystem": "npm"
},
{
"name": "@types/google.maps",
"direct": false,
"version": "3.58.1",
"ecosystem": "npm"
},
{
"name": "@types/google.maps",
"direct": false,
"version": "^3.55.9",
"ecosystem": "npm"
},
{
"name": "@types/hotwired__turbo",
"direct": false,
"version": "8.0.4",
"ecosystem": "npm"
},
{
"name": "@types/hotwired__turbo",
"direct": false,
"version": "^8.0.4",
"ecosystem": "npm"
},
{
"name": "@types/jsesc",
"direct": false,
"version": "2.5.1",
"ecosystem": "npm"
},
{
"name": "@types/leaflet",
"direct": false,
"version": "1.9.20",
"ecosystem": "npm"
},
{
"name": "@types/leaflet",
"direct": false,
"version": "^1.9.12",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "22.19.11",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "25.3.0",
"ecosystem": "npm"
},
{
"name": "@types/node-fetch",
"direct": false,
"version": "2.6.13",
"ecosystem": "npm"
},
{
"name": "@types/node-fetch",
"direct": false,
"version": "^2.6.13",
"ecosystem": "npm"
},
{
"name": "@types/prop-types",
"direct": false,
"version": "15.7.15",
"ecosystem": "npm"
},
{
"name": "@types/react",
"direct": false,
"version": "18.3.23",
"ecosystem": "npm"
},
{
"name": "@types/react",
"direct": false,
"version": "^18.0 || ^19.0",
"ecosystem": "npm"
},
{
"name": "@types/react-dom",
"direct": false,
"version": "18.3.7",
"ecosystem": "npm"
},
{
"name": "@types/react-dom",
"direct": false,
"version": "^18.0 || ^19.0",
"ecosystem": "npm"
},
{
"name": "@types/statuses",
"direct": false,
"version": "2.0.6",
"ecosystem": "npm"
},
{
"name": "@types/tough-cookie",
"direct": false,
"version": "4.0.5",
"ecosystem": "npm"
},
{
"name": "@types/webpack-env",
"direct": false,
"version": "1.18.8",
"ecosystem": "npm"
},
{
"name": "@types/webpack-env",
"direct": false,
"version": "^1.16",
"ecosystem": "npm"
},
{
"name": "@types/yauzl",
"direct": false,
"version": "2.10.3",
"ecosystem": "npm"
},
{
"name": "@vitejs/plugin-react",
"direct": false,
"version": "4.7.0",
"ecosystem": "npm"
},
{
"name": "@vitejs/plugin-react",
"direct": false,
"version": "^4.1.0",
"ecosystem": "npm"
},
{
"name": "@vitejs/plugin-vue",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "@vitejs/plugin-vue",
"direct": false,
"version": "^6.0.0",
"ecosystem": "npm"
},
{
"name": "@vitest/expect",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@vitest/mocker",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@vitest/pretty-format",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@vitest/runner",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@vitest/snapshot",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@vitest/spy",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@vitest/utils",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@vue/compiler-core",
"direct": false,
"version": "3.5.17",
"ecosystem": "npm"
},
{
"name": "@vue/compiler-dom",
"direct": false,
"version": "3.5.17",
"ecosystem": "npm"
},
{
"name": "@vue/compiler-sfc",
"direct": false,
"version": "3.5.17",
"ecosystem": "npm"
},
{
"name": "@vue/compiler-ssr",
"direct": false,
"version": "3.5.17",
"ecosystem": "npm"
},
{
"name": "@vue/reactivity",
"direct": false,
"version": "3.5.17",
"ecosystem": "npm"
},
{
"name": "@vue/runtime-core",
"direct": false,
"version": "3.5.17",
"ecosystem": "npm"
},
{
"name": "@vue/runtime-dom",
"direct": false,
"version": "3.5.17",
"ecosystem": "npm"
},
{
"name": "@vue/server-renderer",
"direct": false,
"version": "3.5.17",
"ecosystem": "npm"
},
{
"name": "@vue/shared",
"direct": false,
"version": "3.5.17",
"ecosystem": "npm"
},
{
"name": "acorn",
"direct": false,
"version": "8.16.0",
"ecosystem": "npm"
},
{
"name": "agent-base",
"direct": false,
"version": "7.1.4",
"ecosystem": "npm"
},
{
"name": "ansi-regex",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "5.2.0",
"ecosystem": "npm"
},
{
"name": "ansis",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "anymatch",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "aria-query",
"direct": false,
"version": "5.3.0",
"ecosystem": "npm"
},
{
"name": "aria-query",
"direct": false,
"version": "5.3.2",
"ecosystem": "npm"
},
{
"name": "assertion-error",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "ast-kit",
"direct": false,
"version": "3.0.0-beta.1",
"ecosystem": "npm"
},
{
"name": "ast-types",
"direct": false,
"version": "0.13.4",
"ecosystem": "npm"
},
{
"name": "asynckit",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "b4a",
"direct": false,
"version": "1.8.0",
"ecosystem": "npm"
},
{
"name": "balanced-match",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "bare-events",
"direct": false,
"version": "2.8.2",
"ecosystem": "npm"
},
{
"name": "bare-fs",
"direct": false,
"version": "4.5.5",
"ecosystem": "npm"
},
{
"name": "bare-os",
"direct": false,
"version": "3.7.0",
"ecosystem": "npm"
},
{
"name": "bare-path",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "bare-stream",
"direct": false,
"version": "2.8.0",
"ecosystem": "npm"
},
{
"name": "bare-url",
"direct": false,
"version": "2.3.2",
"ecosystem": "npm"
},
{
"name": "basic-ftp",
"direct": false,
"version": "5.2.0",
"ecosystem": "npm"
},
{
"name": "binary-extensions",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "birpc",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "1.1.12",
"ecosystem": "npm"
},
{
"name": "braces",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "browserslist",
"direct": false,
"version": "4.25.1",
"ecosystem": "npm"
},
{
"name": "browserslist",
"direct": false,
"version": "4.25.3",
"ecosystem": "npm"
},
{
"name": "buffer-crc32",
"direct": false,
"version": "0.2.13",
"ecosystem": "npm"
},
{
"name": "buffer-from",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "cac",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "call-bind-apply-helpers",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "caniuse-lite",
"direct": false,
"version": "1.0.30001727",
"ecosystem": "npm"
},
{
"name": "caniuse-lite",
"direct": false,
"version": "1.0.30001737",
"ecosystem": "npm"
},
{
"name": "chai",
"direct": false,
"version": "6.2.2",
"ecosystem": "npm"
},
{
"name": "chalk",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "chart.js",
"direct": false,
"version": "3.9.1",
"ecosystem": "npm"
},
{
"name": "chart.js",
"direct": false,
"version": "^3.4.1 || ^4.0",
"ecosystem": "npm"
},
{
"name": "chokidar",
"direct": false,
"version": "3.6.0",
"ecosystem": "npm"
},
{
"name": "cli-width",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "cliui",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "color-convert",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "color-name",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "combined-stream",
"direct": false,
"version": "1.0.8",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "2.20.3",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "6.2.1",
"ecosystem": "npm"
},
{
"name": "concat-map",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "confbox",
"direct": false,
"version": "0.2.4",
"ecosystem": "npm"
},
{
"name": "convert-source-map",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "cookie",
"direct": false,
"version": "0.7.2",
"ecosystem": "npm"
},
{
"name": "core-js",
"direct": false,
"version": "^3.38.0",
"ecosystem": "npm"
},
{
"name": "cropperjs",
"direct": false,
"version": "1.6.2",
"ecosystem": "npm"
},
{
"name": "cropperjs",
"direct": false,
"version": "^1.5.9",
"ecosystem": "npm"
},
{
"name": "cross-fetch",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "css.escape",
"direct": false,
"version": "1.5.1",
"ecosystem": "npm"
},
{
"name": "cssfontparser",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "cssstyle",
"direct": false,
"version": "4.6.0",
"ecosystem": "npm"
},
{
"name": "csstype",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "data-uri-to-buffer",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "data-urls",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "4.4.1",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "4.4.3",
"ecosystem": "npm"
},
{
"name": "decimal.js",
"direct": false,
"version": "10.6.0",
"ecosystem": "npm"
},
{
"name": "defu",
"direct": false,
"version": "6.1.7",
"ecosystem": "npm"
},
{
"name": "degenerator",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "delayed-stream",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "dequal",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "detect-libc",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "dom-accessibility-api",
"direct": false,
"version": "0.5.16",
"ecosystem": "npm"
},
{
"name": "dom-accessibility-api",
"direct": false,
"version": "0.6.3",
"ecosystem": "npm"
},
{
"name": "dts-resolver",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "dunder-proto",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "electron-to-chromium",
"direct": false,
"version": "1.5.187",
"ecosystem": "npm"
},
{
"name": "electron-to-chromium",
"direct": false,
"version": "1.5.208",
"ecosystem": "npm"
},
{
"name": "emoji-regex",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "empathic",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "end-of-stream",
"direct": false,
"version": "1.4.5",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "4.5.0",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "es-define-property",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "es-errors",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "es-module-lexer",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "es-object-atoms",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "es-set-tostringtag",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "esbuild",
"direct": false,
"version": "0.25.8",
"ecosystem": "npm"
},
{
"name": "esbuild",
"direct": false,
"version": "0.27.3",
"ecosystem": "npm"
},
{
"name": "escalade",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "escodegen",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "esprima",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "estraverse",
"direct": false,
"version": "5.3.0",
"ecosystem": "npm"
},
{
"name": "estree-walker",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "estree-walker",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "esutils",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "events-universal",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "expect-type",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "exsolve",
"direct": false,
"version": "1.0.8",
"ecosystem": "npm"
},
{
"name": "extract-zip",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "fast-fifo",
"direct": false,
"version": "1.3.2",
"ecosystem": "npm"
},
{
"name": "fd-slicer",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "fdir",
"direct": false,
"version": "6.5.0",
"ecosystem": "npm"
},
{
"name": "fill-range",
"direct": false,
"version": "7.1.1",
"ecosystem": "npm"
},
{
"name": "form-data",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "fs-readdir-recursive",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "fs.realpath",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "fsevents",
"direct": false,
"version": "2.3.2",
"ecosystem": "npm"
},
{
"name": "fsevents",
"direct": false,
"version": "2.3.3",
"ecosystem": "npm"
},
{
"name": "function-bind",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "gensync",
"direct": false,
"version": "1.0.0-beta.2",
"ecosystem": "npm"
},
{
"name": "get-caller-file",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "get-intrinsic",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "get-proto",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "get-stream",
"direct": false,
"version": "5.2.0",
"ecosystem": "npm"
},
{
"name": "get-tsconfig",
"direct": false,
"version": "4.13.6",
"ecosystem": "npm"
},
{
"name": "get-tsconfig",
"direct": false,
"version": "5.0.0-beta.5",
"ecosystem": "npm"
},
{
"name": "get-uri",
"direct": false,
"version": "6.0.5",
"ecosystem": "npm"
},
{
"name": "glob",
"direct": false,
"version": "7.2.3",
"ecosystem": "npm"
},
{
"name": "glob-parent",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "gopd",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "graphql",
"direct": false,
"version": "16.13.0",
"ecosystem": "npm"
},
{
"name": "has-flag",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "has-symbols",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "has-tostringtag",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "hasown",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "headers-polyfill",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "hookable",
"direct": false,
"version": "6.1.1",
"ecosystem": "npm"
},
{
"name": "html-encoding-sniffer",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "http-proxy-agent",
"direct": false,
"version": "7.0.2",
"ecosystem": "npm"
},
{
"name": "https-proxy-agent",
"direct": false,
"version": "7.0.6",
"ecosystem": "npm"
},
{
"name": "iconv-lite",
"direct": false,
"version": "0.6.3",
"ecosystem": "npm"
},
{
"name": "idiomorph",
"direct": false,
"version": "0.3.0",
"ecosystem": "npm"
},
{
"name": "idiomorph",
"direct": false,
"version": "^0.3.0",
"ecosystem": "npm"
},
{
"name": "import-without-cache",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "indent-string",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "inflight",
"direct": false,
"version": "1.0.6",
"ecosystem": "npm"
},
{
"name": "inherits",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "intl-messageformat",
"direct": false,
"version": "10.7.16",
"ecosystem": "npm"
},
{
"name": "intl-messageformat",
"direct": false,
"version": "^10.5.11",
"ecosystem": "npm"
},
{
"name": "ip-address",
"direct": false,
"version": "10.1.0",
"ecosystem": "npm"
},
{
"name": "is-binary-path",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "is-extglob",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "is-fullwidth-code-point",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "is-glob",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "is-node-process",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "is-number",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "is-potential-custom-element-name",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "jest-canvas-mock",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "js-tokens",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "jsdom",
"direct": false,
"version": "26.1.0",
"ecosystem": "npm"
},
{
"name": "jsdom",
"direct": false,
"version": "^26.1.0",
"ecosystem": "npm"
},
{
"name": "jsesc",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "json5",
"direct": false,
"version": "2.2.3",
"ecosystem": "npm"
},
{
"name": "leaflet",
"direct": false,
"version": "1.9.4",
"ecosystem": "npm"
},
{
"name": "leaflet",
"direct": false,
"version": "^1.9.4",
"ecosystem": "npm"
},
{
"name": "lightningcss",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-android-arm64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-darwin-arm64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-darwin-x64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-freebsd-x64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm-gnueabihf",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm64-gnu",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm64-musl",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-x64-gnu",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-x64-musl",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-win32-arm64-msvc",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-win32-x64-msvc",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lilconfig",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "loose-envify",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "10.4.3",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "7.18.3",
"ecosystem": "npm"
},
{
"name": "lz-string",
"direct": false,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "magic-string",
"direct": false,
"version": "0.30.21",
"ecosystem": "npm"
},
{
"name": "make-dir",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "math-intrinsics",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "mime-db",
"direct": false,
"version": "1.52.0",
"ecosystem": "npm"
},
{
"name": "mime-types",
"direct": false,
"version": "2.1.35",
"ecosystem": "npm"
},
{
"name": "min-indent",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "moo-color",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "msw",
"direct": false,
"version": "2.10.4",
"ecosystem": "npm"
},
{
"name": "mute-stream",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "nanoid",
"direct": false,
"version": "3.3.11",
"ecosystem": "npm"
},
{
"name": "netmask",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "node-fetch",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "node-fetch",
"direct": false,
"version": "^2.6.1",
"ecosystem": "npm"
},
{
"name": "node-releases",
"direct": false,
"version": "2.0.19",
"ecosystem": "npm"
},
{
"name": "normalize-path",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "nwsapi",
"direct": false,
"version": "2.2.20",
"ecosystem": "npm"
},
{
"name": "obug",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "once",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "outvariant",
"direct": false,
"version": "1.4.3",
"ecosystem": "npm"
},
{
"name": "oxfmt",
"direct": false,
"version": "0.41.0",
"ecosystem": "npm"
},
{
"name": "oxlint",
"direct": false,
"version": "1.56.0",
"ecosystem": "npm"
},
{
"name": "pac-proxy-agent",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "pac-resolver",
"direct": false,
"version": "7.0.1",
"ecosystem": "npm"
},
{
"name": "parse5",
"direct": false,
"version": "7.3.0",
"ecosystem": "npm"
},
{
"name": "path-is-absolute",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "path-to-regexp",
"direct": false,
"version": "6.3.0",
"ecosystem": "npm"
},
{
"name": "pathe",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "pend",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "picocolors",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "pify",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "pkg-types",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "playwright",
"direct": false,
"version": "1.58.2",
"ecosystem": "npm"
},
{
"name": "playwright-core",
"direct": false,
"version": "1.58.2",
"ecosystem": "npm"
},
{
"name": "postcss",
"direct": false,
"version": "8.5.6",
"ecosystem": "npm"
},
{
"name": "postcss-load-config",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "pretty-format",
"direct": false,
"version": "27.5.1",
"ecosystem": "npm"
},
{
"name": "progress",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "proxy-agent",
"direct": false,
"version": "6.5.0",
"ecosystem": "npm"
},
{
"name": "proxy-from-env",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "psl",
"direct": false,
"version": "1.15.0",
"ecosystem": "npm"
},
{
"name": "pump",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "punycode",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "quansync",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "querystringify",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "react",
"direct": false,
"version": "18.3.1",
"ecosystem": "npm"
},
{
"name": "react",
"direct": false,
"version": "^18.0",
"ecosystem": "npm"
},
{
"name": "react",
"direct": false,
"version": "^18.0 || ^19.0",
"ecosystem": "npm"
},
{
"name": "react-dom",
"direct": false,
"version": "18.3.1",
"ecosystem": "npm"
},
{
"name": "react-dom",
"direct": false,
"version": "^18.0",
"ecosystem": "npm"
},
{
"name": "react-dom",
"direct": false,
"version": "^18.0 || ^19.0",
"ecosystem": "npm"
},
{
"name": "react-is",
"direct": false,
"version": "17.0.2",
"ecosystem": "npm"
},
{
"name": "react-refresh",
"direct": false,
"version": "0.17.0",
"ecosystem": "npm"
},
{
"name": "readdirp",
"direct": false,
"version": "3.6.0",
"ecosystem": "npm"
},
{
"name": "redent",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "regenerator-runtime",
"direct": false,
"version": "^0.13.9",
"ecosystem": "npm"
},
{
"name": "require-directory",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "requires-port",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "resize-observer-polyfill",
"direct": false,
"version": "1.5.1",
"ecosystem": "npm"
},
{
"name": "resize-observer-polyfill",
"direct": false,
"version": "^1.5.1",
"ecosystem": "npm"
},
{
"name": "resolve-pkg-maps",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "rolldown",
"direct": false,
"version": "1.0.0-rc.9",
"ecosystem": "npm"
},
{
"name": "rolldown",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "rolldown-plugin-dts",
"direct": false,
"version": "0.25.0",
"ecosystem": "npm"
},
{
"name": "rollup",
"direct": false,
"version": "4.59.0",
"ecosystem": "npm"
},
{
"name": "rrweb-cssom",
"direct": false,
"version": "0.8.0",
"ecosystem": "npm"
},
{
"name": "safer-buffer",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "saxes",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "scheduler",
"direct": false,
"version": "0.23.2",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "5.7.2",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "6.3.1",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "7.7.4",
"ecosystem": "npm"
},
{
"name": "siginfo",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "signal-exit",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "slash",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "smart-buffer",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "socks",
"direct": false,
"version": "2.8.7",
"ecosystem": "npm"
},
{
"name": "socks-proxy-agent",
"direct": false,
"version": "8.0.5",
"ecosystem": "npm"
},
{
"name": "source-map",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "source-map-js",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "source-map-support",
"direct": false,
"version": "0.5.21",
"ecosystem": "npm"
},
{
"name": "stackback",
"direct": false,
"version": "0.0.2",
"ecosystem": "npm"
},
{
"name": "statuses",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "std-env",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "streamx",
"direct": false,
"version": "2.23.0",
"ecosystem": "npm"
},
{
"name": "strict-event-emitter",
"direct": false,
"version": "0.5.1",
"ecosystem": "npm"
},
{
"name": "string-width",
"direct": false,
"version": "4.2.3",
"ecosystem": "npm"
},
{
"name": "strip-ansi",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "strip-indent",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "supports-color",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "symbol-tree",
"direct": false,
"version": "3.2.4",
"ecosystem": "npm"
},
{
"name": "tar-fs",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "tar-stream",
"direct": false,
"version": "3.1.7",
"ecosystem": "npm"
},
{
"name": "teex",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "terser",
"direct": false,
"version": "5.43.1",
"ecosystem": "npm"
},
{
"name": "text-decoder",
"direct": false,
"version": "1.2.7",
"ecosystem": "npm"
},
{
"name": "tinybench",
"direct": false,
"version": "2.9.0",
"ecosystem": "npm"
},
{
"name": "tinyexec",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "tinyexec",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "tinyglobby",
"direct": false,
"version": "0.2.15",
"ecosystem": "npm"
},
{
"name": "tinyglobby",
"direct": false,
"version": "0.2.16",
"ecosystem": "npm"
},
{
"name": "tinypool",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "tinyrainbow",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "tldts",
"direct": false,
"version": "6.1.86",
"ecosystem": "npm"
},
{
"name": "tldts-core",
"direct": false,
"version": "6.1.86",
"ecosystem": "npm"
},
{
"name": "to-regex-range",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "tom-select",
"direct": false,
"version": "2.4.3",
"ecosystem": "npm"
},
{
"name": "tom-select",
"direct": false,
"version": "^2.2.2",
"ecosystem": "npm"
},
{
"name": "tough-cookie",
"direct": false,
"version": "4.1.4",
"ecosystem": "npm"
},
{
"name": "tough-cookie",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "tr46",
"direct": false,
"version": "0.0.3",
"ecosystem": "npm"
},
{
"name": "tr46",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "tree-kill",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "tsdown",
"direct": false,
"version": "0.22.0",
"ecosystem": "npm"
},
{
"name": "tslib",
"direct": false,
"version": "2.8.1",
"ecosystem": "npm"
},
{
"name": "tslib",
"direct": false,
"version": "^2.8.1",
"ecosystem": "npm"
},
{
"name": "tsx",
"direct": false,
"version": "4.20.3",
"ecosystem": "npm"
},
{
"name": "type-fest",
"direct": false,
"version": "4.41.0",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "5.8.3",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "^5.8.3",
"ecosystem": "npm"
},
{
"name": "unconfig-core",
"direct": false,
"version": "7.5.0",
"ecosystem": "npm"
},
{
"name": "undici-types",
"direct": false,
"version": "6.21.0",
"ecosystem": "npm"
},
{
"name": "undici-types",
"direct": false,
"version": "7.18.2",
"ecosystem": "npm"
},
{
"name": "universalify",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "unrun",
"direct": false,
"version": "0.2.32",
"ecosystem": "npm"
},
{
"name": "update-browserslist-db",
"direct": false,
"version": "1.1.3",
"ecosystem": "npm"
},
{
"name": "url-parse",
"direct": false,
"version": "1.5.10",
"ecosystem": "npm"
},
{
"name": "vite",
"direct": false,
"version": "7.3.1",
"ecosystem": "npm"
},
{
"name": "vitest",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "vitest",
"direct": false,
"version": "^4.1.0",
"ecosystem": "npm"
},
{
"name": "vitest-canvas-mock",
"direct": false,
"version": "0.3.3",
"ecosystem": "npm"
},
{
"name": "vitest-canvas-mock",
"direct": false,
"version": "^0.3.3",
"ecosystem": "npm"
},
{
"name": "vitest-fetch-mock",
"direct": false,
"version": "0.2.2",
"ecosystem": "npm"
},
{
"name": "vitest-fetch-mock",
"direct": false,
"version": "^0.2.2",
"ecosystem": "npm"
},
{
"name": "vue",
"direct": false,
"version": "3.5.17",
"ecosystem": "npm"
},
{
"name": "vue",
"direct": false,
"version": "^3.0",
"ecosystem": "npm"
},
{
"name": "vue-loader",
"direct": false,
"version": "^17.0.0",
"ecosystem": "npm"
},
{
"name": "w3c-xmlserializer",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "webidl-conversions",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "webidl-conversions",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "webpack",
"direct": false,
"version": "^5.74.0",
"ecosystem": "npm"
},
{
"name": "webpack-cli",
"direct": false,
"version": "^5.1.0",
"ecosystem": "npm"
},
{
"name": "whatwg-encoding",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "whatwg-mimetype",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "whatwg-url",
"direct": false,
"version": "14.2.0",
"ecosystem": "npm"
},
{
"name": "whatwg-url",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "why-is-node-running",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "wrap-ansi",
"direct": false,
"version": "6.2.0",
"ecosystem": "npm"
},
{
"name": "wrap-ansi",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "wrappy",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "ws",
"direct": false,
"version": "8.18.3",
"ecosystem": "npm"
},
{
"name": "xml-name-validator",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "xmlchars",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "y18n",
"direct": false,
"version": "5.0.8",
"ecosystem": "npm"
},
{
"name": "yallist",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "yargs",
"direct": false,
"version": "17.7.2",
"ecosystem": "npm"
},
{
"name": "yargs-parser",
"direct": false,
"version": "21.1.1",
"ecosystem": "npm"
},
{
"name": "yauzl",
"direct": false,
"version": "2.10.0",
"ecosystem": "npm"
},
{
"name": "yoctocolors-cjs",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "doctrine/annotations",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "doctrine/collections",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "doctrine/persistence",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "ext-ctype",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "ext-iconv",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "fakerphp/faker",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "kornrunner/blurhash",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "league/commonmark",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "mtdowling/jmespath.php",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "php",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "php-cs-fixer/shim",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "phpdocumentor/reflection-docblock",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "phpstan/phpdoc-parser",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "phpstan/phpstan",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "phpunit/phpunit",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "psr/log",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "spatie/phpunit-snapshot-assertions",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/browser-kit",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/cache-contracts",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/css-selector",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/debug-bundle",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/dom-crawler",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/maker-bundle",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/messenger",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/phpunit-bridge",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/security-bundle",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/security-core",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/stopwatch",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/var-dumper",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "symfony/web-profiler-bundle",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "tales-from-a-dev/twig-tailwind-extra",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "twig/html-extra",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "vincentlanglet/twig-cs-fixer",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "zenstruck/browser",
"direct": false,
"version": null,
"ecosystem": "packagist"
},
{
"name": "zenstruck/console-test",
"direct": false,
"version": null,
"ecosystem": "packagist"
}
],
"collected": true,
"truncated": false,
"total_count": 751,
"direct_count": 63,
"indirect_count": 688
}
},
"maintainership": {
"issues": {
"open_prs": 55,
"merged_prs": 1891,
"open_issues": 99,
"closed_ratio": 0.922,
"closed_issues": 1168,
"closed_unmerged_prs": 387
},
"bus_factor": 2,
"bot_contributors": 2,
"top_contributors": [
{
"type": "User",
"login": "Kocal",
"commits": 1284,
"avatar_url": "https://avatars.githubusercontent.com/u/2103975?v=4"
},
{
"type": "User",
"login": "weaverryan",
"commits": 1085,
"avatar_url": "https://avatars.githubusercontent.com/u/121003?v=4"
},
{
"type": "User",
"login": "smnandre",
"commits": 438,
"avatar_url": "https://avatars.githubusercontent.com/u/1359581?v=4"
},
{
"type": "User",
"login": "kbond",
"commits": 396,
"avatar_url": "https://avatars.githubusercontent.com/u/127811?v=4"
},
{
"type": "User",
"login": "javiereguiluz",
"commits": 121,
"avatar_url": "https://avatars.githubusercontent.com/u/73419?v=4"
},
{
"type": "User",
"login": "Lustmored",
"commits": 63,
"avatar_url": "https://avatars.githubusercontent.com/u/2358046?v=4"
},
{
"type": "User",
"login": "seb-jean",
"commits": 61,
"avatar_url": "https://avatars.githubusercontent.com/u/12116264?v=4"
},
{
"type": "User",
"login": "tgalopin",
"commits": 54,
"avatar_url": "https://avatars.githubusercontent.com/u/1651494?v=4"
},
{
"type": "User",
"login": "norkunas",
"commits": 36,
"avatar_url": "https://avatars.githubusercontent.com/u/2722872?v=4"
},
{
"type": "User",
"login": "nicolas-grekas",
"commits": 34,
"avatar_url": "https://avatars.githubusercontent.com/u/243674?v=4"
}
],
"contributors_sampled": 98,
"top_contributor_share": 0.315
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"app-demo-native.yaml",
"app-encore.yaml",
"browser-tests.yml",
"code-quality.yaml",
"dist-files-size-diff-comment.yaml",
"dist-files-size-diff.yaml",
"dist-files-unbuilt.yaml",
"doctor-rst.yaml",
"fabbot.yaml",
"prepare-npm-release.yaml",
"release-on-npm.yaml",
"toolkit-lint-kits.yaml",
"unit-tests.yaml",
"zizmor.yaml"
],
"has_docs_dir": false,
"linter_configs": [
".php-cs-fixer.dist.php",
"biome.json"
],
"has_editorconfig": true,
"has_linter_config": true,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"package-lock.json",
"pnpm-lock.yaml"
],
"scorecard": {
"checks": [
{
"name": "Binary-Artifacts",
"score": 10,
"reason": "no binaries found in the repo",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
},
{
"name": "Branch-Protection",
"score": 3,
"reason": "branch protection is not maximal on development and all release branches",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 10,
"reason": "13 out of 13 merged PRs checked by a CI test -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
},
{
"name": "CII-Best-Practices",
"score": 0,
"reason": "no effort to earn an OpenSSF best practices badge detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
},
{
"name": "Code-Review",
"score": 5,
"reason": "Found 7/14 approved changesets -- score normalized to 5",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 10,
"reason": "project has 59 contributing companies or organizations",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
},
{
"name": "Dangerous-Workflow",
"score": 10,
"reason": "no dangerous workflow patterns detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
},
{
"name": "Dependency-Update-Tool",
"score": 10,
"reason": "update tool detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
},
{
"name": "Fuzzing",
"score": 0,
"reason": "project is not fuzzed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
},
{
"name": "License",
"score": 10,
"reason": "license file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
},
{
"name": "Maintained",
"score": 10,
"reason": "30 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
},
{
"name": "Packaging",
"score": 10,
"reason": "packaging workflow detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
},
{
"name": "Pinned-Dependencies",
"score": 6,
"reason": "dependency not pinned by hash detected -- score normalized to 6",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
},
{
"name": "SAST",
"score": 10,
"reason": "SAST tool is run on all commits",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
},
{
"name": "Security-Policy",
"score": 10,
"reason": "security policy file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
},
{
"name": "Signed-Releases",
"score": null,
"reason": "no releases found",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
},
{
"name": "Token-Permissions",
"score": 0,
"reason": "detected GitHub workflow tokens with excessive permissions",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 0,
"reason": "27 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "095f29610b644fa8260ee3407b4cab7bd52ac765",
"ran_at": "2026-07-26T05:06:59Z",
"aggregate_score": 6.6,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": false,
"has_dependabot_config": true
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-25T13:26:58Z",
"oldest_open_prs": [
{
"number": 2155,
"created_at": "2024-09-11T15:52:07Z",
"last_comment_at": "2026-04-14T12:11:28Z",
"last_comment_author": "pentiminax"
},
{
"number": 2486,
"created_at": "2025-01-06T14:19:52Z",
"last_comment_at": "2026-04-14T12:04:41Z",
"last_comment_author": "Kocal"
},
{
"number": 2689,
"created_at": "2025-04-10T14:27:31Z",
"last_comment_at": "2025-09-20T15:00:13Z",
"last_comment_author": "sukei"
},
{
"number": 2767,
"created_at": "2025-05-23T14:41:13Z",
"last_comment_at": "2026-04-14T12:04:17Z",
"last_comment_author": "Kocal"
},
{
"number": 2967,
"created_at": "2025-08-01T06:11:17Z",
"last_comment_at": "2026-04-14T12:04:56Z",
"last_comment_author": "Kocal"
},
{
"number": 3111,
"created_at": "2025-09-29T07:13:31Z",
"last_comment_at": "2026-04-14T19:55:54Z",
"last_comment_author": "github-actions"
},
{
"number": 3188,
"created_at": "2025-11-23T15:26:20Z",
"last_comment_at": "2026-04-14T12:10:26Z",
"last_comment_author": "razbakov"
},
{
"number": 3232,
"created_at": "2025-12-12T18:06:03Z",
"last_comment_at": "2026-04-23T06:23:06Z",
"last_comment_author": "daFish"
},
{
"number": 3302,
"created_at": "2026-01-16T11:52:08Z",
"last_comment_at": "2026-04-21T11:36:00Z",
"last_comment_author": "Wertisdk"
},
{
"number": 3365,
"created_at": "2026-03-07T18:12:15Z",
"last_comment_at": "2026-06-24T18:29:07Z",
"last_comment_author": "mmarton"
},
{
"number": 3395,
"created_at": "2026-03-20T14:19:55Z",
"last_comment_at": "2026-07-16T18:26:36Z",
"last_comment_author": "seb-jean"
},
{
"number": 3441,
"created_at": "2026-04-07T15:14:31Z",
"last_comment_at": "2026-04-14T17:08:02Z",
"last_comment_author": "Prometee"
},
{
"number": 3443,
"created_at": "2026-04-07T16:00:09Z",
"last_comment_at": "2026-04-14T12:14:51Z",
"last_comment_author": "github-actions"
},
{
"number": 3448,
"created_at": "2026-04-08T11:40:30Z",
"last_comment_at": "2026-04-14T11:39:54Z",
"last_comment_author": "Kocal"
},
{
"number": 3463,
"created_at": "2026-04-13T22:21:02Z",
"last_comment_at": "2026-07-14T07:27:37Z",
"last_comment_author": "BafS"
},
{
"number": 3465,
"created_at": "2026-04-14T15:26:55Z",
"last_comment_at": "2026-04-27T09:18:43Z",
"last_comment_author": "github-actions"
},
{
"number": 3469,
"created_at": "2026-04-14T18:09:58Z",
"last_comment_at": "2026-07-24T13:57:05Z",
"last_comment_author": "mlwymore"
},
{
"number": 3473,
"created_at": "2026-04-15T13:34:46Z",
"last_comment_at": "2026-04-23T12:54:55Z",
"last_comment_author": "Amoifr"
},
{
"number": 3479,
"created_at": "2026-04-18T14:30:55Z",
"last_comment_at": "2026-04-19T08:53:02Z",
"last_comment_author": "Amoifr"
},
{
"number": 3480,
"created_at": "2026-04-18T14:31:39Z",
"last_comment_at": "2026-04-19T09:17:42Z",
"last_comment_author": "Amoifr"
}
],
"last_merged_pr_at": "2026-07-24T18:26:02Z",
"ci_last_conclusion": "CANCELLED",
"oldest_open_issues": [
{
"number": 3,
"created_at": "2020-12-03T14:07:36Z",
"last_comment_at": "2021-05-04T07:15:58Z",
"last_comment_author": "stakovicz"
},
{
"number": 7,
"created_at": "2020-12-04T11:36:27Z",
"last_comment_at": "2023-10-23T13:41:46Z",
"last_comment_author": "ytilotti"
},
{
"number": 289,
"created_at": "2022-02-25T10:31:22Z",
"last_comment_at": "2022-03-25T12:30:18Z",
"last_comment_author": "Lustmored"
},
{
"number": 312,
"created_at": "2022-04-17T15:49:06Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 402,
"created_at": "2022-07-26T16:12:54Z",
"last_comment_at": "2025-06-03T20:04:06Z",
"last_comment_author": "Bartheyrman22"
},
{
"number": 441,
"created_at": "2022-08-24T09:14:56Z",
"last_comment_at": "2025-07-24T04:16:46Z",
"last_comment_author": "Kocal"
},
{
"number": 737,
"created_at": "2023-02-14T12:33:22Z",
"last_comment_at": "2024-12-18T17:20:12Z",
"last_comment_author": "smnandre"
},
{
"number": 767,
"created_at": "2023-03-31T07:56:19Z",
"last_comment_at": "2026-06-01T07:34:27Z",
"last_comment_author": "Amoifr"
},
{
"number": 995,
"created_at": "2023-07-09T19:31:42Z",
"last_comment_at": "2025-07-07T22:45:27Z",
"last_comment_author": "smnandre"
},
{
"number": 1021,
"created_at": "2023-07-24T09:25:02Z",
"last_comment_at": "2024-05-25T07:21:00Z",
"last_comment_author": "carsonbot"
},
{
"number": 1022,
"created_at": "2023-07-25T10:33:54Z",
"last_comment_at": "2025-05-23T13:40:55Z",
"last_comment_author": "kbond"
},
{
"number": 1108,
"created_at": "2023-09-12T09:20:27Z",
"last_comment_at": "2023-09-12T10:01:30Z",
"last_comment_author": "norkunas"
},
{
"number": 1212,
"created_at": "2023-10-20T18:16:07Z",
"last_comment_at": "2023-10-25T18:27:44Z",
"last_comment_author": "weaverryan"
},
{
"number": 1244,
"created_at": "2023-11-01T12:00:55Z",
"last_comment_at": "2025-07-14T12:45:59Z",
"last_comment_author": "carsonbot"
},
{
"number": 1384,
"created_at": "2024-01-08T23:50:09Z",
"last_comment_at": "2024-01-11T18:50:35Z",
"last_comment_author": "smnandre"
},
{
"number": 1516,
"created_at": "2024-02-18T12:29:53Z",
"last_comment_at": "2025-10-30T11:28:48Z",
"last_comment_author": "CODEheures"
},
{
"number": 1544,
"created_at": "2024-02-23T16:18:59Z",
"last_comment_at": "2026-03-18T01:44:46Z",
"last_comment_author": "gremo"
},
{
"number": 1589,
"created_at": "2024-03-07T11:40:02Z",
"last_comment_at": "2026-07-25T12:46:01Z",
"last_comment_author": "carsonbot"
},
{
"number": 1620,
"created_at": "2024-03-13T22:06:14Z",
"last_comment_at": "2025-01-29T10:33:35Z",
"last_comment_author": "Kocal"
},
{
"number": 1639,
"created_at": "2024-03-21T09:08:49Z",
"last_comment_at": "2025-07-13T12:43:43Z",
"last_comment_author": "carsonbot"
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/symfony/ux",
"host": "github.com",
"name": "ux",
"owner": "symfony"
},
"metrics": {
"overall": {
"key": "overall",
"band": "good",
"name": "Overall health",
"note": null,
"notes": [],
"value": 84,
"inputs": {
"security": 73,
"vitality": 100,
"community": 88,
"governance": 79,
"engineering": 80
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "excellent",
"name": "Vitality",
"value": 100,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "excellent",
"name": "Development activity",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"commits_last_year": 1040,
"human_commit_share": 0.97,
"days_since_last_push": 0,
"active_weeks_last_year": 52
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 0 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 0
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "52/52 weeks with commits",
"points": 36,
"status": "met",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 52
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "1040 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 1040
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "excellent",
"name": "Release discipline",
"note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"openssf_scorecard_signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 100,
"inputs": {
"releases_count": 62,
"latest_release_tag": "v3.3.0",
"releases_from_tags": false,
"days_since_latest_release": 11,
"mean_days_between_releases": 13.2
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "62 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 62
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 11 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 11
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~13.2 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 13.2
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "no releases found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 10
}
]
},
{
"key": "abandonment",
"band": "excellent",
"name": "Abandonment",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"cap": null,
"state": "maintained",
"guards": [],
"signals": [],
"red_flag": false,
"multiplier_pct": 100,
"declared_reason": null,
"unverified_reason": null,
"unanswered_open_prs": null,
"unanswered_open_issues": null,
"days_since_last_merged_pr": null,
"days_since_last_human_commit": 1,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 1 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 1
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "excellent",
"name": "Community & Adoption",
"value": 88,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "good",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 79,
"inputs": {
"forks": 425,
"stars": 1068,
"watchers": 31,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "1,068 stars",
"points": 49.1,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 1068
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "425 forks",
"points": 21.9,
"status": "partial",
"details": [
{
"code": "forks",
"params": {
"count": 425
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "31 watchers",
"points": 8.2,
"status": "partial",
"details": [
{
"code": "watchers",
"params": {
"count": 31
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "excellent",
"name": "Community health",
"note": null,
"notes": [],
"value": 92,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": true,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (MIT)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "MIT"
}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 18,
"status": "met",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 13.5,
"status": "met",
"details": [],
"max_points": 13.5
},
{
"key": "issue_template",
"name": "Issue template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.2
},
{
"key": "pr_template",
"name": "PR template",
"detail": null,
"points": 6.3,
"status": "met",
"details": [],
"max_points": 6.3
}
]
},
{
"key": "ecosystem_adoption",
"band": "excellent",
"name": "Ecosystem adoption (downloads)",
"note": null,
"notes": [],
"value": 95,
"inputs": {
"packages": [
"symfony/ux-map",
"symfony/ux-icons",
"symfony/ux-react",
"symfony/ux-turbo",
"symfony/ux-native",
"symfony/ux-notify",
"symfony/ux-chartjs",
"symfony/ux-toolkit"
],
"dependents": 157,
"ecosystems": "packagist",
"total_downloads": 22514107,
"monthly_downloads": 1216540
},
"components": [
{
"key": "monthly_downloads",
"name": "Monthly downloads",
"detail": "1,216,540 downloads/month across packagist",
"points": 80,
"status": "met",
"details": [
{
"code": "downloads_monthly",
"params": {
"count": 1216540,
"ecosystems": "packagist"
}
}
],
"max_points": 80
},
{
"key": "registry_dependents",
"name": "Registry dependents",
"detail": "157 packages depend on it",
"points": 14.7,
"status": "partial",
"details": [
{
"code": "registry_dependents",
"params": {
"count": 157
}
}
],
"max_points": 20
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "good",
"name": "Sustainability & Governance",
"value": 79,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "moderate",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 64,
"inputs": {
"bus_factor": 2,
"contributors_sampled": 98,
"top_contributor_share": 0.315
},
"components": [
{
"key": "bus_factor",
"name": "Bus factor",
"detail": "2 contributor(s) cover half of all commits",
"points": 25.2,
"status": "partial",
"details": [
{
"code": "bus_factor",
"params": {
"count": 2
}
}
],
"max_points": 54
},
{
"key": "commit_distribution",
"name": "Commit distribution",
"detail": "top contributor authored 32% of commits",
"points": 15.4,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 32
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "98 contributors",
"points": 13.5,
"status": "met",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 98
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 59 contributing companies or organizations",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "good",
"name": "Issue & PR responsiveness",
"note": null,
"notes": [],
"value": 82,
"inputs": {
"merged_prs": 1891,
"open_issues": 99,
"closed_issues": 1168,
"issue_closed_ratio": 0.922,
"closed_unmerged_prs": 387
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "92% of issues closed",
"points": 43.1,
"status": "partial",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 92
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "1891/2278 decided PRs merged",
"points": 31.8,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 1891,
"decided": 2278
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 7/14 approved changesets -- score normalized to 5",
"points": 7.5,
"status": "partial",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "good",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 79,
"inputs": {
"followers": 2177,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "symfony",
"public_repos": 414,
"account_age_days": 6119
},
"components": [
{
"key": "ownership_backing",
"name": "Ownership backing",
"detail": "organization-owned",
"points": 30,
"status": "met",
"details": [
{
"code": "owner_organization",
"params": {}
}
],
"max_points": 30
},
{
"key": "verified_domain",
"name": "Verified domain",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "owner_reach",
"name": "Owner reach",
"detail": "2,177 followers of symfony",
"points": 24,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 2177,
"login": "symfony"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "414 public repos, account ~16 yr old",
"points": 25,
"status": "met",
"details": [
{
"code": "public_repos",
"params": {
"count": 414
}
},
{
"code": "account_age_years",
"params": {
"years": 16
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"symfony/ux-map",
"symfony/ux-icons",
"symfony/ux-react",
"symfony/ux-turbo",
"symfony/ux-native",
"symfony/ux-notify",
"symfony/ux-chartjs",
"symfony/ux-toolkit"
],
"ecosystems": "packagist",
"any_deprecated": false,
"min_days_since_publish": 16
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "8 package(s) on packagist",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 8,
"ecosystems": "packagist"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 16 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 16
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "63 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 63
}
}
],
"max_points": 20
},
{
"key": "not_deprecated",
"name": "Not deprecated",
"detail": "active, not deprecated or yanked",
"points": 20,
"status": "met",
"details": [
{
"code": "package_not_deprecated",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
},
{
"key": "engineering",
"band": "good",
"name": "Engineering Quality",
"value": 80,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "excellent",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 90,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": true,
"has_linter_config": true,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "14 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 14
}
}
],
"max_points": 24
},
{
"key": "tests_present",
"name": "Tests present",
"detail": null,
"points": 24,
"status": "met",
"details": [],
"max_points": 24
},
{
"key": "linter_config",
"name": "Linter config",
"detail": ".php-cs-fixer.dist.php, biome.json",
"points": 16,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".php-cs-fixer.dist.php, biome.json"
}
}
],
"max_points": 16
},
{
"key": "pre_commit_hooks",
"name": "Pre-commit hooks",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 9.6
},
{
"key": "editorconfig",
"name": ".editorconfig",
"detail": null,
"points": 6.4,
"status": "met",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "13 out of 13 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "moderate",
"name": "Documentation",
"note": null,
"notes": [],
"value": 65,
"inputs": {
"topics": [
"symfony",
"javascript",
"hacktoberfest"
],
"has_wiki": false,
"homepage": "https://ux.symfony.com/",
"has_readme": true,
"has_docs_dir": false,
"has_description": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 30,
"status": "met",
"details": [],
"max_points": 30
},
{
"key": "documentation_directory",
"name": "Documentation directory",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": "https://ux.symfony.com/",
"points": 15,
"status": "met",
"details": [],
"max_points": 15
},
{
"key": "repository_description",
"name": "Repository description",
"detail": null,
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "topics",
"name": "Topics",
"detail": "3 topics",
"points": 10,
"status": "met",
"details": [
{
"code": "topics_count",
"params": {
"count": 3
}
}
],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
}
],
"description": "Are baseline engineering and documentation practices in place?"
},
{
"key": "security",
"band": "good",
"name": "Security",
"value": 73,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "moderate",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 66,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 17,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 1,
"scorecard_aggregate": 6.6
},
"components": [
{
"key": "binary_artifacts",
"name": "Binary-Artifacts",
"detail": "no binaries found in the repo",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "branch_protection",
"name": "Branch-Protection",
"detail": "branch protection is not maximal on development and all release branches",
"points": 2.2,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "13 out of 13 merged PRs checked by a CI test -- score normalized to 10",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "cii_best_practices",
"name": "CII-Best-Practices",
"detail": "no effort to earn an OpenSSF best practices badge detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 2.5
},
{
"key": "code_review",
"name": "Code-Review",
"detail": "Found 7/14 approved changesets -- score normalized to 5",
"points": 3.8,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 59 contributing companies or organizations",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "dangerous_workflow",
"name": "Dangerous-Workflow",
"detail": "no dangerous workflow patterns detected",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "dependency_update_tool",
"name": "Dependency-Update-Tool",
"detail": "update tool detected",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "fuzzing",
"name": "Fuzzing",
"detail": "project is not fuzzed",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "license",
"name": "License",
"detail": "license file detected",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "30 commit(s) and 8 issue activity found in the last 90 days -- score normalized to 10",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "packaging",
"name": "Packaging",
"detail": "packaging workflow detected",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "pinned_dependencies",
"name": "Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 6",
"points": 3,
"status": "partial",
"details": [],
"max_points": 5
},
{
"key": "sast",
"name": "SAST",
"detail": "SAST tool is run on all commits",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "security_policy",
"name": "Security-Policy",
"detail": "security policy file detected",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "signed_releases",
"name": "Signed-Releases",
"detail": "no releases found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 7.5
},
{
"key": "token_permissions",
"name": "Token-Permissions",
"detail": "detected GitHub workflow tokens with excessive permissions",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "vulnerabilities",
"name": "Vulnerabilities",
"detail": "27 existing vulnerabilities detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "excellent",
"name": "Dependency advisories",
"note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories, No advisories left outstanding. Remaining weights renormalized. Matched 606 resolved dependencies against OSV; 145 could not be assessed (no resolved version, an unsupported ecosystem, or beyond the reported package list). This repository publishes no package the index resolves, so the repository dependency graph was assessed instead. That graph mixes development and test pins with shipped dependencies, so only the declared runtime dependencies are scored; transitive findings are reported as context and excluded from the score. Reachability is not analyzed.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"indirect_dependencies_free_of_known_advisories",
"no_advisories_left_outstanding"
]
}
},
{
"code": "weights_renormalized",
"params": {}
},
{
"code": "advisories_scope_repository",
"params": {
"assessed": 606
}
},
{
"code": "advisories_unassessed",
"params": {
"count": 145
}
},
{
"code": "advisories_repo_graph_caveat",
"params": {}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 100,
"inputs": {
"source": "osv",
"advisories": 30,
"affected_packages": 14,
"assessed_packages": 606,
"unassessed_packages": 145,
"affected_by_severity": "high 9, moderate 2, low 3",
"direct_affected_packages": 0
},
"components": [
{
"key": "direct_dependencies_free_of_known_advisories",
"name": "Direct dependencies free of known advisories",
"detail": "no direct dependency carries a known advisory",
"points": 35,
"status": "met",
"details": [
{
"code": "no_direct_advisories",
"params": {}
}
],
"max_points": 35
},
{
"key": "indirect_dependencies_free_of_known_advisories",
"name": "Indirect dependencies free of known advisories",
"detail": "transitive set not separable from development and test dependencies in this scope",
"points": 0,
"status": "excluded",
"details": [
{
"code": "advisories_scope_not_separable",
"params": {}
}
],
"max_points": 25
},
{
"key": "no_advisories_left_outstanding",
"name": "No advisories left outstanding",
"detail": "no advisory carries a publication date",
"points": 0,
"status": "excluded",
"details": [
{
"code": "advisories_no_publication_date",
"params": {}
}
],
"max_points": 40
}
]
},
{
"key": "malicious_dependencies",
"band": "excellent",
"name": "Malicious dependencies",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"source": "osv",
"meaning": "reported as a malicious package by the OpenSSF corpus; the remedy is removal or moving off the compromised name, never an upgrade of the same artifact. Versions the registry has since pulled are listed but not scored",
"packages": [],
"red_flag": false,
"assessed_packages": 606,
"malicious_packages": 0,
"direct_malicious_packages": 0,
"withdrawn_malicious_packages": 0,
"installable_malicious_packages": 0
},
"components": [
{
"key": "no_dependency_reported_as_a_malicious_package",
"name": "No dependency reported as a malicious package",
"detail": "no dependency is reported as a malicious package",
"points": 100,
"status": "met",
"details": [
{
"code": "no_malicious_dependencies",
"params": {}
}
],
"max_points": 100
}
]
},
{
"key": "high_risk_jurisdiction_exposure",
"band": "excellent",
"name": "High-Risk Jurisdiction Exposure",
"note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
"notes": [
{
"code": "jurisdiction_evidence_limits",
"params": {}
}
],
"value": 100,
"inputs": {
"meaning": "self-published location evidence; not nationality or citizenship",
"red_flag": false,
"exposures": [],
"policy_countries": [
"Russia",
"Iran",
"North Korea"
],
"review_only_matches": 0,
"assessed_self_published_locations": 23
},
"components": [
{
"key": "policy_exposure_multiplier",
"name": "Policy exposure multiplier",
"detail": "no confirmed policy-scope location match",
"points": 100,
"status": "met",
"details": [
{
"code": "jurisdiction_no_match",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
},
{
"key": "ai_readiness",
"band": "good",
"name": "AI Readiness",
"value": 74,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "good",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 79,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 0.639,
"agent_instruction_files": [
"AGENTS.md",
"CLAUDE.md"
],
"agent_instruction_max_bytes": 5223
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "AGENTS.md, CLAUDE.md",
"points": 45,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "AGENTS.md, CLAUDE.md"
}
}
],
"max_points": 45
},
{
"key": "machine_readable_docs_llms_txt",
"name": "Machine-readable docs (llms.txt)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "legible_commit_history",
"name": "Legible commit history",
"detail": "62 of 97 human commits state their intent (structured subject or explanatory body)",
"points": 34.1,
"status": "partial",
"details": [
{
"code": "legible_history",
"params": {
"legible": 62,
"sampled": 97
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "moderate",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 68,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"package-lock.json",
"pnpm-lock.yaml"
],
"has_dockerfile": true,
"typed_language": false,
"bootstrap_files": [],
"has_devcontainer": false,
"has_linter_config": true,
"typecheck_configs": [
"src/Autocomplete/assets/tsconfig.json",
"src/Chartjs/assets/tsconfig.json",
"src/Cropperjs/assets/tsconfig.json",
"src/Dropzone/assets/tsconfig.json",
"src/LiveComponent/assets/tsconfig.json",
"src/Map/assets/tsconfig.json",
"src/Map/src/Bridge/Google/assets/tsconfig.json",
"src/Map/src/Bridge/Leaflet/assets/tsconfig.json",
"src/Notify/assets/tsconfig.json",
"src/React/assets/tsconfig.json",
"src/StimulusBundle/assets/tsconfig.json",
"src/Translator/assets/tsconfig.json",
"src/Turbo/assets/tsconfig.json",
"src/Vue/assets/tsconfig.json",
"tsconfig.json"
],
"agent_commit_share": 0,
"toolchain_manifests": [],
"dependency_bot_commit_share": 0.01
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 18
},
{
"key": "automated_tests",
"name": "Automated tests",
"detail": null,
"points": 22,
"status": "met",
"details": [],
"max_points": 22
},
{
"key": "lint_format_config",
"name": "Lint / format config",
"detail": ".php-cs-fixer.dist.php, biome.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".php-cs-fixer.dist.php, biome.json"
}
}
],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "src/Autocomplete/assets/tsconfig.json, src/Chartjs/assets/tsconfig.json, src/Cropperjs/assets/tsconfig.json, src/Dropzone/assets/tsconfig.json, src/LiveComponent/assets/tsconfig.json, src/Map/assets/tsconfig.json, src/Map/src/Bridge/Google/assets/tsconfig.json, src/Map/src/Bridge/Leaflet/assets/tsconfig.json, src/Notify/assets/tsconfig.json, src/React/assets/tsconfig.json, src/StimulusBundle/assets/tsconfig.json, src/Translator/assets/tsconfig.json, src/Turbo/assets/tsconfig.json, src/Vue/assets/tsconfig.json, tsconfig.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "src/Autocomplete/assets/tsconfig.json, src/Chartjs/assets/tsconfig.json, src/Cropperjs/assets/tsconfig.json, src/Dropzone/assets/tsconfig.json, src/LiveComponent/assets/tsconfig.json, src/Map/assets/tsconfig.json, src/Map/src/Bridge/Google/assets/tsconfig.json, src/Map/src/Bridge/Leaflet/assets/tsconfig.json, src/Notify/assets/tsconfig.json, src/React/assets/tsconfig.json, src/StimulusBundle/assets/tsconfig.json, src/Translator/assets/tsconfig.json, src/Turbo/assets/tsconfig.json, src/Vue/assets/tsconfig.json, tsconfig.json"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "Dockerfile, lockfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "Dockerfile, lockfile"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "no agent-authored commits among the last 100",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_authored_commits",
"params": {
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "1 of the last 100 commits are automated dependency updates",
"points": 8,
"status": "met",
"details": [
{
"code": "dependency_bot_commits",
"params": {
"count": 1,
"sampled": 100
}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 6",
"points": 6,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "good",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 82,
"inputs": {
"primary_language": "PHP",
"largest_source_bytes": 100720,
"source_files_sampled": 1243,
"oversized_source_files": 1
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "PHP with type-check config (src/Autocomplete/assets/tsconfig.json, src/Chartjs/assets/tsconfig.json, src/Cropperjs/assets/tsconfig.json, src/Dropzone/assets/tsconfig.json, src/LiveComponent/assets/tsconfig.json, src/Map/assets/tsconfig.json, src/Map/src/Bridge/Google/assets/tsconfig.json, src/Map/src/Bridge/Leaflet/assets/tsconfig.json, src/Notify/assets/tsconfig.json, src/React/assets/tsconfig.json, src/StimulusBundle/assets/tsconfig.json, src/Translator/assets/tsconfig.json, src/Turbo/assets/tsconfig.json, src/Vue/assets/tsconfig.json, tsconfig.json)",
"points": 27,
"status": "partial",
"details": [
{
"code": "typecheck_config_language",
"params": {
"files": "src/Autocomplete/assets/tsconfig.json, src/Chartjs/assets/tsconfig.json, src/Cropperjs/assets/tsconfig.json, src/Dropzone/assets/tsconfig.json, src/LiveComponent/assets/tsconfig.json, src/Map/assets/tsconfig.json, src/Map/src/Bridge/Google/assets/tsconfig.json, src/Map/src/Bridge/Leaflet/assets/tsconfig.json, src/Notify/assets/tsconfig.json, src/React/assets/tsconfig.json, src/StimulusBundle/assets/tsconfig.json, src/Translator/assets/tsconfig.json, src/Turbo/assets/tsconfig.json, src/Vue/assets/tsconfig.json, tsconfig.json",
"language": "PHP"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "1/1243 source files over 60KB",
"points": 55,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 1243,
"oversized": 1
}
}
],
"max_points": 55
}
]
}
],
"description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
}
],
"metrics_version": "1.13.0"
},
"warnings": [
"Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token",
"Could not fetch packagist package 'symfony/ux' from its registry"
],
"report_type": "repository",
"generated_at": "2026-07-26T05:07:26.502781Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/s/symfony/ux.svg",
"full_name": "symfony/ux",
"license_state": "standard",
"license_spdx": "MIT"
}