Informe JSON sin procesar legible por máquina
{
"data": {
"repo": {
"topics": [
"carbon-design-system",
"svelte",
"design-system",
"carbon",
"svelte-components",
"component-library",
"typescript",
"ui-library",
"ui-components"
],
"is_fork": false,
"size_kb": 36414,
"has_wiki": false,
"homepage": "https://svelte.carbondesignsystem.com",
"languages": {
"HTML": 27318,
"SCSS": 308342,
"Svelte": 1386710,
"JavaScript": 129904,
"TypeScript": 2375751
},
"pushed_at": "2026-07-19T22:39:57Z",
"created_at": "2019-12-15T18:16:39Z",
"owner_type": "Organization",
"updated_at": "2026-07-22T15:48:14Z",
"description": "Svelte implementation of the Carbon Design System",
"is_archived": false,
"is_disabled": false,
"license_spdx": "Apache-2.0",
"default_branch": "master",
"license_spdx_raw": "Apache-2.0",
"primary_language": "TypeScript",
"significant_languages": [
"TypeScript",
"Svelte"
]
},
"owner": {
"blog": "https://carbondesignsystem.com/",
"name": "Carbon Design System",
"type": "Organization",
"login": "carbon-design-system",
"company": null,
"location": null,
"followers": 911,
"avatar_url": "https://avatars.githubusercontent.com/u/25179978?v=4",
"created_at": "2017-01-17T16:25:30Z",
"is_verified": null,
"public_repos": 120,
"account_age_days": 3473
},
"license": {
"state": "standard",
"spdx_id": "Apache-2.0",
"raw_spdx": "Apache-2.0",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v0.110.1",
"kind": "patch",
"published_at": "2026-07-17T17:17:23Z"
},
{
"tag": "v0.110.0",
"kind": "minor",
"published_at": "2026-07-10T15:13:43Z"
},
{
"tag": "v0.109.0",
"kind": "minor",
"published_at": "2026-06-15T16:43:51Z"
},
{
"tag": "v0.108.1",
"kind": "patch",
"published_at": "2026-06-08T03:18:14Z"
},
{
"tag": "v0.108.0",
"kind": "minor",
"published_at": "2026-06-05T23:44:46Z"
},
{
"tag": "v0.107.1",
"kind": "patch",
"published_at": "2026-05-02T17:08:43Z"
},
{
"tag": "v0.107.0",
"kind": "minor",
"published_at": "2026-04-26T19:28:39Z"
},
{
"tag": "v0.106.2",
"kind": "patch",
"published_at": "2026-04-20T16:26:03Z"
},
{
"tag": "v0.106.1",
"kind": "patch",
"published_at": "2026-04-16T16:21:02Z"
},
{
"tag": "v0.106.0",
"kind": "minor",
"published_at": "2026-04-09T02:05:48Z"
},
{
"tag": "v0.105.1",
"kind": "patch",
"published_at": "2026-04-01T01:43:45Z"
},
{
"tag": "v0.105.0",
"kind": "minor",
"published_at": "2026-03-28T20:32:36Z"
},
{
"tag": "v0.104.0",
"kind": "minor",
"published_at": "2026-03-28T17:05:09Z"
},
{
"tag": "v0.103.0",
"kind": "minor",
"published_at": "2026-03-09T16:43:48Z"
},
{
"tag": "v0.102.0",
"kind": "minor",
"published_at": "2026-03-07T18:11:52Z"
},
{
"tag": "v0.101.4",
"kind": "patch",
"published_at": "2026-02-26T23:49:28Z"
},
{
"tag": "v0.101.3",
"kind": "patch",
"published_at": "2026-02-25T21:03:34Z"
},
{
"tag": "v0.101.2",
"kind": "patch",
"published_at": "2026-02-23T19:20:31Z"
},
{
"tag": "v0.101.1",
"kind": "patch",
"published_at": "2026-02-21T17:50:10Z"
},
{
"tag": "v0.101.0",
"kind": "minor",
"published_at": "2026-02-16T18:58:46Z"
},
{
"tag": "v0.100.0",
"kind": "minor",
"published_at": "2026-02-13T14:52:43Z"
},
{
"tag": "v0.99.3",
"kind": "patch",
"published_at": "2026-02-03T16:46:01Z"
},
{
"tag": "v0.99.2",
"kind": "patch",
"published_at": "2026-02-02T14:02:50Z"
},
{
"tag": "v0.99.1",
"kind": "patch",
"published_at": "2026-01-28T02:51:42Z"
},
{
"tag": "v0.99.0",
"kind": "minor",
"published_at": "2026-01-27T02:32:56Z"
},
{
"tag": "v0.98.8",
"kind": "patch",
"published_at": "2026-01-19T19:40:17Z"
},
{
"tag": "v0.98.7",
"kind": "patch",
"published_at": "2026-01-19T17:40:45Z"
},
{
"tag": "v0.98.6",
"kind": "patch",
"published_at": "2026-01-18T18:45:39Z"
},
{
"tag": "v0.98.5",
"kind": "patch",
"published_at": "2026-01-17T21:54:26Z"
},
{
"tag": "v0.98.4",
"kind": "patch",
"published_at": "2026-01-17T19:49:28Z"
},
{
"tag": "v0.97.3",
"kind": "patch",
"published_at": "2026-01-17T19:49:04Z"
},
{
"tag": "v0.96.3",
"kind": "patch",
"published_at": "2026-01-17T19:48:26Z"
},
{
"tag": "v0.98.3",
"kind": "patch",
"published_at": "2026-01-17T18:44:43Z"
},
{
"tag": "v0.97.2",
"kind": "patch",
"published_at": "2026-01-17T18:44:03Z"
},
{
"tag": "v0.96.2",
"kind": "patch",
"published_at": "2026-01-17T18:43:15Z"
},
{
"tag": "v0.98.2",
"kind": "patch",
"published_at": "2026-01-17T01:00:59Z"
},
{
"tag": "v0.97.1",
"kind": "patch",
"published_at": "2026-01-17T01:00:37Z"
},
{
"tag": "v0.96.1",
"kind": "patch",
"published_at": "2026-01-17T01:00:15Z"
},
{
"tag": "v0.98.1",
"kind": "patch",
"published_at": "2025-12-26T00:22:26Z"
},
{
"tag": "v0.98.0",
"kind": "minor",
"published_at": "2025-12-21T22:36:38Z"
},
{
"tag": "v0.97.0",
"kind": "minor",
"published_at": "2025-12-21T17:53:06Z"
},
{
"tag": "v0.96.0",
"kind": "minor",
"published_at": "2025-12-14T22:48:21Z"
},
{
"tag": "v0.95.2",
"kind": "patch",
"published_at": "2025-12-10T13:38:53Z"
},
{
"tag": "v0.94.3",
"kind": "patch",
"published_at": "2025-12-10T13:38:39Z"
},
{
"tag": "v0.93.3",
"kind": "patch",
"published_at": "2025-12-10T13:38:25Z"
},
{
"tag": "v0.95.1",
"kind": "patch",
"published_at": "2025-12-04T15:01:25Z"
},
{
"tag": "v0.94.2",
"kind": "patch",
"published_at": "2025-12-04T14:55:07Z"
},
{
"tag": "v0.93.2",
"kind": "patch",
"published_at": "2025-12-04T14:54:28Z"
},
{
"tag": "v0.95.0",
"kind": "minor",
"published_at": "2025-12-01T18:34:58Z"
},
{
"tag": "v0.94.1",
"kind": "patch",
"published_at": "2025-11-30T23:37:26Z"
},
{
"tag": "v0.93.1",
"kind": "patch",
"published_at": "2025-11-30T23:36:29Z"
},
{
"tag": "v0.94.0",
"kind": "minor",
"published_at": "2025-11-29T22:48:21Z"
},
{
"tag": "v0.93.0",
"kind": "minor",
"published_at": "2025-11-22T20:38:05Z"
},
{
"tag": "v0.92.1",
"kind": "patch",
"published_at": "2025-11-22T18:45:49Z"
},
{
"tag": "v0.91.1",
"kind": "patch",
"published_at": "2025-11-18T00:06:25Z"
},
{
"tag": "v0.92.0",
"kind": "minor",
"published_at": "2025-11-13T15:54:24Z"
},
{
"tag": "v0.91.0",
"kind": "minor",
"published_at": "2025-11-10T15:43:38Z"
},
{
"tag": "v0.90.3",
"kind": "patch",
"published_at": "2025-11-08T20:47:22Z"
},
{
"tag": "v0.89.11",
"kind": "patch",
"published_at": "2025-11-08T19:35:28Z"
},
{
"tag": "v0.90.2",
"kind": "patch",
"published_at": "2025-11-08T17:43:26Z"
},
{
"tag": "v0.89.10",
"kind": "patch",
"published_at": "2025-11-08T16:34:29Z"
},
{
"tag": "v0.90.1",
"kind": "patch",
"published_at": "2025-10-26T20:21:21Z"
},
{
"tag": "v0.89.9",
"kind": "patch",
"published_at": "2025-10-26T20:20:28Z"
},
{
"tag": "v0.90.0",
"kind": "minor",
"published_at": "2025-10-23T14:29:53Z"
},
{
"tag": "v0.89.8",
"kind": "patch",
"published_at": "2025-10-19T14:21:00Z"
},
{
"tag": "v0.89.7",
"kind": "patch",
"published_at": "2025-09-05T16:20:18Z"
},
{
"tag": "v0.89.6",
"kind": "patch",
"published_at": "2025-08-16T18:58:29Z"
},
{
"tag": "v0.89.5",
"kind": "patch",
"published_at": "2025-08-05T16:24:09Z"
},
{
"tag": "v0.89.4",
"kind": "patch",
"published_at": "2025-06-10T22:37:51Z"
},
{
"tag": "v0.89.3",
"kind": "patch",
"published_at": "2025-06-07T19:49:54Z"
},
{
"tag": "v0.89.2",
"kind": "patch",
"published_at": "2025-04-28T21:37:16Z"
},
{
"tag": "v0.89.1",
"kind": "patch",
"published_at": "2025-04-21T16:47:17Z"
},
{
"tag": "v0.89.0",
"kind": "minor",
"published_at": "2025-04-18T17:49:03Z"
},
{
"tag": "v0.88.4",
"kind": "patch",
"published_at": "2025-03-24T16:33:29Z"
},
{
"tag": "v0.88.3",
"kind": "patch",
"published_at": "2025-03-19T20:08:42Z"
},
{
"tag": "v0.88.2",
"kind": "patch",
"published_at": "2025-03-19T19:58:56Z"
},
{
"tag": "v0.88.1",
"kind": "patch",
"published_at": "2025-03-12T00:20:00Z"
},
{
"tag": "v0.88.0",
"kind": "minor",
"published_at": "2025-03-09T22:05:21Z"
},
{
"tag": "v0.87.7",
"kind": "patch",
"published_at": "2025-03-07T02:37:59Z"
},
{
"tag": "v0.87.6",
"kind": "patch",
"published_at": "2025-02-24T18:04:43Z"
},
{
"tag": "v0.87.5",
"kind": "patch",
"published_at": "2025-02-04T22:30:22Z"
},
{
"tag": "v0.87.4",
"kind": "patch",
"published_at": "2025-02-03T03:52:08Z"
},
{
"tag": "v0.87.3",
"kind": "patch",
"published_at": "2025-01-30T17:22:18Z"
},
{
"tag": "v0.87.2",
"kind": "patch",
"published_at": "2025-01-22T20:01:00Z"
},
{
"tag": "v0.87.1",
"kind": "patch",
"published_at": "2025-01-20T02:57:03Z"
},
{
"tag": "v0.87.0",
"kind": "minor",
"published_at": "2024-12-10T07:11:17Z"
},
{
"tag": "v0.86.2",
"kind": "patch",
"published_at": "2024-11-30T18:50:20Z"
},
{
"tag": "v0.86.1",
"kind": "patch",
"published_at": "2024-11-22T22:49:21Z"
},
{
"tag": "v0.86.0",
"kind": "minor",
"published_at": "2024-11-20T03:00:13Z"
},
{
"tag": "v0.85.4",
"kind": "patch",
"published_at": "2024-11-09T22:38:10Z"
},
{
"tag": "v0.85.3",
"kind": "patch",
"published_at": "2024-10-25T17:57:31Z"
},
{
"tag": "v0.85.2",
"kind": "patch",
"published_at": "2024-08-14T16:28:22Z"
},
{
"tag": "v0.85.1",
"kind": "patch",
"published_at": "2024-08-09T13:08:00Z"
},
{
"tag": "v0.85.0",
"kind": "minor",
"published_at": "2024-03-23T22:11:30Z"
},
{
"tag": "v0.84.1",
"kind": "patch",
"published_at": "2024-03-16T16:44:12Z"
},
{
"tag": "v0.84.0",
"kind": "minor",
"published_at": "2024-03-08T05:21:21Z"
},
{
"tag": "v0.83.0",
"kind": "minor",
"published_at": "2024-03-07T04:02:27Z"
},
{
"tag": "v0.82.11",
"kind": "patch",
"published_at": "2024-02-26T16:02:09Z"
},
{
"tag": "v0.82.10",
"kind": "patch",
"published_at": "2024-02-12T22:12:37Z"
},
{
"tag": "v0.82.9",
"kind": "patch",
"published_at": "2024-02-07T22:43:51Z"
}
],
"recent_commits": [
{
"oid": "b540a03b73fac07710c7ab00a96225986cd0c0e8",
"body": null,
"is_bot": false,
"headline": "chore(biome): restore deep exclude for hidden folders",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-19T22:39:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "efdf825aa69418b33400c4f2a981c779eb9c6a56",
"body": null,
"is_bot": false,
"headline": "chore: update demo link types in carbon.yml",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-19T20:16:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "86e7ac8cb59f1a34ad12e6d6c171e32047acd3d0",
"body": null,
"is_bot": false,
"headline": "chore: update carbon.yml",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-19T20:16:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7c22473afe8eaf9cbe4b7314b809b9cc7e763cdf",
"body": null,
"is_bot": false,
"headline": "chore(thumbnails): theme SVGs",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-19T20:16:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1d1d31e066cd596251b3a5866ce4f08d92a66f4a",
"body": null,
"is_bot": false,
"headline": "chore(thumbnails): add missing entries",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-19T20:16:49Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3dab7802026c5807f93fcac9c1cca9ae3b75f7e6",
"body": null,
"is_bot": false,
"headline": "chore(biome): speed up lint by avoiding project scanner",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-19T15:15:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "53aa0d7f765b7e511f91e60a1e02766774086991",
"body": null,
"is_bot": false,
"headline": "chore(deps-dev): patch Biome to 2.5.4",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-19T15:15:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c328c37676a30ef16bc743d684d8bdc999f1bbfa",
"body": null,
"is_bot": false,
"headline": "chore(examples): bump deps",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-19T15:15:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dca2270c69388196e0bb4cea52f78c02b2a8c2a7",
"body": null,
"is_bot": false,
"headline": "chore(deps-dev): bump deps",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-19T15:15:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2997fb1e0b659b8d2aa1e31aa5be037a2beac62d",
"body": "…ly mode (#3438)",
"is_bot": false,
"headline": "fix(multi-select): prevent page scroll on Space in filterable read-on…",
"author_name": "Brian West",
"author_login": "b-r-i-a-n-w-e-s-t",
"committed_at": "2026-07-17T20:52:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4dcfa6cc959cc99e9690fe58852fc26a7c2f120f",
"body": null,
"is_bot": false,
"headline": "v0.110.1",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-17T17:15:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "926dc159a0568afce11853863d5e9bff9e61164b",
"body": "…ected (#3437)",
"is_bot": false,
"headline": "fix(select): restore placeholder when options change with nothing sel…",
"author_name": "Brian West",
"author_login": "b-r-i-a-n-w-e-s-t",
"committed_at": "2026-07-17T16:09:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ca46f7db319729d592cd36cb39e3587b3a910140",
"body": "… gap (#3436)\n\nThe visually-hidden, focusable <input> added in #3431 rendered as a\nraw sibling of the row's .bx--structured-list-td cells. Any non-none\ndisplay value on that sibling, regardless of position, makes the\nbrowser's CSS table auto-layout allocate it an oversized anonymous\ncolumn, opening a visible gap (seen as a stray border/highlight) on\nrow hover and selection.",
"is_bot": false,
"headline": "chore(structured-list): stop hidden input from opening a table-layout…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-17T15:38:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8013222981c96097f5d0e3e95008650b6430075a",
"body": null,
"is_bot": false,
"headline": "chore(biome): ban `carbon-icons-svelte` imports in `src/**`",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-17T14:22:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f285ce13bc94ef20cbacec4a5ba148ab46fbe8cf",
"body": "Fixes #3434",
"is_bot": false,
"headline": "fix(structured-list): import inline `CheckmarkFilled` icon",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-17T14:22:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9cd2c8db09ce6e9c3d01783c3605a26fc1f61241",
"body": "…ebpack (#3433)\n\nbuild(deps): bump websocket-driver in /examples/webpack\n\nBumps [websocket-driver](https://github.com/faye/websocket-driver-node) from 0.7.4 to 0.7.5.\n- [Changelog](https://github.com/faye/websocket-driver-node/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/faye/websocket-dri\n[…]\nver\n dependency-version: 0.7.5\n dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>",
"is_bot": true,
"headline": "build(deps): bump websocket-driver from 0.7.4 to 0.7.5 in /examples/w…",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-16T01:13:24Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "533e52b82ccc885ca4c3dc08396b9e57ff5307b5",
"body": null,
"is_bot": false,
"headline": "chore(deps-dev): upgrade sveld to 0.36.0 (#3432)",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-14T18:54:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "07b2c4cfe0583c93f9b2634cd90d9b74b29ead58",
"body": null,
"is_bot": false,
"headline": "test(e2e): add automated a11y testing using axe (#3429)",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-13T02:38:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "56df9fe205b78654ad8ea3e530ecbdbc0b034cac",
"body": "The earlier tabindex=\"-1\" fix (113ed03cd) correctly got the attribute\nonto the <input>, but axe-core's nested-interactive check doesn't\ntreat a negative tabindex (or aria-hidden) as sufficient to exclude an\nelement from \"focusable descendant\" -- confirmed by reading the rule's\nown source (usesUnreli\n[…]\n work on a\ndisplay:none input, so the visual checkmark is unaffected. MultiSelect\npasses the new prop for its option checkboxes, whose checked-state\nauthority is already the option's own aria-checked.",
"is_bot": false,
"headline": "fix(multi-select): hide decorative option checkbox via CSS (#3430)",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-13T00:01:35Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "cfb019c461d1ccc6e97a1b8b830ff2a6095f39aa",
"body": "…431)\n\nStructuredListRow put role=\"radio\"/\"checkbox\" and aria-checked\ndirectly on the <label> wrapping each selectable row, with the\nassociated <input> hardcoded to tabindex=\"-1\" and aria-hidden.\nrole=\"radio\"/\"checkbox\" isn't an ARIA-in-HTML-allowed role for\n<label> elements, which axe-core flags as\n[…]\nasses in jsdom\n(no stylesheet loaded) and axe (skips display:none elements). Added\nan override so the input is visually hidden the same way\nSelectableTile's is, with a focus-within outline on the row.",
"is_bot": false,
"headline": "fix(structured-list): move radio/checkbox role off selectable row (#3…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-13T00:01:16Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "636098dccd96410bd062fdb8986e5e068fe5f1c0",
"body": "…ame (#3428)\n\nComposedModal's role=\"dialog\" got its aria-label exclusively from\nModalHeader's `label` prop -- a secondary eyebrow string shown above\nthe heading, not the heading itself. `title` (the actual modal\nheading, rendered as an <h3> with no id) never fed the accessible\nname at all. Since `la\n[…]\nlready uses, and fall back to it (using `||`, so\nempty strings are correctly treated as unset) in the aria-label\nderivation. Matches how the simpler Modal component already falls\nback to modalHeading.",
"is_bot": false,
"headline": "fix(composed-modal): fall back to title for the dialog's accessible n…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-12T20:03:28Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "e5a9c2c9e54059e4d1bd68e8191e3ff82eebc34b",
"body": "…checkbox\"` (#3427)\n\nSelectableTile put role=\"checkbox\" and aria-checked directly on the\n<label> wrapping each tile, with the actual <input type=\"checkbox\">\nremoved from the tab order (tabindex=\"-1\"). role=\"checkbox\" isn't an\nARIA-in-HTML-allowed role for <label> elements, which axe-core flags\nas ar\n[…]\nts own. This preserves the existing\nclick hit area (the label still wraps the tile content and forwards\nclicks to the input) while keeping Tab focus and Enter/Space toggling\nworking exactly as before.",
"is_bot": false,
"headline": "fix(selectable-tile): `SelectableTile` does not use incorrect `role=\"…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-12T20:03:05Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a523ed3b95526ea9e9f775e7e743fc006f673b92",
"body": "…#3426)\n\nHeaderSearch set aria-owns and aria-controls to a fixed `${id}-menu`\nid unconditionally, but the element carrying that id only renders\nonce the field is active (open). aria-activedescendant had the same\nproblem: selectedId is derived from the results/selectedResultIndex\nprops alone, with no\n[…]\nrences, which axe-core flags as aria-valid-attr-value violations.\n\nGate aria-owns, aria-controls, and aria-activedescendant on `active`\nso they're only set once the referenced element actually exists.",
"is_bot": false,
"headline": "fix(ui-shell): stop `HeaderSearch` referencing non-existent menu id (…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-12T20:02:19Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "814400aecdd75e1e0ef7d156a2e8f87ba3ff1cd0",
"body": "…3425)\n\nPrevious/next-month and out-of-range calendar days render with\nCarbon's own text-disabled color, inherited unchanged from\ncarbon-components' _date-picker.scss. That pairing fails WCAG 1.4.3\ncontrast against the calendar background, but the days carried only\na flatpickr-disabled CSS class wit\n[…]\n\ncomponent and exempt them.\n\nMark these days aria-disabled=\"true\" via flatpickr's onDayCreate\nhook, composed as an array so any consumer-supplied\nflatpickrProps.onDayCreate keeps running alongside it.",
"is_bot": false,
"headline": "fix(date-picker): mark out-of-range calendar days as aria-disabled (#…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-12T20:01:35Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "1941df8f49aa1bd840558b1b50165796ab6b0c1f",
"body": "Tooltip's iconDescription prop defaulted to \"\", so mounting <Tooltip>\nwithout explicitly setting iconDescription or triggerText -- the\ncomponent's most minimal usage -- rendered an icon-only trigger with\naria-label=\"\" and no other accessible name. The empty string is worse\nthan an absent attribute, \n[…]\nescription prop to a real string; Tooltip\nwas the outlier. Default iconDescription to a non-empty string to\nmatch that convention, so the default tooltip trigger has an\naccessible name out of the box.",
"is_bot": false,
"headline": "fix(tooltip): default `iconDescription` is \"Show information\" (#3423)",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-12T20:01:13Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "3f935997c392dbc303493a1563ffc755a1dc8509",
"body": "The <li role=\"presentation\"> wrapping each <a role=\"tab\"> also\ncarried tabindex=\"-1\". Per HTML-AAM role-conflict resolution, a\npresentational element that is focusable is not flattened out of the\naccessibility tree, so browsers kept the <li> as a list item between\nthe tablist and its tabs, breaking the required direct\ntablist -> tab relationship that axe-core checks for.",
"is_bot": false,
"headline": "fix(tabs): remove tabindex from the presentational <li> wrapper (#3422)",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-12T19:58:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1e9d58844c74004d9886971d3da3f08941c94635",
"body": "…#3424)\n\nThree related accessibility gaps in DataTable:\n\n- Per-row batch-selection checkboxes had no accessible name (the\n select-all header checkbox was labelled \"Select all rows\", but the\n row-level InlineCheckbox instances passed no aria-label at all).\n- The expand column's <td headers=\"expand\"\n[…]\nne page don't\ncollide on a literal \"expand\" id) and reference it from both the\nnormal and virtual-scroll row render paths, and always render\n(visually-hidden when unbatched) text in the expand header.",
"is_bot": false,
"headline": "fix(data-table): label row checkboxes and fix expand column headers (…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-11T04:52:19Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "113ed03cd7e16fe3d06222b63fc28909b973e66f",
"body": "…cusable (#3421)\n\nMultiSelect renders each option as a role=\"option\" div using a\nroving-tabindex pattern, with tabindex=\"-1\" passed to the inner\nCheckbox so the visual checkbox itself never enters the tab order.\nThat tabindex never reached the actual <input>: Checkbox.svelte's\n$$restProps is documen\n[…]\nsting tabindex=\"-1\"\nusage now binds to the new prop instead of falling through to\n$$restProps, fixing both the virtualized and non-virtualized render\npaths with no MultiSelect.svelte changes required.",
"is_bot": false,
"headline": "fix(multi-select): stop option checkboxes from being independently fo…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-11T04:51:49Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "881d19dbe6589ce1e6b6d9c2296db50c96b29b4c",
"body": "… (#3420)\n\nSelectable StructuredList rows render as <label role=\"radio\"> (or\nrole=\"checkbox\" when multiple), overriding the row's role to convey\nselection state. But the wrapper still unconditionally applied\nrole=\"table\", and StructuredListHead/StructuredListBody/\nStructuredListCell unconditionally \n[…]\nader cell (rendered automatically by\nStructuredListRow when selection is on) a visually-hidden label -- it\npreviously rendered with no text at all, which axe separately flags as\nan empty table header.",
"is_bot": false,
"headline": "fix(structured-list): stop mixing table and radio/checkbox ARIA roles…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-11T04:27:32Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "cc7c11714b03c2bf617869c3471c579bb144a62f",
"body": null,
"is_bot": false,
"headline": "v0.110.0",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-10T15:03:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f26dff594cdd3385c787f837e4f42bc030a345d6",
"body": null,
"is_bot": false,
"headline": "chore(deps-dev): upgrade `sveld` to 0.35.2 (#3418)",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-10T00:31:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "904146ff4cd33b67c1efe16b2ec788f32a81b2f5",
"body": null,
"is_bot": false,
"headline": "chore(deps-dev): upgrade `sveld` to 0.35.1 (#3417)",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-09T20:08:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8a0fd7249c9bdd81abf033db7173f5528fc39752",
"body": null,
"is_bot": false,
"headline": "\t chore(deps-dev): patch Biome to 2.5.3",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-08T17:07:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b960856669468eb86dd39026c16e596ff5192d45",
"body": null,
"is_bot": false,
"headline": "chore(deps-dev): upgrade `sveld` to 0.35.0",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-08T17:06:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "215785ff7dbf265741e26d3e952ffa3918087a2a",
"body": null,
"is_bot": false,
"headline": "build(scripts): remove cache from `build-docs.ts`",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-08T17:06:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fd7364611777d5bbd83448818ce8f92924970671",
"body": null,
"is_bot": false,
"headline": "docs(tag-set): add examples",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-06T02:49:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c59fe9f62b206f217af6346ecb6e33724a3bdc1e",
"body": null,
"is_bot": false,
"headline": "feat(tag-set): add `TagSet` component",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-06T02:49:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "057084d2767e1ad4770e1a8bfd05cb9f5d59b862",
"body": "…on-vs-array guidance\n\nCodifies the register/unregister/update context pattern shared by\nUserAvatarGroup/UserAvatar and TagSet/Tag, and when to use it (child\ncomposition) versus a data-array prop (ComboBox, MultiSelect, TreeView).",
"is_bot": false,
"headline": "docs(contributing): document group-context registration and compositi…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-06T02:49:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "572a123f57f98b3b69a204ec1a1d769cd0d9a03c",
"body": "The trigger button now dispatches a *:trigger counterpart for every\nforwarded native event (mousedown, focus, blur, mouseover, mouseenter,\nmouseleave), matching click/click:trigger. Consumers can react to\ntrigger-only interactions across the board instead of just clicks,\nwithout the ambiguity of the shared, unscoped event firing from either\nbutton.",
"is_bot": false,
"headline": "chore(combo-button): shadow all trigger events, not just click",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-05T05:22:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0295b357705e46c3d070b99b22bf6776439d496e",
"body": "The trigger button forwards mousedown/focus/blur/mouseover/mouseenter/\nmouseleave, matching Button's own forwarded set and ComboButton's\ntrigger. MenuButton has only one button, so click already\nunambiguously identifies the trigger and needs no separate scoped\nevent.",
"is_bot": false,
"headline": "chore(menu-button): forward native events for parity with ComboButton",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-05T05:22:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8572b2018a9e9679895f4c1ed3afb76f332e5ef9",
"body": "Both buttons now forward mousedown/focus/blur/mouseover/mouseenter/\nmouseleave, matching Button's own forwarded set. The trigger's click\nwas previously unobservable from outside; dispatch a separate\nclick:trigger event so consumers can react to it without conflating\nit with the primary action's click.",
"is_bot": false,
"headline": "chore(combo-button): forward native events, add scoped click:trigger",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-05T05:22:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d4057a16aeae6e0f60a8d2d8e19cfefa0a2a3801",
"body": "Hard-wrapping prose at 80 chars inflated generated `.md` and\n`llms-full.txt` output with forced line breaks that add no\nvalue for docs or LLM consumption. Cuts generated size ~32%.",
"is_bot": false,
"headline": "docs: remove 80-column prose wrap from generated markdown",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-05T03:57:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f0c011d79940e1e42d11e57708184a1de7224692",
"body": null,
"is_bot": false,
"headline": "docs(button): add icon-only without iconDescription example",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-04T06:28:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5d35cdc2474c147ff5a5dfb18b11bb5f05690084",
"body": "… is empty\n\n- Forward on:mousedown to the underlying element (previously only\n click/focus/blur/mouseover/mouseenter/mouseleave were forwarded).\n Lets consumers (ComboButton, MenuButton) suppress the native\n focus-on-click behavior for icon-only triggers.\n- An icon-only button with no iconDescrip\n[…]\npan, and the portal\n tooltip on iconDescription being present, so omitting it cleanly\n renders a plain icon-only button; supply your own aria-label/\n aria-labelledby for accessibility in that case.",
"is_bot": false,
"headline": "feat(button): forward on:mousedown, skip tooltip when iconDescription…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-04T06:28:57Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2280688b219293904b4b7ca7de12ff8b0b765f95",
"body": "xs size, direction/alignment split into Top/Alignment subsections, and\na Menu items > Disabled example.",
"is_bot": false,
"headline": "docs(menu-button): add examples",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-04T06:28:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "11ff5f691f8d2accf5d512ea9bed6279f0933225",
"body": "…g flash",
"is_bot": false,
"headline": "chore(menu-button): align size mapping, add xs variant, fix focus-rin…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-04T06:28:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "132724c8743c0bef95543ef1559be7669f8dd8bf",
"body": null,
"is_bot": false,
"headline": "docs(combo-button): add examples",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-04T06:28:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "66334af68050da9fd25894ad3a962a3209a7f301",
"body": "Closes #2488",
"is_bot": false,
"headline": "feat(combo-button): add `ComboButton` component",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-04T06:28:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "79f4b49501d4074a73d478d5b4c4aa02a803b230",
"body": "Carbon's vendored menu SCSS only ships sm (unmodified)/md/lg row-height\nmodifiers. Add a hand-authored \"xs\" (24px) tier the same way\nOverflowMenu's own xs variant is hand-authored, for composed triggers\nthat need a fourth, smaller size.",
"is_bot": false,
"headline": "chore(menu): add \"xs\" size variant",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-04T06:28:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ee980cea9a2fefb76b9359ae7718a3c148342cf3",
"body": "CI's biome check flagged an unwrapped Link attribute list past the print width.",
"is_bot": false,
"headline": "chore: fix biome formatting in component-index.svelte",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-04T01:25:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "45df4071860daca558184f2ff4ec7da42a98f535",
"body": "`:has()` exceeds the Svelte 5 browserslist baseline per CONTRIBUTING. `UserAvatar` now sets a `data-avatar-group-overflow` attribute on the tooltip wrapper (the actual direct child of the group) in addition to the inner avatar, so the overflow marker is reachable with a plain attribute selector instead.",
"is_bot": false,
"headline": "chore(user-avatar-group): remove `:has()` from overflow stacking CSS",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-04T01:25:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "35e6e4d9e08733be68f7773a83a942d4a9c79a2b",
"body": null,
"is_bot": false,
"headline": "docs: update number of icons to 2,700+",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T22:12:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "12ad4eae4b63cc8571cd192f8ac4b0d58800f553",
"body": null,
"is_bot": false,
"headline": "docs: use inline, muted for source code/Markdown links",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T22:12:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "778674c5219dd79c938fb41caff8b3b8c4a8c75b",
"body": "Adds a related section to Breakpoint.svx instead of a separate page,\nsince the action reuses the same observer.",
"is_bot": false,
"headline": "docs(breakpoint): document use:hideAtBreakpoint",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T21:42:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3bbcff2986147824ac9bc886c733fe7d63fb89cb",
"body": "Adds a use:hideAtBreakpoint action instead of a HideAtBreakpoint\ncomponent (see #2764). Breakpoint's slot API already covers reading\nthe current size; this fills the separate gap of hiding an existing\nelement outside a breakpoint range without a wrapper.",
"is_bot": false,
"headline": "feat(breakpoint): add hideAtBreakpoint action",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T21:42:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "625ca21ae3a6fcf7a710bdbeb1b2f08c9408e295",
"body": "Splits the matchMedia setup out of breakpointObserver into a\nframework-agnostic function so it can be reused without onMount.",
"is_bot": false,
"headline": "refactor(breakpoint): extract observeBreakpoint helper",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T21:42:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e720144a410e4d0df0d700c3803c28fd341aa7da",
"body": "Covers the 12-month grid, selecting a month, and year navigation.",
"is_bot": false,
"headline": "test(e2e): add date picker month tests",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T20:31:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a7a4354cf1a254b8f0a7a509c5b964ac5d5f6fb7",
"body": "Basic month calendar, custom format/placeholder, programmatic\nmonth decrement, and a fluid variant example.",
"is_bot": false,
"headline": "docs(date-picker): add \"month\" examples",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T20:31:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9f833b2b86ec21fa8814af2b3200235b6d44e699",
"body": "Closes #976",
"is_bot": false,
"headline": "feat(date-picker): add \"month\" type",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T20:31:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3c6348c824f6030ee57215e2e63e767e81212553",
"body": null,
"is_bot": false,
"headline": "docs(disclosure): add examples",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T20:12:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f8ebc2a9e8fb4233e7191f4879017e7bd2da7be4",
"body": null,
"is_bot": false,
"headline": "feat(disclosure): add `Disclosure` component",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T20:12:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b2771310ec1b4ea70241802f80f563ec8dceaa17",
"body": "Group Menu.svx sections under Size, Menu items, and Placement headings\nwith descriptive subsections, splitting item-variant and placement\nexamples to match MenuButton.svx's structure and voice.",
"is_bot": false,
"headline": "docs(menu): reorganize into grouped sections mirroring MenuButton",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T18:50:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3f7a0c2b025c62c3388a09dea0fc771d1f361dc5",
"body": null,
"is_bot": false,
"headline": "docs(user-avatar-group): add stack order example",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T18:35:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0eb8c0b34d795353252e2e452c2f0e11e3b92749",
"body": "…cking direction\n\nDefaults to `\"last\"` (matches the existing paint order, Figma's Auto\nLayout default, and MUI's AvatarGroup). `\"first\"` keeps the earliest\navatar most prominent instead. Since the registered avatar node can be\nnested inside a `TooltipDefinition` wrapper when `tooltipText` is set,\nresolve the actual overlap-stacking direct child before writing the\nz-index custom property.",
"is_bot": false,
"headline": "chore(user-avatar-group): add `stackOrder` prop to control avatar sta…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T18:35:41Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "536ad7e842d6548600e43fca19602bf103041978",
"body": null,
"is_bot": false,
"headline": "docs(menu-button): add examples",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T04:46:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3d1e3682c53e67c0cddf2491f881f35c0c8f836e",
"body": "Size was added to Menu without a docs section. Item variants covers\nMenuItem's icon and danger kind, MenuDivider, and a nested submenu\nitem, with a cross-link to MenuButton's fuller nested-item writeup.",
"is_bot": false,
"headline": "docs(menu): add size and item variants examples",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T04:46:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a23150a3593bc8f9ec927f06f91e3d9f115413be",
"body": "Composes the existing Button trigger and Menu/MenuItem primitives\ninstead of reimplementing positioning or keyboard navigation.\n\n- `labelText` (required, matching Menu/MenuItem's naming) sets the\n trigger button text; the \"labelChildren\" named slot is available\n for custom trigger content, with la\n[…]\n-menu-button` has no Carbon v10 styles to vendor, so\n css/_menu-button.scss is hand-authored for the trigger's open state\n and chevron rotation, registered in all six theme entry files.\n\nFixes #2489",
"is_bot": false,
"headline": "feat(menu-button): add MenuButton component",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T04:46:33Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "271c228548a68c76897d95201f89a52bbd4cb9c3",
"body": "…enuItem\n\n- `size` on Menu (\"sm\" | \"md\" | \"lg\", default \"sm\") controls each\n item's row height via the already-vendored Carbon v10 menu partial;\n MenuItem needs no size prop of its own since the class lives on the\n parent <ul>.\n- `icon` on MenuItem renders a Carbon icon left of the label; `kind`\n\n[…]\nn't scroll the page. Because MenuItem already selects itself on\n Space, this also makes Space act as a toggle on MenuButton: opening\n via Space focuses the first item, and a second Space selects it.",
"is_bot": false,
"headline": "chore(menu): add size, icon/danger/dividers, and nested submenus to M…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T04:46:33Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "9fcbccd53c4a2bf9897d2e2160273334de35dcc6",
"body": null,
"is_bot": false,
"headline": "refactor(portal-tooltip): use `lockDirection=\"after-flip\"`",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T04:46:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "787404bd5c7c93ded41a01060eb0c20566074db5",
"body": "FloatingPortal recomputed the top/bottom (or left/right) flip on\nevery scroll- and resize-driven reposition, so a floating element\ncould flip sides mid-interaction as the anchor's on-screen position\nchanged.\n\nAdds a `lockDirection` prop: `\"none\" | \"after-flip\" | \"always\"`.\n- \"after-flip\": recompute \n[…]\nhe initial open settles on, flipped\n or not, once the open-time layout passes finish, so later\n scroll/resize/mutation updates only reposition along that side\n instead of re-running the flip check.",
"is_bot": false,
"headline": "fix(floating-portal)!: change `lockDirection` to enum",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T04:46:33Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f411e26b56d25ecdecb3d2fcd77ed9229fa9cb6c",
"body": "…bling click\n\nA control outside a menu/tooltip/popover's anchor that sets its bound\n`open` to true from a click handler would immediately close what it\njust opened: enabling `use:dismiss` registers its window click\nlistener synchronously, and in this environment the SAME click\nevent's bubble phase c\n[…]\nthe event's arrival past a\nmicrotask flush, so even a `queueMicrotask` defer isn't enough. Defer\nregistration to the next task with `setTimeout` instead, which\nreliably waits out the current dispatch.",
"is_bot": false,
"headline": "fix(utils): defer dismiss() window listener registration past the ena…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-03T04:46:33Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "204df17b38c3b2fafbfe9336091debb4f088a2cd",
"body": "Document the new `tooltipPosition`/`tooltipAlignment` props with framed\nexamples covering each direction (across variants, including inline) and\neach alignment.",
"is_bot": false,
"headline": "docs(code-snippet): add tooltip position and alignment examples",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:39:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "35ccb7f031ee17c02eccb9fe3ecc5580ab950bd0",
"body": "Add `tooltipPosition` and `tooltipAlignment` props (defaults `\"bottom\"` /\n`\"center\"`, matching CopyButton/CopyInput). Single/multi variants forward\nthem to the inner CopyButton; the inline variant applies them to its own\nportalled feedback tooltip via the shared icon-tooltip gap util.\n\nNote: the inline variant's feedback tooltip previously inherited\nPortalTooltip's `\"top\"` default; it now follows `tooltipPosition` (default\n`\"bottom\"`) so all variants share one default.",
"is_bot": false,
"headline": "feat(code-snippet): support tooltipPosition and tooltipAlignment",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:39:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f4f8d70e5268c617ebb908d9a2909bac5fa97417",
"body": "Move CopyButton's caret spacing + alignment nudge math into\n`iconTooltipPortalGaps(tooltipPosition, tooltipAlignment)` so CodeSnippet's\ninline copy feedback can reuse the same offsets instead of duplicating the\nconstants. Behavior-preserving; covered by a unit test.",
"is_bot": false,
"headline": "refactor(copy-button): extract icon-tooltip portal gaps to a shared util",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:39:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dd98ff8b737b85987db1275955c36975930a92fb",
"body": "Reword the \"Portal tooltip\" / \"Inside a modal\" sections to match the new\ndefault (feedback portalled unless `portalTooltip={false}`), and drop the\nnow-redundant `portalTooltip={true}` from the example.",
"is_bot": false,
"headline": "docs(code-snippet): document portalled feedback as the default",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:39:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "51f3d6a8d99e0585d1cf3802338c977c293c4100",
"body": "Match CopyButton/CopyInput: default `portalTooltip` to portalled so the\n\"Copied!\" feedback shares the hover tooltip surface (no flash, never\nclipped) for all variants. Previously CodeSnippet kept its own modal-auto\ndefault (`undefined -> !!insideModal`), leaving the inline caret elsewhere\nand the sa\n[…]\neSnippet now renders the \"Copied!\" feedback in a\nbody-level portal by default instead of the inline `.bx--copy-btn__feedback`\ncaret. Pass `portalTooltip={false}` to restore the previous inline markup.",
"is_bot": false,
"headline": "feat(code-snippet): portal the feedback tooltip by default",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:39:38Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0e55db4e24ff15de20e9bff18258253828c8b393",
"body": "Reword the \"Portal tooltip\" / \"Inside a modal\" sections to match the new\ndefault: the \"Copied!\" feedback is portalled by default (shares the hover\ntooltip surface, never clipped), and `portalTooltip={false}` opts into\nCarbon's inline caret. The portal-tooltip examples now contrast the default\nagains\n[…]\nopt-out inside an `overflow: hidden` container instead of\nsetting the now-redundant `portalTooltip={true}`.\n\nCodeSnippet is unchanged (it keeps its own modal-auto default), so its docs\nare left as-is.",
"is_bot": false,
"headline": "docs(copy-button,copy-input): document portalled feedback as the default",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:39:38Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "27e2ef922ce99898e4e6259bcb09350f680914db",
"body": "The hover tooltip is always portalled, but the \"Copied!\" feedback only\nshared that portal when inside a Modal or with a customized position/\nalignment; the plain default kept Carbon's inline caret. That split meant\nclicking after a hover swapped portal -> inline, flashing and re-aligning.\n\nDefault `\n[…]\nCopyInput now render the \"Copied!\" feedback in\na body-level portal by default instead of the inline `.bx--copy-btn__feedback`\ncaret. Pass `portalTooltip={false}` to restore the previous inline markup.",
"is_bot": false,
"headline": "feat(copy-button): portal the feedback tooltip by default",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:39:38Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "46230fe7562ebca8d80deeeef3992d749965fa79",
"body": "The markdown copy button uses the default bottom tooltip position, which\nkept Carbon's inline \"Copied!\" feedback caret while the hover description\nrendered in the floating portal. Clicking swapped portal → inline, so the\ntooltip flashed and re-aligned. Set `portalTooltip` so the feedback shares\nthe portal surface and the text swaps in place.",
"is_bot": false,
"headline": "docs(copy-markdown): portal the feedback tooltip",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:39:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f108385277c0b7fa979cdc67143cec93b53d69bb",
"body": "…nt resize\n\nA portalled tooltip flips to the opposite side when the preferred side\ndoes not fit. Because the flip is decided from the floating element's\nwidth, a tooltip whose text swaps to something narrower (e.g. CopyButton\nshowing \"Copied!\" after a wide hover description) would un-flip back to\nth\n[…]\nnitial layout passes (which run before a side-placed tooltip's final\nwidth is known) can still settle on the correct side. PortalTooltip opts\nin, fixing the side jump on CopyButton/CopyInput tooltips.",
"is_bot": false,
"headline": "fix(floating-portal): keep a flipped tooltip side stable across conte…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:39:38Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "c6a0965dafbd9582dad80f9d2408b156315983ce",
"body": "Sizes and kinds examples, added to the Status sidebar category.",
"is_bot": false,
"headline": "docs(shape-indicator): add examples",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:38:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "682b51207725d33b1ebf36c9cd063adf16e4975a",
"body": "Status shape paired with a label, a compact alternative to\nIconIndicator using the same color mapping. Supports a\nlabelChildren slot for custom label content.",
"is_bot": false,
"headline": "feat(shape-indicator): add `ShapeIndicator` component",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:38:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7b8eac5c550757b9f640e2a7bce8c233bdb29162",
"body": "Sizes and kinds examples, plus Status sidebar category.",
"is_bot": false,
"headline": "docs(icon-indicator): add examples",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:38:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "514a18f3676bd3502f877c192a3bcead3c40cc71",
"body": "Status icon paired with a label. v10 has no reactive status\ntokens, so colors map onto the static Carbon palette. Supports\na labelChildren slot for custom label content.",
"is_bot": false,
"headline": "feat(icon-indicator): add `IconIndicator` component",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:38:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "97fd3e64cd7d5a56ebb891d9cedc97c607f7f1ec",
"body": null,
"is_bot": false,
"headline": "docs: use Carbon `Dialog` in other examples",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:23:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b01b87ef4afff84c74c25dd150c5bcbdd6803949",
"body": null,
"is_bot": false,
"headline": "docs(dialog): add examples",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:23:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4352fd1e3b88d1ea9ed27326f23f138cc119cb26",
"body": "jsdom does not implement HTMLDialogElement, so unit tests only verify\nDialog calls the right native methods. Add a minimal Playwright suite\ncovering real browser behavior the unit tests structurally can't\nreach: showModal() moving focus inside, Escape closing the dialog and\nfiring close, and show() leaving the rest of the page interactive.",
"is_bot": false,
"headline": "test(dialog): add focused e2e coverage",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:23:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "56cba4d4bb445b9ce9224c4fccdab029e91ef510",
"body": "Native <dialog>-based primitive with open/modal props and open/close\nevents. carbon-components@10.58 ships no dialog styles, so css/_dialog.scss\nauthors layout, background, and backdrop dimming from scratch using v10\ntheme tokens. jsdom does not implement showModal()/show()/close(), so\ntests/utils/setup-globals.ts adds a minimal polyfill for the test harness.",
"is_bot": false,
"headline": "feat(dialog): add `Dialog` component",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:23:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e4692e4cc24d8bf53490bf9bd5c96dca0f6a634a",
"body": null,
"is_bot": false,
"headline": "docs(menu): add examples",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:13:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d845af4d57b6570e69d4d44719f030f10bf2b20e",
"body": "Reuses FloatingPortal for placement and the shared rovingFocus/dismiss\nkeyboard-nav utils, matching ContextMenu and OverflowMenu. No css/*.scss\npatch is needed since Carbon already vendors the .bx--menu styles.",
"is_bot": false,
"headline": "feat(menu): add `Menu` and `MenuItem` primitives",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-02T22:13:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1f759c1b194717c15b0abc5709effe3e4b3d6806",
"body": null,
"is_bot": false,
"headline": "chore(deps-dev): upgrade sveld to 0.34.1 (#3393)",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-01T17:40:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5e800ba8aec46acaf72cdf3a15074fa9f0ed1585",
"body": null,
"is_bot": false,
"headline": "chore(biome): apply fixes",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-01T17:40:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "39f42ef38d63aa72500ecf02b87939d4a6c7573d",
"body": null,
"is_bot": false,
"headline": "chore(deps-dev): patch Biome to 2.5.2",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-01T17:40:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ec3f9cd8b9aeb39a49d735a1289ad330a9b05822",
"body": "Hardcoded \"June 1/15, 2026\" aria-labels only matched the calendar's\ndefault month while today happened to fall in June 2026; deriving\nthe label from `new Date()` keeps the test correct going forward.",
"is_bot": false,
"headline": "test(date-picker): compute expected day labels from current date (#3395)",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-07-01T15:59:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4a2c72288d8a21e5fe489d042fc72d2ae7eb7097",
"body": null,
"is_bot": false,
"headline": "fix(select): re-assert native value when an option unmounts (#3392)",
"author_name": "Brian West",
"author_login": "b-r-i-a-n-w-e-s-t",
"committed_at": "2026-06-29T16:25:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "454a3881cd2b5ac3e47b92d7524a8faa5d99f03d",
"body": "…#3391)\n\nWeight header whitespace toward the top so a label binds to the\nitems it groups, not the previous group. Move the rhythm to the\nunscoped base rule so the standalone menu and HeaderSearch rich\nmenu — which use different size-class wrappers — stay in sync,\nand scale only the between-group separation by row density.",
"is_bot": false,
"headline": "chore(search-menu): refine group label spacing for Gestalt grouping (…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-06-29T04:14:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "40ab4219f3ef36dd63beb34dee112d939ce9e685",
"body": "…old (#3390)\n\nThe 15-line sample measured exactly 240px, the collapsed-height\ncutoff, so the dynamically-gated expand button never rendered and\n`expanded` silently auto-collapsed. Bump to 27 lines to clear it.",
"is_bot": false,
"headline": "docs(code-snippet): ensure multi-line examples overflow expand thresh…",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-06-29T03:55:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "be5b84a7f2c609c7da1ea6d3171298dcd4e4c207",
"body": "The edge-fade mask-image was applied to the same element as the focus\noutline, clipping the ring's right edge under the gradient. Drop the\nmask while the container is focused so the outline renders unbroken.",
"is_bot": false,
"headline": "chore(code-snippet): keep focus outline above edge fade (#3389)",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-06-29T00:24:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "793fb1921de3567875418de81b8fd6eb551e30bc",
"body": "Inline `[text](url)` links and hero/admonition prose links now\nrender the `bx--link--muted` variant so they inherit body text\ncolor instead of competing with surrounding copy.",
"is_bot": false,
"headline": "docs(link): mute inline prose links (#3387)",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-06-28T23:59:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ead3a429602dc97b860949536c099de5d42edd38",
"body": null,
"is_bot": false,
"headline": "test(user-avatar-group): add e2e coverage",
"author_name": "Eric Liu",
"author_login": "metonym",
"committed_at": "2026-06-28T23:48:23Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 100,
"commits_last_year": 2370,
"latest_release_at": "2026-07-17T17:17:23Z",
"latest_release_tag": "v0.110.1",
"releases_from_tags": false,
"days_since_last_push": 2,
"active_weeks_last_year": 49,
"days_since_latest_release": 5,
"mean_days_between_releases": 11.1
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": true,
"health_percentage": 75,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": false
},
"ecosystem": {
"packages": [
{
"name": "carbon-components-svelte",
"exists": true,
"license": "Apache-2.0",
"keywords": [
"carbon",
"carbon components",
"svelte",
"component library",
"carbon design system"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/carbon-components-svelte",
"is_deprecated": false,
"latest_version": "0.110.1",
"repository_url": "https://github.com/carbon-design-system/carbon-components-svelte",
"versions_count": 324,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 98210,
"first_published_at": "2019-12-15T19:20:21.529000Z",
"latest_published_at": "2026-07-17T17:16:48.018000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 5
}
]
},
"popularity": {
"forks": 262,
"stars": 2891,
"watchers": 36,
"fork_history": {
"days": [
{
"date": "2019-12-16",
"count": 1
},
{
"date": "2019-12-17",
"count": 1
},
{
"date": "2019-12-22",
"count": 1
},
{
"date": "2019-12-29",
"count": 1
},
{
"date": "2019-12-30",
"count": 1
},
{
"date": "2020-01-02",
"count": 1
},
{
"date": "2020-01-09",
"count": 1
},
{
"date": "2020-01-30",
"count": 1
},
{
"date": "2020-02-05",
"count": 1
},
{
"date": "2020-03-05",
"count": 1
},
{
"date": "2020-03-08",
"count": 1
},
{
"date": "2020-04-11",
"count": 1
},
{
"date": "2020-04-20",
"count": 1
},
{
"date": "2020-04-26",
"count": 1
},
{
"date": "2020-05-02",
"count": 1
},
{
"date": "2020-05-03",
"count": 1
},
{
"date": "2020-05-08",
"count": 1
},
{
"date": "2020-05-13",
"count": 1
},
{
"date": "2020-05-28",
"count": 1
},
{
"date": "2020-06-17",
"count": 1
},
{
"date": "2020-06-29",
"count": 1
},
{
"date": "2020-07-04",
"count": 1
},
{
"date": "2020-07-09",
"count": 1
},
{
"date": "2020-07-15",
"count": 1
},
{
"date": "2020-07-17",
"count": 1
},
{
"date": "2020-08-23",
"count": 1
},
{
"date": "2020-09-02",
"count": 1
},
{
"date": "2020-09-14",
"count": 1
},
{
"date": "2020-09-24",
"count": 1
},
{
"date": "2020-10-05",
"count": 1
},
{
"date": "2020-10-10",
"count": 1
},
{
"date": "2020-10-11",
"count": 3
},
{
"date": "2020-10-22",
"count": 2
},
{
"date": "2020-10-25",
"count": 1
},
{
"date": "2020-10-30",
"count": 1
},
{
"date": "2020-10-31",
"count": 1
},
{
"date": "2020-11-27",
"count": 1
},
{
"date": "2020-12-01",
"count": 1
},
{
"date": "2020-12-08",
"count": 1
},
{
"date": "2020-12-10",
"count": 1
},
{
"date": "2020-12-17",
"count": 1
},
{
"date": "2020-12-29",
"count": 1
},
{
"date": "2021-01-03",
"count": 2
},
{
"date": "2021-01-14",
"count": 2
},
{
"date": "2021-01-25",
"count": 1
},
{
"date": "2021-01-26",
"count": 1
},
{
"date": "2021-01-29",
"count": 1
},
{
"date": "2021-02-03",
"count": 1
},
{
"date": "2021-02-05",
"count": 1
},
{
"date": "2021-02-07",
"count": 1
},
{
"date": "2021-02-08",
"count": 1
},
{
"date": "2021-02-27",
"count": 1
},
{
"date": "2021-03-01",
"count": 1
},
{
"date": "2021-03-04",
"count": 1
},
{
"date": "2021-03-05",
"count": 1
},
{
"date": "2021-03-06",
"count": 1
},
{
"date": "2021-03-17",
"count": 1
},
{
"date": "2021-03-26",
"count": 2
},
{
"date": "2021-04-09",
"count": 1
},
{
"date": "2021-04-21",
"count": 1
},
{
"date": "2021-04-22",
"count": 2
},
{
"date": "2021-04-23",
"count": 1
},
{
"date": "2021-04-24",
"count": 1
},
{
"date": "2021-05-02",
"count": 1
},
{
"date": "2021-05-03",
"count": 1
},
{
"date": "2021-05-05",
"count": 1
},
{
"date": "2021-05-10",
"count": 1
},
{
"date": "2021-05-11",
"count": 1
},
{
"date": "2021-05-27",
"count": 1
},
{
"date": "2021-06-08",
"count": 1
},
{
"date": "2021-06-16",
"count": 1
},
{
"date": "2021-06-25",
"count": 1
},
{
"date": "2021-07-02",
"count": 1
},
{
"date": "2021-07-12",
"count": 1
},
{
"date": "2021-07-13",
"count": 1
},
{
"date": "2021-07-14",
"count": 1
},
{
"date": "2021-07-21",
"count": 1
},
{
"date": "2021-07-22",
"count": 1
},
{
"date": "2021-07-27",
"count": 1
},
{
"date": "2021-08-06",
"count": 1
},
{
"date": "2021-08-22",
"count": 2
},
{
"date": "2021-08-28",
"count": 2
},
{
"date": "2021-09-01",
"count": 1
},
{
"date": "2021-09-02",
"count": 1
},
{
"date": "2021-09-10",
"count": 1
},
{
"date": "2021-09-13",
"count": 1
},
{
"date": "2021-09-21",
"count": 1
},
{
"date": "2021-10-21",
"count": 1
},
{
"date": "2021-10-23",
"count": 1
},
{
"date": "2021-10-26",
"count": 1
},
{
"date": "2021-10-27",
"count": 1
},
{
"date": "2021-11-04",
"count": 1
},
{
"date": "2021-11-06",
"count": 1
},
{
"date": "2021-11-14",
"count": 1
},
{
"date": "2021-11-18",
"count": 1
},
{
"date": "2021-11-19",
"count": 1
},
{
"date": "2021-11-25",
"count": 1
},
{
"date": "2021-11-27",
"count": 1
},
{
"date": "2021-12-01",
"count": 1
},
{
"date": "2021-12-03",
"count": 1
},
{
"date": "2021-12-13",
"count": 1
},
{
"date": "2021-12-24",
"count": 1
},
{
"date": "2022-01-06",
"count": 1
},
{
"date": "2022-01-09",
"count": 1
},
{
"date": "2022-01-12",
"count": 1
},
{
"date": "2022-01-15",
"count": 1
},
{
"date": "2022-01-17",
"count": 1
},
{
"date": "2022-02-02",
"count": 1
},
{
"date": "2022-02-03",
"count": 1
},
{
"date": "2022-02-06",
"count": 1
},
{
"date": "2022-02-07",
"count": 1
},
{
"date": "2022-02-08",
"count": 1
},
{
"date": "2022-02-19",
"count": 1
},
{
"date": "2022-03-17",
"count": 1
},
{
"date": "2022-03-19",
"count": 1
},
{
"date": "2022-03-23",
"count": 1
},
{
"date": "2022-03-24",
"count": 2
},
{
"date": "2022-03-29",
"count": 1
},
{
"date": "2022-04-03",
"count": 1
},
{
"date": "2022-04-04",
"count": 1
},
{
"date": "2022-04-07",
"count": 1
},
{
"date": "2022-04-13",
"count": 1
},
{
"date": "2022-04-18",
"count": 1
},
{
"date": "2022-04-24",
"count": 1
},
{
"date": "2022-04-26",
"count": 1
},
{
"date": "2022-05-08",
"count": 1
},
{
"date": "2022-05-09",
"count": 1
},
{
"date": "2022-05-20",
"count": 1
},
{
"date": "2022-05-21",
"count": 1
},
{
"date": "2022-05-25",
"count": 1
},
{
"date": "2022-05-26",
"count": 1
},
{
"date": "2022-05-27",
"count": 1
},
{
"date": "2022-06-01",
"count": 1
},
{
"date": "2022-06-04",
"count": 1
},
{
"date": "2022-06-06",
"count": 1
},
{
"date": "2022-06-16",
"count": 1
},
{
"date": "2022-06-28",
"count": 1
},
{
"date": "2022-06-29",
"count": 1
},
{
"date": "2022-07-02",
"count": 1
},
{
"date": "2022-07-05",
"count": 1
},
{
"date": "2022-07-19",
"count": 1
},
{
"date": "2022-07-20",
"count": 1
},
{
"date": "2022-07-30",
"count": 1
},
{
"date": "2022-08-02",
"count": 1
},
{
"date": "2022-08-10",
"count": 1
},
{
"date": "2022-08-11",
"count": 1
},
{
"date": "2022-08-16",
"count": 1
},
{
"date": "2022-08-19",
"count": 1
},
{
"date": "2022-09-06",
"count": 1
},
{
"date": "2022-09-17",
"count": 1
},
{
"date": "2022-09-19",
"count": 2
},
{
"date": "2022-09-21",
"count": 1
},
{
"date": "2022-09-23",
"count": 1
},
{
"date": "2022-09-30",
"count": 1
},
{
"date": "2022-10-14",
"count": 1
},
{
"date": "2022-10-25",
"count": 2
},
{
"date": "2022-11-02",
"count": 1
},
{
"date": "2022-11-12",
"count": 1
},
{
"date": "2022-11-20",
"count": 1
},
{
"date": "2022-11-21",
"count": 1
},
{
"date": "2022-11-23",
"count": 1
},
{
"date": "2022-11-29",
"count": 1
},
{
"date": "2022-12-01",
"count": 1
},
{
"date": "2022-12-02",
"count": 1
},
{
"date": "2022-12-05",
"count": 1
},
{
"date": "2023-01-27",
"count": 1
},
{
"date": "2023-02-02",
"count": 1
},
{
"date": "2023-02-08",
"count": 1
},
{
"date": "2023-02-12",
"count": 1
},
{
"date": "2023-03-05",
"count": 2
},
{
"date": "2023-03-11",
"count": 1
},
{
"date": "2023-03-18",
"count": 1
},
{
"date": "2023-03-19",
"count": 1
},
{
"date": "2023-03-21",
"count": 1
},
{
"date": "2023-03-22",
"count": 1
},
{
"date": "2023-03-24",
"count": 1
},
{
"date": "2023-04-06",
"count": 1
},
{
"date": "2023-04-13",
"count": 1
},
{
"date": "2023-04-21",
"count": 1
},
{
"date": "2023-04-26",
"count": 1
},
{
"date": "2023-05-06",
"count": 1
},
{
"date": "2023-05-12",
"count": 1
},
{
"date": "2023-05-15",
"count": 1
},
{
"date": "2023-05-21",
"count": 1
},
{
"date": "2023-05-30",
"count": 1
},
{
"date": "2023-06-10",
"count": 1
},
{
"date": "2023-06-11",
"count": 1
},
{
"date": "2023-07-01",
"count": 1
},
{
"date": "2023-07-09",
"count": 1
},
{
"date": "2023-07-11",
"count": 1
},
{
"date": "2023-07-27",
"count": 1
},
{
"date": "2023-09-20",
"count": 1
},
{
"date": "2023-09-24",
"count": 1
},
{
"date": "2023-09-28",
"count": 1
},
{
"date": "2023-10-06",
"count": 1
},
{
"date": "2023-10-24",
"count": 1
},
{
"date": "2023-11-22",
"count": 1
},
{
"date": "2023-11-30",
"count": 1
},
{
"date": "2023-12-08",
"count": 1
},
{
"date": "2023-12-12",
"count": 1
},
{
"date": "2024-01-02",
"count": 2
},
{
"date": "2024-01-05",
"count": 1
},
{
"date": "2024-01-14",
"count": 1
},
{
"date": "2024-01-23",
"count": 1
},
{
"date": "2024-01-27",
"count": 1
},
{
"date": "2024-03-06",
"count": 1
},
{
"date": "2024-03-18",
"count": 1
},
{
"date": "2024-03-20",
"count": 1
},
{
"date": "2024-03-21",
"count": 2
},
{
"date": "2024-03-27",
"count": 1
},
{
"date": "2024-04-25",
"count": 1
},
{
"date": "2024-05-14",
"count": 1
},
{
"date": "2024-06-17",
"count": 2
},
{
"date": "2024-07-16",
"count": 1
},
{
"date": "2024-07-29",
"count": 1
},
{
"date": "2024-08-08",
"count": 1
},
{
"date": "2024-08-13",
"count": 1
},
{
"date": "2024-08-29",
"count": 1
},
{
"date": "2024-09-10",
"count": 1
},
{
"date": "2024-10-15",
"count": 1
},
{
"date": "2024-10-23",
"count": 1
},
{
"date": "2024-11-09",
"count": 1
},
{
"date": "2024-11-26",
"count": 1
},
{
"date": "2024-12-08",
"count": 1
},
{
"date": "2025-03-15",
"count": 1
},
{
"date": "2025-03-23",
"count": 1
},
{
"date": "2025-04-14",
"count": 1
},
{
"date": "2025-04-24",
"count": 1
},
{
"date": "2025-06-08",
"count": 1
},
{
"date": "2025-09-18",
"count": 1
},
{
"date": "2025-10-26",
"count": 1
},
{
"date": "2025-11-20",
"count": 1
},
{
"date": "2025-12-10",
"count": 1
},
{
"date": "2026-01-16",
"count": 1
},
{
"date": "2026-01-28",
"count": 1
},
{
"date": "2026-03-27",
"count": 1
},
{
"date": "2026-03-31",
"count": 1
},
{
"date": "2026-04-14",
"count": 1
},
{
"date": "2026-04-18",
"count": 1
},
{
"date": "2026-05-26",
"count": 1
},
{
"date": "2026-05-30",
"count": 1
},
{
"date": "2026-06-29",
"count": 1
},
{
"date": "2026-07-02",
"count": 1
},
{
"date": "2026-07-15",
"count": 1
}
],
"complete": true,
"collected": 260,
"total_forks": 262
},
"star_history": null,
"open_issues_and_prs": 31
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [
"examples"
],
"has_llms_txt": false,
"has_dockerfile": false,
"has_mcp_signal": false,
"bootstrap_files": [],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [
"docs/tsconfig.json",
"examples/sveltekit/jsconfig.json",
"tests/tsconfig.json",
"tsconfig.json"
],
"toolchain_manifests": [],
"largest_source_bytes": 109755,
"source_files_sampled": 680,
"oversized_source_files": 6,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [
"docs/package.json",
"package.json",
"tests-svelte3/package.json",
"tests-svelte4/package.json"
],
"advisories": {
"error": null,
"scope": "repository_graph",
"source": "osv",
"findings": [
{
"name": "cookie",
"direct": false,
"version": "0.6.0",
"severity": "low",
"ecosystem": "npm",
"cvss_score": null,
"advisory_ids": [
"GHSA-pxg6-pf52-xh8x"
],
"fixed_version": "0.7.0",
"advisory_count": 1,
"oldest_advisory_days": 655
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"low": 1
},
"advisory_count": 1,
"affected_count": 1,
"assessed_count": 490,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 43,
"direct_affected_count": 0
},
"ecosystems": [
"npm"
],
"dependencies": [
{
"name": "@ibm/telemetry-js",
"manifest": "package.json",
"ecosystem": "npm",
"version_constraint": "^1.5.0"
},
{
"name": "flatpickr",
"manifest": "package.json",
"ecosystem": "npm",
"version_constraint": "4.6.9"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "@ibm/telemetry-js",
"direct": true,
"version": "1.11.0",
"ecosystem": "npm"
},
{
"name": "@ibm/telemetry-js",
"direct": true,
"version": "^1.5.0",
"ecosystem": "npm"
},
{
"name": "flatpickr",
"direct": true,
"version": "4.6.9",
"ecosystem": "npm"
},
{
"name": "@axe-core/playwright",
"direct": false,
"version": "^4.12.1",
"ecosystem": "npm"
},
{
"name": "@biomejs/biome",
"direct": false,
"version": "2.5.4",
"ecosystem": "npm"
},
{
"name": "@discoveryjs/json-ext",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@emnapi/core",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@emnapi/runtime",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@emnapi/wasi-threads",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "@jridgewell/gen-mapping",
"direct": false,
"version": "0.3.13",
"ecosystem": "npm"
},
{
"name": "@jridgewell/remapping",
"direct": false,
"version": "2.3.5",
"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.5",
"ecosystem": "npm"
},
{
"name": "@jridgewell/trace-mapping",
"direct": false,
"version": "0.3.31",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/base64",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/base64",
"direct": false,
"version": "17.67.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/buffers",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/buffers",
"direct": false,
"version": "17.67.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/codegen",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/codegen",
"direct": false,
"version": "17.67.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/fs-core",
"direct": false,
"version": "4.64.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/fs-fsa",
"direct": false,
"version": "4.64.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/fs-node",
"direct": false,
"version": "4.64.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/fs-node-builtins",
"direct": false,
"version": "4.64.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/fs-node-to-fsa",
"direct": false,
"version": "4.64.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/fs-node-utils",
"direct": false,
"version": "4.64.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/fs-print",
"direct": false,
"version": "4.64.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/fs-snapshot",
"direct": false,
"version": "4.64.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/json-pack",
"direct": false,
"version": "1.21.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/json-pack",
"direct": false,
"version": "17.67.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/json-pointer",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/json-pointer",
"direct": false,
"version": "17.67.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/util",
"direct": false,
"version": "1.9.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/util",
"direct": false,
"version": "17.67.0",
"ecosystem": "npm"
},
{
"name": "@leichtgewicht/ip-codec",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "@napi-rs/wasm-runtime",
"direct": false,
"version": "1.1.6",
"ecosystem": "npm"
},
{
"name": "@noble/hashes",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "@oxc-project/types",
"direct": false,
"version": "0.139.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-cms",
"direct": false,
"version": "2.8.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-csr",
"direct": false,
"version": "2.8.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-ecc",
"direct": false,
"version": "2.8.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-pfx",
"direct": false,
"version": "2.8.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-pkcs8",
"direct": false,
"version": "2.8.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-pkcs9",
"direct": false,
"version": "2.8.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-rsa",
"direct": false,
"version": "2.8.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-schema",
"direct": false,
"version": "2.8.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-x509",
"direct": false,
"version": "2.8.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-x509-attr",
"direct": false,
"version": "2.8.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/utils",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "@peculiar/x509",
"direct": false,
"version": "1.14.3",
"ecosystem": "npm"
},
{
"name": "@playwright/test",
"direct": false,
"version": "^1.61.1",
"ecosystem": "npm"
},
{
"name": "@polka/url",
"direct": false,
"version": "1.0.0-next.29",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-android-arm64",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-darwin-arm64",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-darwin-x64",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-freebsd-x64",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm-gnueabihf",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm64-gnu",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-arm64-musl",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-ppc64-gnu",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-s390x-gnu",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-x64-gnu",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-linux-x64-musl",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-openharmony-arm64",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-wasm32-wasi",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-win32-arm64-msvc",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/binding-win32-x64-msvc",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "@rolldown/pluginutils",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@rollup/plugin-commonjs",
"direct": false,
"version": "29.0.3",
"ecosystem": "npm"
},
{
"name": "@rollup/plugin-node-resolve",
"direct": false,
"version": "16.0.3",
"ecosystem": "npm"
},
{
"name": "@rollup/plugin-terser",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@rollup/pluginutils",
"direct": false,
"version": "4.2.1",
"ecosystem": "npm"
},
{
"name": "@rollup/pluginutils",
"direct": false,
"version": "5.4.0",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-android-arm-eabi",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-android-arm64",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-darwin-arm64",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-darwin-x64",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-freebsd-arm64",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-freebsd-x64",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm-gnueabihf",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm-musleabihf",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm64-gnu",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-arm64-musl",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-loong64-gnu",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-loong64-musl",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-ppc64-gnu",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-ppc64-musl",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-riscv64-gnu",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-riscv64-musl",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-s390x-gnu",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-x64-gnu",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-linux-x64-musl",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-openbsd-x64",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-openharmony-arm64",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-arm64-msvc",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-ia32-msvc",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-x64-gnu",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@rollup/rollup-win32-x64-msvc",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "@roxi/routify",
"direct": false,
"version": "^3.6.4",
"ecosystem": "npm"
},
{
"name": "@standard-schema/spec",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@sveltejs/acorn-typescript",
"direct": false,
"version": "1.0.11",
"ecosystem": "npm"
},
{
"name": "@sveltejs/kit",
"direct": false,
"version": "2.70.1",
"ecosystem": "npm"
},
{
"name": "@sveltejs/vite-plugin-svelte",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "@sveltejs/vite-plugin-svelte",
"direct": false,
"version": "^3.1.2",
"ecosystem": "npm"
},
{
"name": "@sveltejs/vite-plugin-svelte",
"direct": false,
"version": "^7.1.2",
"ecosystem": "npm"
},
{
"name": "@sveltejs/vite-plugin-svelte",
"direct": false,
"version": "^7.2.0",
"ecosystem": "npm"
},
{
"name": "@testing-library/jest-dom",
"direct": false,
"version": "^6.9.1",
"ecosystem": "npm"
},
{
"name": "@testing-library/svelte",
"direct": false,
"version": "^5.4.2",
"ecosystem": "npm"
},
{
"name": "@testing-library/user-event",
"direct": false,
"version": "^14.6.1",
"ecosystem": "npm"
},
{
"name": "@tybys/wasm-util",
"direct": false,
"version": "0.10.3",
"ecosystem": "npm"
},
{
"name": "@types/body-parser",
"direct": false,
"version": "1.19.6",
"ecosystem": "npm"
},
{
"name": "@types/bonjour",
"direct": false,
"version": "3.5.13",
"ecosystem": "npm"
},
{
"name": "@types/bun",
"direct": false,
"version": "^1.3.14",
"ecosystem": "npm"
},
{
"name": "@types/connect",
"direct": false,
"version": "3.4.38",
"ecosystem": "npm"
},
{
"name": "@types/connect-history-api-fallback",
"direct": false,
"version": "1.5.4",
"ecosystem": "npm"
},
{
"name": "@types/cookie",
"direct": false,
"version": "0.6.0",
"ecosystem": "npm"
},
{
"name": "@types/estree",
"direct": false,
"version": "1.0.9",
"ecosystem": "npm"
},
{
"name": "@types/express",
"direct": false,
"version": "4.17.25",
"ecosystem": "npm"
},
{
"name": "@types/express-serve-static-core",
"direct": false,
"version": "4.19.9",
"ecosystem": "npm"
},
{
"name": "@types/html-minifier-terser",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "@types/http-errors",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "@types/http-proxy",
"direct": false,
"version": "1.17.17",
"ecosystem": "npm"
},
{
"name": "@types/json-schema",
"direct": false,
"version": "7.0.15",
"ecosystem": "npm"
},
{
"name": "@types/mime",
"direct": false,
"version": "1.3.5",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "26.1.1",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "^25.9.5",
"ecosystem": "npm"
},
{
"name": "@types/prismjs",
"direct": false,
"version": "^1.26.5",
"ecosystem": "npm"
},
{
"name": "@types/qs",
"direct": false,
"version": "6.15.1",
"ecosystem": "npm"
},
{
"name": "@types/range-parser",
"direct": false,
"version": "1.2.7",
"ecosystem": "npm"
},
{
"name": "@types/resolve",
"direct": false,
"version": "1.20.2",
"ecosystem": "npm"
},
{
"name": "@types/retry",
"direct": false,
"version": "0.12.2",
"ecosystem": "npm"
},
{
"name": "@types/send",
"direct": false,
"version": "0.17.6",
"ecosystem": "npm"
},
{
"name": "@types/send",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "@types/serve-index",
"direct": false,
"version": "1.9.4",
"ecosystem": "npm"
},
{
"name": "@types/serve-static",
"direct": false,
"version": "1.15.10",
"ecosystem": "npm"
},
{
"name": "@types/sockjs",
"direct": false,
"version": "0.3.36",
"ecosystem": "npm"
},
{
"name": "@types/trusted-types",
"direct": false,
"version": "2.0.7",
"ecosystem": "npm"
},
{
"name": "@types/ws",
"direct": false,
"version": "8.18.1",
"ecosystem": "npm"
},
{
"name": "@typescript/native-preview",
"direct": false,
"version": "^7.0.0-dev.20260707.2",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/ast",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/floating-point-hex-parser",
"direct": false,
"version": "1.13.2",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/helper-api-error",
"direct": false,
"version": "1.13.2",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/helper-buffer",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/helper-numbers",
"direct": false,
"version": "1.13.2",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/helper-wasm-bytecode",
"direct": false,
"version": "1.13.2",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/helper-wasm-section",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/ieee754",
"direct": false,
"version": "1.13.2",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/leb128",
"direct": false,
"version": "1.13.2",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/utf8",
"direct": false,
"version": "1.13.2",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/wasm-edit",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/wasm-gen",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/wasm-opt",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/wasm-parser",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/wast-printer",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "@xtuc/ieee754",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@xtuc/long",
"direct": false,
"version": "4.2.2",
"ecosystem": "npm"
},
{
"name": "accepts",
"direct": false,
"version": "1.3.8",
"ecosystem": "npm"
},
{
"name": "acorn",
"direct": false,
"version": "8.17.0",
"ecosystem": "npm"
},
{
"name": "acorn-import-phases",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "ajv",
"direct": false,
"version": "8.20.0",
"ecosystem": "npm"
},
{
"name": "ajv-formats",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "ajv-keywords",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "ansi-html-community",
"direct": false,
"version": "0.0.8",
"ecosystem": "npm"
},
{
"name": "ansi-regex",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "anymatch",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "aria-query",
"direct": false,
"version": "5.3.1",
"ecosystem": "npm"
},
{
"name": "array-flatten",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "asn1js",
"direct": false,
"version": "3.0.10",
"ecosystem": "npm"
},
{
"name": "axobject-query",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "baseline-browser-mapping",
"direct": false,
"version": "2.10.43",
"ecosystem": "npm"
},
{
"name": "batch",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "big.js",
"direct": false,
"version": "5.2.2",
"ecosystem": "npm"
},
{
"name": "binary-extensions",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "body-parser",
"direct": false,
"version": "1.20.6",
"ecosystem": "npm"
},
{
"name": "bonjour-service",
"direct": false,
"version": "1.4.3",
"ecosystem": "npm"
},
{
"name": "boolbase",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "braces",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "browserslist",
"direct": false,
"version": "4.28.6",
"ecosystem": "npm"
},
{
"name": "browserslist",
"direct": false,
"version": "^4.28.6",
"ecosystem": "npm"
},
{
"name": "buffer-from",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "bundle-name",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "bytes",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "bytestreamjs",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "call-bind-apply-helpers",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "call-bound",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "camel-case",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "caniuse-lite",
"direct": false,
"version": "1.0.30001806",
"ecosystem": "npm"
},
{
"name": "carbon-components",
"direct": false,
"version": "10.58.12",
"ecosystem": "npm"
},
{
"name": "carbon-components-svelte",
"direct": false,
"version": "0.110.1",
"ecosystem": "npm"
},
{
"name": "carbon-icons-svelte",
"direct": false,
"version": "^13.12.0",
"ecosystem": "npm"
},
{
"name": "carbon-icons-svelte",
"direct": false,
"version": "^13.13.0",
"ecosystem": "npm"
},
{
"name": "carbon-pictograms-svelte",
"direct": false,
"version": "13.19.0",
"ecosystem": "npm"
},
{
"name": "carbon-pictograms-svelte",
"direct": false,
"version": "^13.18.0",
"ecosystem": "npm"
},
{
"name": "carbon-preprocess-svelte",
"direct": false,
"version": "0.11.37",
"ecosystem": "npm"
},
{
"name": "chokidar",
"direct": false,
"version": "3.6.0",
"ecosystem": "npm"
},
{
"name": "chrome-trace-event",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "clean-css",
"direct": false,
"version": "5.3.3",
"ecosystem": "npm"
},
{
"name": "clipboard-copy",
"direct": false,
"version": "^4.0.1",
"ecosystem": "npm"
},
{
"name": "clone-deep",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "clsx",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "colorette",
"direct": false,
"version": "2.0.20",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "14.0.3",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "2.20.3",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "8.3.0",
"ecosystem": "npm"
},
{
"name": "commondir",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "compressible",
"direct": false,
"version": "2.0.18",
"ecosystem": "npm"
},
{
"name": "compression",
"direct": false,
"version": "1.8.1",
"ecosystem": "npm"
},
{
"name": "connect-history-api-fallback",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "content-disposition",
"direct": false,
"version": "0.5.4",
"ecosystem": "npm"
},
{
"name": "content-type",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "cookie",
"direct": false,
"version": "0.6.0",
"ecosystem": "npm"
},
{
"name": "cookie",
"direct": false,
"version": "0.7.2",
"ecosystem": "npm"
},
{
"name": "cookie-signature",
"direct": false,
"version": "1.0.7",
"ecosystem": "npm"
},
{
"name": "core-util-is",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "cross-spawn",
"direct": false,
"version": "7.0.6",
"ecosystem": "npm"
},
{
"name": "css-loader",
"direct": false,
"version": "7.1.4",
"ecosystem": "npm"
},
{
"name": "css-select",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "css-what",
"direct": false,
"version": "6.2.2",
"ecosystem": "npm"
},
{
"name": "cssesc",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "culls",
"direct": false,
"version": "^0.2.0",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "2.6.9",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "4.4.3",
"ecosystem": "npm"
},
{
"name": "deepmerge",
"direct": false,
"version": "4.3.1",
"ecosystem": "npm"
},
{
"name": "default-browser",
"direct": false,
"version": "5.5.0",
"ecosystem": "npm"
},
{
"name": "default-browser-id",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "define-lazy-prop",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "depd",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "depd",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "destroy",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "detect-libc",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "detect-node",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "devalue",
"direct": false,
"version": "5.8.1",
"ecosystem": "npm"
},
{
"name": "dns-packet",
"direct": false,
"version": "5.6.1",
"ecosystem": "npm"
},
{
"name": "dom-converter",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "dom-serializer",
"direct": false,
"version": "1.4.1",
"ecosystem": "npm"
},
{
"name": "domelementtype",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "domhandler",
"direct": false,
"version": "4.3.1",
"ecosystem": "npm"
},
{
"name": "domutils",
"direct": false,
"version": "2.8.0",
"ecosystem": "npm"
},
{
"name": "dot-case",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "dunder-proto",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "ee-first",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "electron-to-chromium",
"direct": false,
"version": "1.5.393",
"ecosystem": "npm"
},
{
"name": "emojis-list",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "encodeurl",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "enhanced-resolve",
"direct": false,
"version": "5.24.2",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "envinfo",
"direct": false,
"version": "7.21.0",
"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.3.1",
"ecosystem": "npm"
},
{
"name": "es-object-atoms",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "escalade",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "escape-html",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "eslint-scope",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "esm-env",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "esrap",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "esrecurse",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "estraverse",
"direct": false,
"version": "4.3.0",
"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": "etag",
"direct": false,
"version": "1.8.1",
"ecosystem": "npm"
},
{
"name": "eventemitter3",
"direct": false,
"version": "4.0.7",
"ecosystem": "npm"
},
{
"name": "events",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "express",
"direct": false,
"version": "4.22.2",
"ecosystem": "npm"
},
{
"name": "fast-deep-equal",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "fast-uri",
"direct": false,
"version": "3.1.4",
"ecosystem": "npm"
},
{
"name": "faye-websocket",
"direct": false,
"version": "0.11.4",
"ecosystem": "npm"
},
{
"name": "fdir",
"direct": false,
"version": "6.5.0",
"ecosystem": "npm"
},
{
"name": "fill-range",
"direct": false,
"version": "7.1.1",
"ecosystem": "npm"
},
{
"name": "finalhandler",
"direct": false,
"version": "1.3.2",
"ecosystem": "npm"
},
{
"name": "find-up",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "flat",
"direct": false,
"version": "5.0.2",
"ecosystem": "npm"
},
{
"name": "follow-redirects",
"direct": false,
"version": "1.16.0",
"ecosystem": "npm"
},
{
"name": "forwarded",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "fresh",
"direct": false,
"version": "0.5.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": "get-intrinsic",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "get-proto",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "github-slugger",
"direct": false,
"version": "^2.0.0",
"ecosystem": "npm"
},
{
"name": "glob-parent",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "glob-to-regex.js",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "gopd",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "graceful-fs",
"direct": false,
"version": "4.2.11",
"ecosystem": "npm"
},
{
"name": "handle-thing",
"direct": false,
"version": "2.0.1",
"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": "hasown",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "he",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "hpack.js",
"direct": false,
"version": "2.1.6",
"ecosystem": "npm"
},
{
"name": "html-minifier-terser",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "html-webpack-plugin",
"direct": false,
"version": "5.6.7",
"ecosystem": "npm"
},
{
"name": "htmlparser2",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "http-deceiver",
"direct": false,
"version": "1.2.7",
"ecosystem": "npm"
},
{
"name": "http-errors",
"direct": false,
"version": "1.8.1",
"ecosystem": "npm"
},
{
"name": "http-errors",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "http-parser-js",
"direct": false,
"version": "0.5.10",
"ecosystem": "npm"
},
{
"name": "http-proxy",
"direct": false,
"version": "1.18.1",
"ecosystem": "npm"
},
{
"name": "http-proxy-middleware",
"direct": false,
"version": "2.0.10",
"ecosystem": "npm"
},
{
"name": "hyperdyperid",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "iconv-lite",
"direct": false,
"version": "0.4.24",
"ecosystem": "npm"
},
{
"name": "icss-utils",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "import-local",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "inherits",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "interpret",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "ipaddr.js",
"direct": false,
"version": "1.9.1",
"ecosystem": "npm"
},
{
"name": "ipaddr.js",
"direct": false,
"version": "2.4.0",
"ecosystem": "npm"
},
{
"name": "is-binary-path",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "is-core-module",
"direct": false,
"version": "2.16.2",
"ecosystem": "npm"
},
{
"name": "is-docker",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "is-extglob",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "is-glob",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "is-inside-container",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "is-module",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "is-network-error",
"direct": false,
"version": "1.3.2",
"ecosystem": "npm"
},
{
"name": "is-number",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "is-plain-obj",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "is-plain-object",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "is-reference",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "is-reference",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "is-wsl",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "isarray",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "isexe",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "isobject",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "jest-worker",
"direct": false,
"version": "27.5.1",
"ecosystem": "npm"
},
{
"name": "jsdom",
"direct": false,
"version": "^29.1.1",
"ecosystem": "npm"
},
{
"name": "json-schema-traverse",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "json5",
"direct": false,
"version": "2.2.3",
"ecosystem": "npm"
},
{
"name": "kind-of",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "kleur",
"direct": false,
"version": "4.1.5",
"ecosystem": "npm"
},
{
"name": "launch-editor",
"direct": false,
"version": "2.14.1",
"ecosystem": "npm"
},
{
"name": "lightningcss",
"direct": false,
"version": "1.32.0",
"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": "loader-runner",
"direct": false,
"version": "4.3.2",
"ecosystem": "npm"
},
{
"name": "loader-utils",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "locate-character",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "locate-path",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "lodash",
"direct": false,
"version": "4.18.1",
"ecosystem": "npm"
},
{
"name": "lower-case",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "magic-string",
"direct": false,
"version": "0.30.21",
"ecosystem": "npm"
},
{
"name": "math-intrinsics",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "mdast",
"direct": false,
"version": "^3.0.0",
"ecosystem": "npm"
},
{
"name": "mdsvex",
"direct": false,
"version": "^0.12.7",
"ecosystem": "npm"
},
{
"name": "media-typer",
"direct": false,
"version": "0.3.0",
"ecosystem": "npm"
},
{
"name": "memfs",
"direct": false,
"version": "4.64.0",
"ecosystem": "npm"
},
{
"name": "merge-descriptors",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "merge-stream",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "methods",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "micromatch",
"direct": false,
"version": "4.0.8",
"ecosystem": "npm"
},
{
"name": "mime",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "mime-db",
"direct": false,
"version": "1.52.0",
"ecosystem": "npm"
},
{
"name": "mime-db",
"direct": false,
"version": "1.54.0",
"ecosystem": "npm"
},
{
"name": "mime-types",
"direct": false,
"version": "2.1.35",
"ecosystem": "npm"
},
{
"name": "mime-types",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "mini-css-extract-plugin",
"direct": false,
"version": "2.10.2",
"ecosystem": "npm"
},
{
"name": "minimalistic-assert",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "minimizer-webpack-plugin",
"direct": false,
"version": "5.6.1",
"ecosystem": "npm"
},
{
"name": "minisearch",
"direct": false,
"version": "^7.1.0",
"ecosystem": "npm"
},
{
"name": "mrmime",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "multicast-dns",
"direct": false,
"version": "7.2.5",
"ecosystem": "npm"
},
{
"name": "nanoid",
"direct": false,
"version": "3.3.16",
"ecosystem": "npm"
},
{
"name": "negotiator",
"direct": false,
"version": "0.6.3",
"ecosystem": "npm"
},
{
"name": "negotiator",
"direct": false,
"version": "0.6.4",
"ecosystem": "npm"
},
{
"name": "neo-async",
"direct": false,
"version": "2.6.2",
"ecosystem": "npm"
},
{
"name": "no-case",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "node-releases",
"direct": false,
"version": "2.0.51",
"ecosystem": "npm"
},
{
"name": "normalize-path",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "nth-check",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "object-inspect",
"direct": false,
"version": "1.13.4",
"ecosystem": "npm"
},
{
"name": "obuf",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "obug",
"direct": false,
"version": "2.1.4",
"ecosystem": "npm"
},
{
"name": "on-finished",
"direct": false,
"version": "2.4.1",
"ecosystem": "npm"
},
{
"name": "on-headers",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "open",
"direct": false,
"version": "10.2.0",
"ecosystem": "npm"
},
{
"name": "p-limit",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "p-locate",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "p-retry",
"direct": false,
"version": "6.2.1",
"ecosystem": "npm"
},
{
"name": "p-try",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "param-case",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "parseurl",
"direct": false,
"version": "1.3.3",
"ecosystem": "npm"
},
{
"name": "pascal-case",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "path-exists",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "path-key",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "path-parse",
"direct": false,
"version": "1.0.7",
"ecosystem": "npm"
},
{
"name": "path-to-regexp",
"direct": false,
"version": "0.1.13",
"ecosystem": "npm"
},
{
"name": "picocolors",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "2.3.2",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "4.0.5",
"ecosystem": "npm"
},
{
"name": "pkg-dir",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "pkijs",
"direct": false,
"version": "3.4.0",
"ecosystem": "npm"
},
{
"name": "postcss",
"direct": false,
"version": "8.5.20",
"ecosystem": "npm"
},
{
"name": "postcss-modules-extract-imports",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-modules-local-by-default",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "postcss-modules-scope",
"direct": false,
"version": "3.2.1",
"ecosystem": "npm"
},
{
"name": "postcss-modules-values",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "postcss-selector-parser",
"direct": false,
"version": "7.1.4",
"ecosystem": "npm"
},
{
"name": "postcss-value-parser",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "prettier",
"direct": false,
"version": "^3.8.3",
"ecosystem": "npm"
},
{
"name": "prettier-plugin-svelte",
"direct": false,
"version": "^4.1.0",
"ecosystem": "npm"
},
{
"name": "pretty-error",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "prism-svelte",
"direct": false,
"version": "^0.5.0",
"ecosystem": "npm"
},
{
"name": "prismjs",
"direct": false,
"version": "^1.30.0",
"ecosystem": "npm"
},
{
"name": "process-nextick-args",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "proxy-addr",
"direct": false,
"version": "2.0.7",
"ecosystem": "npm"
},
{
"name": "pvtsutils",
"direct": false,
"version": "1.3.6",
"ecosystem": "npm"
},
{
"name": "pvutils",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "qs",
"direct": false,
"version": "6.15.3",
"ecosystem": "npm"
},
{
"name": "range-parser",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "raw-body",
"direct": false,
"version": "2.5.3",
"ecosystem": "npm"
},
{
"name": "readable-stream",
"direct": false,
"version": "2.3.8",
"ecosystem": "npm"
},
{
"name": "readable-stream",
"direct": false,
"version": "3.6.2",
"ecosystem": "npm"
},
{
"name": "readdirp",
"direct": false,
"version": "3.6.0",
"ecosystem": "npm"
},
{
"name": "rechoir",
"direct": false,
"version": "0.8.0",
"ecosystem": "npm"
},
{
"name": "reflect-metadata",
"direct": false,
"version": "0.2.2",
"ecosystem": "npm"
},
{
"name": "rehype-slug",
"direct": false,
"version": "^6.0.0",
"ecosystem": "npm"
},
{
"name": "relateurl",
"direct": false,
"version": "0.2.7",
"ecosystem": "npm"
},
{
"name": "renderkid",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "require-from-string",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "requires-port",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "resolve",
"direct": false,
"version": "1.22.12",
"ecosystem": "npm"
},
{
"name": "resolve-cwd",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "resolve-from",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "resolve.exports",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "retry",
"direct": false,
"version": "0.13.1",
"ecosystem": "npm"
},
{
"name": "rolldown",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "rollup",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "rollup-plugin-css-only",
"direct": false,
"version": "4.5.5",
"ecosystem": "npm"
},
{
"name": "rollup-plugin-svelte",
"direct": false,
"version": "7.2.3",
"ecosystem": "npm"
},
{
"name": "run-applescript",
"direct": false,
"version": "7.1.0",
"ecosystem": "npm"
},
{
"name": "safe-buffer",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "safe-buffer",
"direct": false,
"version": "5.2.1",
"ecosystem": "npm"
},
{
"name": "safer-buffer",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "sass-embedded",
"direct": false,
"version": "^1.100.0",
"ecosystem": "npm"
},
{
"name": "schema-utils",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "select-hose",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "selfsigned",
"direct": false,
"version": "5.5.0",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "7.8.5",
"ecosystem": "npm"
},
{
"name": "send",
"direct": false,
"version": "0.19.2",
"ecosystem": "npm"
},
{
"name": "serialize-javascript",
"direct": false,
"version": "7.0.7",
"ecosystem": "npm"
},
{
"name": "serve-index",
"direct": false,
"version": "1.9.2",
"ecosystem": "npm"
},
{
"name": "serve-static",
"direct": false,
"version": "1.16.3",
"ecosystem": "npm"
},
{
"name": "set-cookie-parser",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "setprototypeof",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "shallow-clone",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "shebang-command",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "shebang-regex",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "shell-quote",
"direct": false,
"version": "1.10.0",
"ecosystem": "npm"
},
{
"name": "side-channel",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "side-channel-list",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "side-channel-map",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "side-channel-weakmap",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "sirv",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "smob",
"direct": false,
"version": "1.6.2",
"ecosystem": "npm"
},
{
"name": "sockjs",
"direct": false,
"version": "0.3.24",
"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": "spdy",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "spdy-transport",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "statuses",
"direct": false,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "statuses",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "string_decoder",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "string_decoder",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "strip-ansi",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "supports-color",
"direct": false,
"version": "8.1.1",
"ecosystem": "npm"
},
{
"name": "supports-preserve-symlinks-flag",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "sveld",
"direct": false,
"version": "^0.36.0",
"ecosystem": "npm"
},
{
"name": "svelte",
"direct": false,
"version": "5.56.6",
"ecosystem": "npm"
},
{
"name": "svelte",
"direct": false,
"version": "^3.59.1",
"ecosystem": "npm"
},
{
"name": "svelte",
"direct": false,
"version": "^4.2.20",
"ecosystem": "npm"
},
{
"name": "svelte",
"direct": false,
"version": "^5.56.3",
"ecosystem": "npm"
},
{
"name": "svelte",
"direct": false,
"version": "^5.56.6",
"ecosystem": "npm"
},
{
"name": "svelte-check",
"direct": false,
"version": "^4.7.3",
"ecosystem": "npm"
},
{
"name": "svelte-dev-helper",
"direct": false,
"version": "1.1.9",
"ecosystem": "npm"
},
{
"name": "svelte-hmr",
"direct": false,
"version": "0.14.12",
"ecosystem": "npm"
},
{
"name": "svelte-loader",
"direct": false,
"version": "3.2.4",
"ecosystem": "npm"
},
{
"name": "tapable",
"direct": false,
"version": "2.3.3",
"ecosystem": "npm"
},
{
"name": "terser",
"direct": false,
"version": "5.49.0",
"ecosystem": "npm"
},
{
"name": "thingies",
"direct": false,
"version": "2.6.0",
"ecosystem": "npm"
},
{
"name": "thunky",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "tinyglobby",
"direct": false,
"version": "0.2.17",
"ecosystem": "npm"
},
{
"name": "to-regex-range",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "toidentifier",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "totalist",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "tree-dump",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "tslib",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "tslib",
"direct": false,
"version": "2.8.1",
"ecosystem": "npm"
},
{
"name": "tsyringe",
"direct": false,
"version": "4.10.0",
"ecosystem": "npm"
},
{
"name": "type-is",
"direct": false,
"version": "1.6.18",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "^6.0.3",
"ecosystem": "npm"
},
{
"name": "undici-types",
"direct": false,
"version": "8.3.0",
"ecosystem": "npm"
},
{
"name": "unpipe",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "update-browserslist-db",
"direct": false,
"version": "1.2.3",
"ecosystem": "npm"
},
{
"name": "util-deprecate",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "utila",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "utils-merge",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "uuid",
"direct": false,
"version": "11.1.1",
"ecosystem": "npm"
},
{
"name": "vary",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "vite",
"direct": false,
"version": "8.1.5",
"ecosystem": "npm"
},
{
"name": "vite",
"direct": false,
"version": "^8.1.0",
"ecosystem": "npm"
},
{
"name": "vite",
"direct": false,
"version": "^8.1.5",
"ecosystem": "npm"
},
{
"name": "vitefu",
"direct": false,
"version": "1.1.3",
"ecosystem": "npm"
},
{
"name": "vitest",
"direct": false,
"version": "^4.1.10",
"ecosystem": "npm"
},
{
"name": "watchpack",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "wbuf",
"direct": false,
"version": "1.7.3",
"ecosystem": "npm"
},
{
"name": "webpack",
"direct": false,
"version": "5.108.4",
"ecosystem": "npm"
},
{
"name": "webpack-cli",
"direct": false,
"version": "7.2.1",
"ecosystem": "npm"
},
{
"name": "webpack-dev-middleware",
"direct": false,
"version": "7.4.5",
"ecosystem": "npm"
},
{
"name": "webpack-dev-server",
"direct": false,
"version": "5.2.6",
"ecosystem": "npm"
},
{
"name": "webpack-merge",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "webpack-sources",
"direct": false,
"version": "3.5.1",
"ecosystem": "npm"
},
{
"name": "websocket-driver",
"direct": false,
"version": "0.7.5",
"ecosystem": "npm"
},
{
"name": "websocket-extensions",
"direct": false,
"version": "0.1.4",
"ecosystem": "npm"
},
{
"name": "which",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "wildcard",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "ws",
"direct": false,
"version": "8.21.0",
"ecosystem": "npm"
},
{
"name": "wsl-utils",
"direct": false,
"version": "0.1.0",
"ecosystem": "npm"
},
{
"name": "zimmerframe",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
}
],
"collected": true,
"truncated": false,
"total_count": 533,
"direct_count": 3,
"indirect_count": 530
}
},
"maintainership": {
"issues": {
"open_prs": 21,
"merged_prs": 2032,
"open_issues": 10,
"closed_ratio": 0.99,
"closed_issues": 1001,
"closed_unmerged_prs": 269
},
"bus_factor": 1,
"bot_contributors": 2,
"top_contributors": [
{
"type": "User",
"login": "metonym",
"commits": 4126,
"avatar_url": "https://avatars.githubusercontent.com/u/10718366?v=4"
},
{
"type": "User",
"login": "josefaidt",
"commits": 49,
"avatar_url": "https://avatars.githubusercontent.com/u/5033303?v=4"
},
{
"type": "User",
"login": "weaseldotro",
"commits": 30,
"avatar_url": "https://avatars.githubusercontent.com/u/1822852?v=4"
},
{
"type": "User",
"login": "theetrain",
"commits": 29,
"avatar_url": "https://avatars.githubusercontent.com/u/12798751?v=4"
},
{
"type": "User",
"login": "spburtsev",
"commits": 28,
"avatar_url": "https://avatars.githubusercontent.com/u/74183548?v=4"
},
{
"type": "User",
"login": "mfeitoza",
"commits": 23,
"avatar_url": "https://avatars.githubusercontent.com/u/8423813?v=4"
},
{
"type": "User",
"login": "b-r-i-a-n-w-e-s-t",
"commits": 16,
"avatar_url": "https://avatars.githubusercontent.com/u/157514993?v=4"
},
{
"type": "User",
"login": "albertms10",
"commits": 15,
"avatar_url": "https://avatars.githubusercontent.com/u/26429103?v=4"
},
{
"type": "User",
"login": "brunnerh",
"commits": 14,
"avatar_url": "https://avatars.githubusercontent.com/u/834235?v=4"
},
{
"type": "User",
"login": "adanug",
"commits": 12,
"avatar_url": "https://avatars.githubusercontent.com/u/30908221?v=4"
}
],
"contributors_sampled": 98,
"top_contributor_share": 0.913
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"checks.yml",
"deploy-docs.yml",
"release.yml"
],
"has_docs_dir": true,
"linter_configs": [
"biome.json"
],
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"package-lock.json"
],
"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": null,
"reason": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 9,
"reason": "19 out of 20 merged PRs checked by a CI test -- score normalized to 9",
"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": 0,
"reason": "Found 2/22 approved changesets -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 10,
"reason": "project has 11 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 12 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": 10,
"reason": "all dependencies are pinned",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
},
{
"name": "SAST",
"score": 9,
"reason": "SAST tool is not run on all commits -- score normalized to 9",
"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": 9,
"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": "b540a03b73fac07710c7ab00a96225986cd0c0e8",
"ran_at": "2026-07-22T19:32:11Z",
"aggregate_score": 7.3,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": true,
"has_dependabot_config": false
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-19T22:40:26Z",
"oldest_open_prs": [
{
"number": 464,
"created_at": "2020-12-17T06:27:12Z",
"last_comment_at": "2020-12-17T06:27:17Z",
"last_comment_author": "vercel"
},
{
"number": 622,
"created_at": "2021-05-03T17:40:12Z",
"last_comment_at": "2021-07-10T19:13:28Z",
"last_comment_author": "geoidesic"
},
{
"number": 624,
"created_at": "2021-05-04T15:37:38Z",
"last_comment_at": "2021-05-04T15:42:44Z",
"last_comment_author": "NyxCode"
},
{
"number": 1657,
"created_at": "2023-02-12T18:59:36Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1702,
"created_at": "2023-03-24T23:00:06Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1876,
"created_at": "2024-01-02T14:09:06Z",
"last_comment_at": "2024-01-02T21:09:55Z",
"last_comment_author": "daviseidel"
},
{
"number": 1895,
"created_at": "2024-01-16T21:33:23Z",
"last_comment_at": "2024-01-16T21:33:41Z",
"last_comment_author": "theetrain"
},
{
"number": 1930,
"created_at": "2024-03-08T02:15:01Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1991,
"created_at": "2024-08-12T10:12:23Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 3086,
"created_at": "2026-05-23T20:14:31Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 3115,
"created_at": "2026-05-31T04:28:26Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 3120,
"created_at": "2026-05-31T17:05:43Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 3155,
"created_at": "2026-06-05T04:03:00Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 3164,
"created_at": "2026-06-06T18:07:47Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 3242,
"created_at": "2026-06-10T00:08:42Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 3253,
"created_at": "2026-06-10T04:22:32Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 3304,
"created_at": "2026-06-13T17:53:58Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 3321,
"created_at": "2026-06-13T22:12:49Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 3407,
"created_at": "2026-07-03T22:28:46Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 3410,
"created_at": "2026-07-04T20:54:02Z",
"last_comment_at": null,
"last_comment_author": null
}
],
"last_merged_pr_at": "2026-07-19T20:16:49Z",
"ci_last_conclusion": "SUCCESS",
"oldest_open_issues": [
{
"number": 686,
"created_at": "2021-06-23T03:17:21Z",
"last_comment_at": "2026-06-10T22:33:19Z",
"last_comment_author": "brunnerh"
},
{
"number": 735,
"created_at": "2021-07-08T12:42:57Z",
"last_comment_at": "2026-06-10T17:09:54Z",
"last_comment_author": "metonym"
},
{
"number": 943,
"created_at": "2021-12-22T17:28:29Z",
"last_comment_at": "2023-08-21T13:29:20Z",
"last_comment_author": "tay1orjones"
},
{
"number": 1385,
"created_at": "2022-07-07T17:09:03Z",
"last_comment_at": "2022-08-22T19:32:07Z",
"last_comment_author": "tunacasserole"
},
{
"number": 1422,
"created_at": "2022-08-05T11:24:06Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1516,
"created_at": "2022-10-10T16:19:40Z",
"last_comment_at": "2023-05-12T11:44:37Z",
"last_comment_author": "brunnerh"
},
{
"number": 1590,
"created_at": "2022-12-16T02:41:06Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1593,
"created_at": "2022-12-18T11:04:56Z",
"last_comment_at": "2023-01-26T19:50:19Z",
"last_comment_author": "mgreminger"
},
{
"number": 1599,
"created_at": "2022-12-22T15:58:54Z",
"last_comment_at": "2023-02-04T15:23:26Z",
"last_comment_author": "theetrain"
},
{
"number": 3136,
"created_at": "2026-06-02T08:52:21Z",
"last_comment_at": "2026-06-06T02:46:01Z",
"last_comment_author": "metonym"
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/carbon-design-system/carbon-components-svelte",
"host": "github.com",
"name": "carbon-components-svelte",
"owner": "carbon-design-system"
},
"metrics": {
"overall": {
"key": "overall",
"band": "good",
"name": "Overall health",
"note": null,
"notes": [],
"value": 83,
"inputs": {
"security": 78,
"vitality": 99,
"community": 84,
"governance": 69,
"engineering": 85
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "excellent",
"name": "Vitality",
"value": 99,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "excellent",
"name": "Development activity",
"note": null,
"notes": [],
"value": 98,
"inputs": {
"commits_last_year": 2370,
"human_commit_share": 0.99,
"days_since_last_push": 2,
"active_weeks_last_year": 49
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 2 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 2
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "49/52 weeks with commits",
"points": 33.9,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 49
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "2370 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 2370
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 12 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": 100,
"latest_release_tag": "v0.110.1",
"releases_from_tags": false,
"days_since_latest_release": 5,
"mean_days_between_releases": 11.1
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "100 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 100
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 5 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 5
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~11.1 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 11.1
}
}
],
"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": 2,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 2 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 2
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "good",
"name": "Community & Adoption",
"value": 84,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "excellent",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 85,
"inputs": {
"forks": 262,
"stars": 2891,
"watchers": 36,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "2,891 stars",
"points": 56.1,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 2891
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "262 forks",
"points": 20.1,
"status": "partial",
"details": [
{
"code": "forks",
"params": {
"count": 262
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "36 watchers",
"points": 8.6,
"status": "partial",
"details": [
{
"code": "watchers",
"params": {
"count": 36
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "excellent",
"name": "Community health",
"note": null,
"notes": [],
"value": 85,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": true,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": false
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (Apache-2.0)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "Apache-2.0"
}
}
],
"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": 0,
"status": "missed",
"details": [],
"max_points": 6.3
}
]
},
{
"key": "ecosystem_adoption",
"band": "good",
"name": "Ecosystem adoption (downloads)",
"note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"registry_dependents"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 83,
"inputs": {
"packages": [
"carbon-components-svelte"
],
"dependents": null,
"ecosystems": "npm",
"total_downloads": null,
"monthly_downloads": 98210
},
"components": [
{
"key": "monthly_downloads",
"name": "Monthly downloads",
"detail": "98,210 downloads/month across npm",
"points": 66.6,
"status": "partial",
"details": [
{
"code": "downloads_monthly",
"params": {
"count": 98210,
"ecosystems": "npm"
}
}
],
"max_points": 80
},
{
"key": "registry_dependents",
"name": "Registry dependents",
"detail": "not reported by this ecosystem",
"points": 0,
"status": "excluded",
"details": [
{
"code": "not_reported_by_this_ecosystem",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "moderate",
"name": "Sustainability & Governance",
"value": 69,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "at_risk",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 34,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 98,
"top_contributor_share": 0.913
},
"components": [
{
"key": "bus_factor",
"name": "Bus factor",
"detail": "1 contributor(s) cover half of all commits",
"points": 9,
"status": "partial",
"details": [
{
"code": "bus_factor",
"params": {
"count": 1
}
}
],
"max_points": 54
},
{
"key": "commit_distribution",
"name": "Commit distribution",
"detail": "top contributor authored 91% of commits",
"points": 2,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 91
}
}
],
"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 11 contributing companies or organizations",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "good",
"name": "Issue & PR responsiveness",
"note": null,
"notes": [],
"value": 80,
"inputs": {
"merged_prs": 2032,
"open_issues": 10,
"closed_issues": 1001,
"issue_closed_ratio": 0.99,
"closed_unmerged_prs": 269
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "99% of issues closed",
"points": 46.3,
"status": "partial",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 99
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "2032/2301 decided PRs merged",
"points": 33.8,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 2032,
"decided": 2301
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 2/22 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "good",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 76,
"inputs": {
"followers": 911,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "carbon-design-system",
"public_repos": 120,
"account_age_days": 3473
},
"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": "911 followers of carbon-design-system",
"points": 21.3,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 911,
"login": "carbon-design-system"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "120 public repos, account ~9 yr old",
"points": 25,
"status": "met",
"details": [
{
"code": "public_repos",
"params": {
"count": 120
}
},
{
"code": "account_age_years",
"params": {
"years": 9
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"carbon-components-svelte"
],
"ecosystems": "npm",
"any_deprecated": false,
"min_days_since_publish": 5
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "1 package(s) on npm",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 1,
"ecosystems": "npm"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 5 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 5
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "324 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 324
}
}
],
"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": "excellent",
"name": "Engineering Quality",
"value": 85,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "good",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 82,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": false,
"has_linter_config": true,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "3 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 3
}
}
],
"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": "biome.json",
"points": 16,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "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": 0,
"status": "missed",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "19 out of 20 merged PRs checked by a CI test -- score normalized to 9",
"points": 18,
"status": "partial",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "excellent",
"name": "Documentation",
"note": null,
"notes": [],
"value": 90,
"inputs": {
"topics": [
"carbon-design-system",
"svelte",
"design-system",
"carbon",
"svelte-components",
"component-library",
"typescript",
"ui-library",
"ui-components"
],
"has_wiki": false,
"homepage": "https://svelte.carbondesignsystem.com",
"has_readme": true,
"has_docs_dir": true,
"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": 25,
"status": "met",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": "https://svelte.carbondesignsystem.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": "9 topics",
"points": 10,
"status": "met",
"details": [
{
"code": "topics_count",
"params": {
"count": 9
}
}
],
"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": 78,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "good",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): Branch-Protection, Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"branch_protection",
"signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 73,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 16,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 2,
"scorecard_aggregate": 7.3
},
"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": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "19 out of 20 merged PRs checked by a CI test -- score normalized to 9",
"points": 2.2,
"status": "partial",
"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 2/22 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 11 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 12 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": "all dependencies are pinned",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "sast",
"name": "SAST",
"detail": "SAST tool is not run on all commits -- score normalized to 9",
"points": 4.5,
"status": "partial",
"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": 6.8,
"status": "partial",
"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 490 resolved dependencies against OSV; 43 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": 490
}
},
{
"code": "advisories_unassessed",
"params": {
"count": 43
}
},
{
"code": "advisories_repo_graph_caveat",
"params": {}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 100,
"inputs": {
"source": "osv",
"advisories": 1,
"affected_packages": 1,
"assessed_packages": 490,
"unassessed_packages": 43,
"affected_by_severity": "low 1",
"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": 490,
"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": 12
},
"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": "moderate",
"name": "AI Readiness",
"value": 62,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "at_risk",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 0.97,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "no CLAUDE.md / AGENTS.md / editor rules",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_instructions",
"params": {}
}
],
"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": "96 of 99 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 96,
"sampled": 99
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "good",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 72,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"package-lock.json"
],
"has_dockerfile": false,
"typed_language": true,
"bootstrap_files": [],
"has_devcontainer": false,
"has_linter_config": true,
"typecheck_configs": [
"docs/tsconfig.json",
"examples/sveltekit/jsconfig.json",
"tests/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": "biome.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "biome.json"
}
}
],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "docs/tsconfig.json, examples/sveltekit/jsconfig.json, tests/tsconfig.json, tsconfig.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "docs/tsconfig.json, examples/sveltekit/jsconfig.json, tests/tsconfig.json, tsconfig.json"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "lockfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "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": "all dependencies are pinned",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "excellent",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"primary_language": "TypeScript",
"largest_source_bytes": 109755,
"source_files_sampled": 680,
"oversized_source_files": 6
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "TypeScript (statically typed)",
"points": 45,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "TypeScript"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "6/680 source files over 60KB",
"points": 54.5,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 680,
"oversized": 6
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "at_risk",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"example_dirs": [
"examples"
],
"has_mcp_signal": false,
"api_schema_files": []
},
"components": [
{
"key": "api_schema_openapi_graphql_proto",
"name": "API schema (OpenAPI/GraphQL/proto)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 40
},
{
"key": "mcp_server",
"name": "MCP server",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "runnable_examples",
"name": "Runnable examples",
"detail": "examples",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "examples"
}
}
],
"max_points": 40
}
]
}
],
"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",
"deps.dev does not index npm:carbon-components-svelte@0.110.1; advisories assessed against the repository dependency graph instead"
],
"report_type": "repository",
"generated_at": "2026-07-22T19:32:41.518858Z",
"schema_version": "0.26.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/c/carbon-design-system/carbon-components-svelte.svg",
"full_name": "carbon-design-system/carbon-components-svelte",
"license_state": "standard",
"license_spdx": "Apache-2.0"
}