JSON-Rohbericht maschinenlesbar
{
"data": {
"repo": {
"topics": [
"3d-viewer",
"columnar",
"ifc",
"rust",
"webgpu",
"cli",
"ifc-parser",
"script-editor",
"bcf",
"ids",
"mcp",
"pointcloud",
"sdk"
],
"is_fork": false,
"size_kb": 171335,
"has_wiki": false,
"homepage": "https://ifclite.dev",
"languages": {
"C#": 3623599,
"CSS": 99501,
"HTML": 79674,
"Rust": 6520393,
"Shell": 56539,
"Python": 35581,
"Dockerfile": 4382,
"JavaScript": 458271,
"TypeScript": 25297374
},
"pushed_at": "2026-07-21T17:08:26Z",
"created_at": "2026-01-10T16:00:00Z",
"owner_type": "Organization",
"updated_at": "2026-07-21T17:05:02Z",
"description": "Parse, view, query, edit, and export IFC, IDS, BCF, pointclouds and more AEC stuff. In the browser, server or desktop. ",
"is_archived": false,
"is_disabled": false,
"license_spdx": "MPL-2.0",
"default_branch": "main",
"license_spdx_raw": "MPL-2.0",
"primary_language": "TypeScript",
"significant_languages": [
"TypeScript",
"Rust",
"C#"
]
},
"owner": {
"blog": null,
"name": "LTplus AG",
"type": "Organization",
"login": "LTplus-AG",
"company": null,
"location": null,
"followers": 16,
"avatar_url": "https://avatars.githubusercontent.com/u/166899685?v=4",
"created_at": "2024-04-13T06:31:31Z",
"is_verified": null,
"public_repos": 7,
"account_age_days": 829
},
"license": {
"state": "standard",
"spdx_id": "MPL-2.0",
"raw_spdx": "MPL-2.0",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "@ifc-lite/geometry@3.4.0",
"kind": "other",
"published_at": "2026-07-21T11:36:15Z"
},
{
"tag": "@ifc-lite/wasm@4.1.4",
"kind": "other",
"published_at": "2026-07-21T11:36:12Z"
},
{
"tag": "v4.1.4",
"kind": "patch",
"published_at": "2026-07-21T11:36:17Z"
},
{
"tag": "@ifc-lite/wasm@4.1.3",
"kind": "other",
"published_at": "2026-07-19T12:37:42Z"
},
{
"tag": "@ifc-lite/geometry@3.3.1",
"kind": "other",
"published_at": "2026-07-19T12:37:40Z"
},
{
"tag": "v4.1.3",
"kind": "patch",
"published_at": "2026-07-19T12:37:45Z"
},
{
"tag": "@ifc-lite/wasm@4.1.2",
"kind": "other",
"published_at": "2026-07-19T05:58:37Z"
},
{
"tag": "v4.1.2",
"kind": "patch",
"published_at": "2026-07-19T05:58:40Z"
},
{
"tag": "@ifc-lite/data@2.8.0",
"kind": "other",
"published_at": "2026-07-17T20:57:39Z"
},
{
"tag": "@ifc-lite/lists@1.21.0",
"kind": "other",
"published_at": "2026-07-17T20:57:36Z"
},
{
"tag": "@ifc-lite/ids@1.15.34",
"kind": "other",
"published_at": "2026-07-17T20:57:33Z"
},
{
"tag": "@ifc-lite/parser@3.10.1",
"kind": "other",
"published_at": "2026-07-17T20:57:30Z"
},
{
"tag": "@ifc-lite/wasm@4.1.1",
"kind": "other",
"published_at": "2026-07-17T20:57:27Z"
},
{
"tag": "@ifc-lite/server-client@1.20.0",
"kind": "other",
"published_at": "2026-07-17T15:12:32Z"
},
{
"tag": "@ifc-lite/mutations@1.21.0",
"kind": "other",
"published_at": "2026-07-17T15:12:29Z"
},
{
"tag": "@ifc-lite/wasm@4.1.0",
"kind": "other",
"published_at": "2026-07-17T15:12:26Z"
},
{
"tag": "@ifc-lite/lists@1.20.1",
"kind": "other",
"published_at": "2026-07-17T15:12:23Z"
},
{
"tag": "@ifc-lite/parser@3.10.0",
"kind": "other",
"published_at": "2026-07-17T15:12:20Z"
},
{
"tag": "@ifc-lite/ids@1.15.33",
"kind": "other",
"published_at": "2026-07-17T15:12:17Z"
},
{
"tag": "@ifc-lite/cli@0.20.0",
"kind": "other",
"published_at": "2026-07-17T15:12:14Z"
},
{
"tag": "@ifc-lite/drawing-2d@1.19.0",
"kind": "other",
"published_at": "2026-07-17T15:12:11Z"
},
{
"tag": "@ifc-lite/geometry@3.3.0",
"kind": "other",
"published_at": "2026-07-17T15:12:08Z"
},
{
"tag": "@ifc-lite/renderer@1.39.0",
"kind": "other",
"published_at": "2026-07-17T15:12:05Z"
},
{
"tag": "@ifc-lite/pointcloud@0.4.0",
"kind": "other",
"published_at": "2026-07-17T15:12:02Z"
},
{
"tag": "@ifc-lite/ifcx@2.3.1",
"kind": "other",
"published_at": "2026-07-17T15:11:59Z"
},
{
"tag": "@ifc-lite/data@2.7.0",
"kind": "other",
"published_at": "2026-07-17T15:11:56Z"
},
{
"tag": "@ifc-lite/export@2.6.0",
"kind": "other",
"published_at": "2026-07-17T15:11:53Z"
},
{
"tag": "v4.1.1",
"kind": "patch",
"published_at": "2026-07-17T15:12:42Z"
},
{
"tag": "@ifc-lite/geometry@3.2.1",
"kind": "other",
"published_at": "2026-07-17T04:50:14Z"
},
{
"tag": "@ifc-lite/lists@1.20.0",
"kind": "other",
"published_at": "2026-07-17T04:50:11Z"
},
{
"tag": "@ifc-lite/pointcloud@0.3.6",
"kind": "other",
"published_at": "2026-07-17T04:50:08Z"
},
{
"tag": "@ifc-lite/parser@3.9.1",
"kind": "other",
"published_at": "2026-07-17T04:50:05Z"
},
{
"tag": "@ifc-lite/data@2.6.0",
"kind": "other",
"published_at": "2026-07-17T04:50:02Z"
},
{
"tag": "@ifc-lite/wasm@4.0.1",
"kind": "other",
"published_at": "2026-07-17T04:49:59Z"
},
{
"tag": "@ifc-lite/bcf@1.16.3",
"kind": "other",
"published_at": "2026-07-17T04:49:56Z"
},
{
"tag": "@ifc-lite/ids@1.15.32",
"kind": "other",
"published_at": "2026-07-17T04:49:53Z"
},
{
"tag": "@ifc-lite/export@2.5.3",
"kind": "other",
"published_at": "2026-07-17T04:49:50Z"
},
{
"tag": "@ifc-lite/cache@2.2.1",
"kind": "other",
"published_at": "2026-07-17T04:49:47Z"
},
{
"tag": "@ifc-lite/renderer@1.38.1",
"kind": "other",
"published_at": "2026-07-17T04:49:44Z"
},
{
"tag": "@ifc-lite/encoding@1.14.11",
"kind": "other",
"published_at": "2026-07-17T04:49:41Z"
},
{
"tag": "@ifc-lite/mcp@0.9.1",
"kind": "other",
"published_at": "2026-07-17T04:49:38Z"
},
{
"tag": "@ifc-lite/server-client@1.19.0",
"kind": "other",
"published_at": "2026-07-17T04:49:35Z"
},
{
"tag": "@ifc-lite/collab-server@0.5.0",
"kind": "other",
"published_at": "2026-07-17T04:49:32Z"
},
{
"tag": "@ifc-lite/parser@3.9.0",
"kind": "other",
"published_at": "2026-07-16T08:44:57Z"
},
{
"tag": "@ifc-lite/ids@1.15.31",
"kind": "other",
"published_at": "2026-07-16T08:44:54Z"
},
{
"tag": "@ifc-lite/lists@1.19.0",
"kind": "other",
"published_at": "2026-07-16T08:44:52Z"
},
{
"tag": "@ifc-lite/renderer@1.38.0",
"kind": "other",
"published_at": "2026-07-15T15:40:13Z"
},
{
"tag": "@ifc-lite/merge@0.3.1",
"kind": "other",
"published_at": "2026-07-15T07:22:44Z"
},
{
"tag": "@ifc-lite/collab-server@0.4.1",
"kind": "other",
"published_at": "2026-07-15T07:22:41Z"
},
{
"tag": "@ifc-lite/mutations@1.20.0",
"kind": "other",
"published_at": "2026-07-12T22:03:20Z"
},
{
"tag": "@ifc-lite/collab-server@0.4.0",
"kind": "other",
"published_at": "2026-07-12T22:03:17Z"
},
{
"tag": "@ifc-lite/mcp@0.9.0",
"kind": "other",
"published_at": "2026-07-12T22:03:14Z"
},
{
"tag": "@ifc-lite/collab@0.4.0",
"kind": "other",
"published_at": "2026-07-12T22:03:11Z"
},
{
"tag": "@ifc-lite/merge@0.3.0",
"kind": "other",
"published_at": "2026-07-12T22:03:08Z"
},
{
"tag": "@ifc-lite/cli@0.19.0",
"kind": "other",
"published_at": "2026-07-12T22:03:05Z"
},
{
"tag": "@ifc-lite/collab@0.3.0",
"kind": "other",
"published_at": "2026-07-11T20:30:03Z"
},
{
"tag": "@ifc-lite/collab-server@0.3.0",
"kind": "other",
"published_at": "2026-07-11T20:30:00Z"
},
{
"tag": "@ifc-lite/mcp@0.8.0",
"kind": "other",
"published_at": "2026-07-11T20:29:57Z"
},
{
"tag": "@ifc-lite/mutations@1.19.0",
"kind": "other",
"published_at": "2026-07-11T20:29:54Z"
},
{
"tag": "@ifc-lite/ids@1.15.30",
"kind": "other",
"published_at": "2026-07-11T20:29:51Z"
},
{
"tag": "@ifc-lite/diff@0.4.0",
"kind": "other",
"published_at": "2026-07-11T20:29:48Z"
},
{
"tag": "@ifc-lite/wasm@4.0.0",
"kind": "other",
"published_at": "2026-07-11T20:29:45Z"
},
{
"tag": "@ifc-lite/viewer-core@0.2.10",
"kind": "other",
"published_at": "2026-07-11T20:29:42Z"
},
{
"tag": "@ifc-lite/geometry@3.2.0",
"kind": "other",
"published_at": "2026-07-11T20:29:39Z"
},
{
"tag": "@ifc-lite/clash@1.6.3",
"kind": "other",
"published_at": "2026-07-11T20:29:36Z"
},
{
"tag": "@ifc-lite/extensions@0.4.0",
"kind": "other",
"published_at": "2026-07-11T20:29:33Z"
},
{
"tag": "@ifc-lite/renderer@1.37.0",
"kind": "other",
"published_at": "2026-07-11T20:29:30Z"
},
{
"tag": "@ifc-lite/merge@0.2.0",
"kind": "other",
"published_at": "2026-07-11T20:29:27Z"
},
{
"tag": "@ifc-lite/parser@3.8.5",
"kind": "other",
"published_at": "2026-07-11T20:29:24Z"
},
{
"tag": "@ifc-lite/cli@0.18.0",
"kind": "other",
"published_at": "2026-07-11T20:29:21Z"
},
{
"tag": "@ifc-lite/ifcx@2.3.0",
"kind": "other",
"published_at": "2026-07-11T20:29:18Z"
},
{
"tag": "@ifc-lite/renderer@1.36.0",
"kind": "other",
"published_at": "2026-07-11T07:20:42Z"
},
{
"tag": "@ifc-lite/cache@2.2.0",
"kind": "other",
"published_at": "2026-07-11T07:20:39Z"
},
{
"tag": "@ifc-lite/data@2.5.3",
"kind": "other",
"published_at": "2026-07-10T16:48:38Z"
},
{
"tag": "@ifc-lite/lists@1.18.4",
"kind": "other",
"published_at": "2026-07-10T16:48:35Z"
},
{
"tag": "@ifc-lite/parser@3.8.4",
"kind": "other",
"published_at": "2026-07-10T16:48:32Z"
},
{
"tag": "@ifc-lite/ids@1.15.29",
"kind": "other",
"published_at": "2026-07-10T16:48:29Z"
},
{
"tag": "@ifc-lite/wasm@3.0.15",
"kind": "other",
"published_at": "2026-07-10T11:10:12Z"
},
{
"tag": "@ifc-lite/collab-server@0.2.6",
"kind": "other",
"published_at": "2026-07-10T11:10:09Z"
},
{
"tag": "@ifc-lite/collab@0.2.7",
"kind": "other",
"published_at": "2026-07-10T11:10:06Z"
},
{
"tag": "@ifc-lite/parser@3.8.3",
"kind": "other",
"published_at": "2026-07-10T11:10:03Z"
},
{
"tag": "@ifc-lite/ids@1.15.28",
"kind": "other",
"published_at": "2026-07-10T11:10:00Z"
},
{
"tag": "@ifc-lite/geometry@3.1.5",
"kind": "other",
"published_at": "2026-07-10T11:09:57Z"
},
{
"tag": "@ifc-lite/renderer@1.35.2",
"kind": "other",
"published_at": "2026-07-10T11:09:54Z"
},
{
"tag": "@ifc-lite/ifcx@2.2.3",
"kind": "other",
"published_at": "2026-07-10T11:09:51Z"
},
{
"tag": "@ifc-lite/query@1.14.13",
"kind": "other",
"published_at": "2026-07-10T07:57:54Z"
},
{
"tag": "@ifc-lite/server-bin@1.16.6",
"kind": "other",
"published_at": "2026-07-10T07:57:51Z"
},
{
"tag": "@ifc-lite/mcp@0.7.2",
"kind": "other",
"published_at": "2026-07-10T07:57:48Z"
},
{
"tag": "@ifc-lite/wasm@3.0.14",
"kind": "other",
"published_at": "2026-07-10T07:57:45Z"
},
{
"tag": "@ifc-lite/lens@1.17.2",
"kind": "other",
"published_at": "2026-07-10T07:57:42Z"
},
{
"tag": "@ifc-lite/geometry@3.1.4",
"kind": "other",
"published_at": "2026-07-10T07:57:40Z"
},
{
"tag": "@ifc-lite/mutations@1.18.1",
"kind": "other",
"published_at": "2026-07-10T07:57:36Z"
},
{
"tag": "@ifc-lite/pointcloud@0.3.5",
"kind": "other",
"published_at": "2026-07-10T07:57:33Z"
},
{
"tag": "@ifc-lite/parser@3.8.2",
"kind": "other",
"published_at": "2026-07-10T07:57:31Z"
},
{
"tag": "@ifc-lite/spatial@1.14.12",
"kind": "other",
"published_at": "2026-07-10T07:57:27Z"
},
{
"tag": "@ifc-lite/server-client@1.18.3",
"kind": "other",
"published_at": "2026-07-10T07:57:24Z"
},
{
"tag": "@ifc-lite/lists@1.18.3",
"kind": "other",
"published_at": "2026-07-10T07:57:21Z"
},
{
"tag": "@ifc-lite/sandbox@1.16.3",
"kind": "other",
"published_at": "2026-07-10T07:57:18Z"
},
{
"tag": "@ifc-lite/viewer-core@0.2.9",
"kind": "other",
"published_at": "2026-07-10T07:57:15Z"
},
{
"tag": "@ifc-lite/ids@1.15.27",
"kind": "other",
"published_at": "2026-07-10T07:57:12Z"
}
],
"recent_commits": [
{
"oid": "9a70a18dc1afdb31447690e6a5b22c2912c1acad",
"body": "…des (#1838)\n\nThree high-severity advisories were open, all on transitive npm packages\nthat no direct dependency pins tightly enough to pull the fix in on its\nown:\n\n- GHSA-3jxr-9vmj-r5cp brace-expansion 1.1.15 (via minimatch@3.1.5) and\n 2.1.1 (via minimatch@5.1.9) - exponential-time expansion of\n \n[…]\nready\nuses for picomatch, one override per major line since 1.x and 2.x are\nboth in the tree and there is no single range covering both.\n\nLockfile-only otherwise; no direct dependency versions change.",
"is_bot": false,
"headline": "chore(deps): resolve all three open Dependabot alerts via pnpm overri…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-21T17:04:24Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "c9852959b2e2d7c42dca9a3289e9181f161e9bdf",
"body": "…1837)\n\n`production_smiley_all_host_walls_have_holes` reported 3/190 hosts as\n\"uncut\" on a clean checkout. The kernel was right and the test was\nwrong: `process_element_with_voids` may return a LOCAL-FRAME mesh\n(`origin != 0`) — the parametric rect fast path does for 29 of the 190\nhosts in that fixt\n[…]\nthat promise world coordinates. Verified: with the fold the cut\nhosts pass 190/190, and with the void cut deliberately skipped the sweep\nstill flags 190/190 as uncut, so the assertion keeps its teeth.",
"is_bot": false,
"headline": "test(geometry): fold mesh origin before world-space void ray-casts (#…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-21T16:51:53Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8f0b82e242c8eb298e1d3039ee30b27f3d064cfe",
"body": "…th 28 updates (#1834)\n\nBumps the npm-minor-and-patch group with 28 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [@changesets/cli](https://github.com/changesets/changesets) | `2.31.0` | `2.31.1` |\n| [knip](https://github.com/webpro-nl/knip/tree/HEAD/packages/knip) | `6.\n[…]\nupdate:semver-minor\n dependency-group: npm-minor-and-patch\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": "chore(deps): bump the npm-minor-and-patch group across 1 directory wi…",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-21T16:37:35Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "ee6ce1af851ec59ad870098a6100b11825cb9eff",
"body": "…with 11 updates (#1833)\n\n---\nupdated-dependencies:\n- dependency-name: futures-core\n dependency-version: 0.3.33\n dependency-type: direct:production\n update-type: version-update:semver-patch\n dependency-group: cargo-minor-and-patch\n- dependency-name: futures-util\n dependency-version: 0.3.33\n de\n[…]\ndate:semver-patch\n dependency-group: cargo-minor-and-patch\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": "chore(deps): bump the cargo-minor-and-patch group across 1 directory …",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-21T16:37:27Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "087789bf9cfbf436072aece3448485f8b59b532c",
"body": "Bumps [actions/setup-python](https://github.com/actions/setup-python) from 6.3.0 to 7.0.0.\n- [Release notes](https://github.com/actions/setup-python/releases)\n- [Commits](https://github.com/actions/setup-python/compare/ece7cb06caefa5fff74198d8649806c4678c61a1...5fda3b95a4ea91299a34e894583c3862153e4b\n[…]\nirect:production\n update-type: version-update:semver-major\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": "chore(deps): bump actions/setup-python from 6.3.0 to 7.0.0 (#1823)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-21T16:37:19Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "679072f875d70bb53c7e2c7a2f0e1a9d405081d7",
"body": "Bumps [actions/setup-node](https://github.com/actions/setup-node) from 6.4.0 to 7.0.0.\n- [Release notes](https://github.com/actions/setup-node/releases)\n- [Commits](https://github.com/actions/setup-node/compare/48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e...820762786026740c76f36085b0efc47a31fe5020)\n\n---\n[…]\nirect:production\n update-type: version-update:semver-major\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": "chore(deps): bump actions/setup-node from 6.4.0 to 7.0.0 (#1825)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-21T16:37:11Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "19c93b1f3067568f4723ede1cc37d2d811344108",
"body": "Bumps [dtolnay/rust-toolchain](https://github.com/dtolnay/rust-toolchain) from fa04a1451ff1842e2626ccb99004d0195b455a88 to 2c7215f132e9ebf062739d9130488b56d53c060c.\n- [Release notes](https://github.com/dtolnay/rust-toolchain/releases)\n- [Commits](https://github.com/dtolnay/rust-toolchain/compare/fa0\n[…]\n739d9130488b56d53c060c\n dependency-type: direct:production\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": "chore(deps): bump dtolnay/rust-toolchain (#1826)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-21T16:36:37Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "3267e7a45f9b3d2abf892fd60cc34917d8336311",
"body": "Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 5.4.0 to 6.0.0.\n- [Release notes](https://github.com/actions/setup-dotnet/releases)\n- [Commits](https://github.com/actions/setup-dotnet/compare/26b0ec14cb23fa6904739307f278c14f94c95bf1...a98b56852c35b8e3190ac28c8c2271da59106c\n[…]\nirect:production\n update-type: version-update:semver-major\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": "chore(deps): bump actions/setup-dotnet from 5.4.0 to 6.0.0 (#1824)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-21T16:36:33Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f04999aedacd08eab144117a9a4edda7ab458237",
"body": "Bumps the actions-minor-and-patch group with 1 update: [pypa/gh-action-pypi-publish](https://github.com/pypa/gh-action-pypi-publish).\n\n\nUpdates `pypa/gh-action-pypi-publish` from 1.14.0 to 1.14.1\n- [Release notes](https://github.com/pypa/gh-action-pypi-publish/releases)\n- [Commits](https://github.co\n[…]\nte:semver-patch\n dependency-group: actions-minor-and-patch\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": "chore(deps): bump pypa/gh-action-pypi-publish (#1822)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-21T16:36:29Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "212e086bcfb60526848aab1d9e0709b5b53a45d9",
"body": "… controls (#1829)\n\n* feat(viewer): add Elements tab to ribbon menu and optimize navigation controls\n\n* fix(viewer): normalize hierarchy mode state naming",
"is_bot": false,
"headline": "feat(viewer): add Elements tab to ribbon menu and optimize navigation…",
"author_name": "xyzbety",
"author_login": "xyzbety",
"committed_at": "2026-07-21T16:28:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0aa186713d982bea64ae3d422f9ae7cf2e855d3b",
"body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "chore: version packages (#1831)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-21T11:28:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "62f0d4fe8178af6eb09f0a0efc7486da8725a8d0",
"body": "…cut region (#1832)\n\n`refine_high_aspect_slivers` exists to repair the high-aspect corner slivers a\ncut emits at an opening rim (#1007), but the prism void fast path ran it over\nthe WHOLE host. On models whose walls are legitimately full of long-thin\nauthored faces — thin steel — it therefore also b\n[…]\nrately), cargo test -p ifc-lite-processing --no-fail-fast including\nmesh_determinism and the module-size ratchet, clippy clean, and\npnpm test:wasm-contract 27/27 against a wasm built from this branch.",
"is_bot": false,
"headline": "perf(geometry): scope the prism void path's sliver refinement to the …",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-21T09:36:34Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "52d16e17817ffcacfec2f58bc592cec252f324b8",
"body": "…file open (#1830)\n\n* perf(viewer,geometry): prewarm the engine wasm on idle instead of on file open\n\nThe ~3.9 MB engine binary (~1.3 MB brotli) was fetched lazily by\n`processParallel`, so on a cold cache the entire download sat between \"user\npicks a file\" and \"first geometry\" — nothing overlapped t\n[…]\nent claiming the dynamic import keeps @ifc-lite/geometry out\nof the entry chunk — useIfcLoader value-imports GeometryProcessor, so it is\nalready in the entry graph and the import resolves from memory.",
"is_bot": false,
"headline": "perf(viewer,geometry): prewarm the engine wasm on idle instead of on …",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-21T08:07:22Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "7ab8b61b4b7686f793cb6d25383d53c819a79fb6",
"body": "…ow/Lowest (#1809) (#1813)\n\n* perf(geometry): drop parametric-profile fillets to sharp corners below Medium (#1809)\n\nSteel sections authored as parametric profiles (IfcI/L/U/TShapeProfileDef)\ncarry their root fillets and toe edge radii as attributes, and the outline\nbuilders tessellate each one into\n[…]\nest's comment called the IfcUShapeProfileDef fixture a\n\"C-shape\" — distinct entity types in IFC. Describe what the cases actually\ncover (mixed concave/convex radii) instead of naming the wrong entity.",
"is_bot": false,
"headline": "perf(geometry): drop parametric-profile fillets to sharp corners at L…",
"author_name": "Yuri Isachenkov",
"author_login": "Blogbotana",
"committed_at": "2026-07-19T12:44:33Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "ec2efa6c9f6fb9180f9b3efe987fddbedd5b6844",
"body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "chore: version packages (#1821)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-19T12:29:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c57098768d27ce08250206f0a55d1d048798c669",
"body": "…819)\n\n* feat(viewer): replace ribbon menu icons with custom colored icons\n\n* Update apps/viewer/src/icons/index.ts\n\nCo-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>\n\n---------\n\nCo-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>\nCo-authored-by: Louis Trümpler <78563314+louistrue@users.noreply.github.com>",
"is_bot": false,
"headline": "feat(viewer): replace ribbon menu icons with custom colored icons (#1…",
"author_name": "xyzbety",
"author_login": "xyzbety",
"committed_at": "2026-07-19T12:17:27Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "fb99bda31397cff2fce7077a8553d2247c2dd151",
"body": "…tart wait (#1818)\n\n* fix(viewer): share compiled wasm module across workers to kill cold-start wait\n\nCompile the geometry engine's WebAssembly.Module ONCE on the main thread and\nstructured-clone it to every geometry + pre-pass worker, which initSync it\n(cheap) instead of each independently fetching\n[…]\nre unaffected.\nGeometry output is unchanged (verified: identical 30456 meshes on a 68 MB\nISSUE_098 model).\n\n* fix(viewer): key shared wasm module cache by resolved URL (federation/version-skew safety)",
"is_bot": false,
"headline": "fix(viewer): share compiled wasm module across workers to kill cold-s…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-19T12:07:58Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "74b9cd2ae0c8bd7888536c882baf809dd4f9e5d8",
"body": "… (misplaced walls in 4.1.2) (#1820)\n\n* fix(geometry): void fast-path no longer drops host local-frame origin (misplaced walls)\n\nThe analytic prism / coaxial-union void fast paths (#1806/#1815) run\nconsolidate_coplanar on their re-triangulated cut host. That helper rebuilt\ninto a bare Mesh::new() wh\n[…]\nurvives\na real consolidation.\n\n* test(geometry): refresh consolidate.rs ratchet budget for the local-frame regression test\n\n* docs(landing): regenerate landing-bench region for refreshed 4.1.2 numbers",
"is_bot": false,
"headline": "fix(geometry): void fast-path no longer drops host local-frame origin…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-19T11:41:34Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "09e788290bfeb59326811dab4e31fad0d6beb001",
"body": "… (#1817)\n\nRe-ran the full corpus on ifc-lite 4.1.2 (2D + analytic-prism + coaxial-union\nvoid fast paths, #1806/#1815) vs web-ifc 0.0.77, same machine/session.\n\nHeadline: the CSG-heavy models that dragged the corpus are now wins —\nISSUE_098 native 9.70s->1.62s (6x), WASM 55.71s->9.62s (5.8x); ISSUE_\n[…]\n2s. Native (10-thread) now beats web-ifc on the full corpus sum\n(~7.3s vs ~14.4s, 19/21 models). WASM single-thread numbers refreshed too\n(4.0.1 -> 4.1.2). IfcOpenShell columns unchanged (not re-run).",
"is_bot": false,
"headline": "docs(landing): refresh benchmark data for 4.1.2 (void fast-path perf)…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-19T06:12:07Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "b7f9f29a92399c5942c466c20718396c172099d5",
"body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "chore: version packages (#1814)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-19T05:50:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b016b1dae1a09921acd6f82d42c9f4eeb57310a5",
"body": "…ers (i129) (#1815)\n\n* perf(geometry): coaxial footprint union for overlapping opening clusters (i129)\n\nOpenings whose cutter prisms OVERLAP cannot join the disjoint-cutter batch and\notherwise fall to the O(N) sequential exact-kernel path — the dominant remaining\nvoid cost on i129's opening-dense sl\n[…]\ns harness on ISSUE_129 + duplex shows no verdict regression; i129\ntriangle count and t_geom are unchanged (all i129 coaxial clusters are genuine\naxis-aligned prisms, so the guards defer none of them).",
"is_bot": false,
"headline": "perf(geometry): coaxial footprint union for overlapping opening clust…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-19T05:14:39Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "ef0743dd970a844f5190fadb9717ff792cded31a",
"body": "…c-prism opening subtraction (#1806)\n\n* perf(geometry): 2D opening subtraction fast path for extruded hosts\n\nWire IfcOpenShell's `boolean-attempt-2d` technique into the void-cutting\npipeline. For an extruded host whose openings penetrate straight through the\nextrusion depth (parallel to the host axi\n[…]\narea is <= MIN_AREA_THRESHOLD and asserts shapes == 2.\n\nAlso fixes two `clippy::manual_is_multiple_of` errors in prism_cut.rs\n(introduced by the prior round) that were failing the CI clippy lint gate.",
"is_bot": false,
"headline": "perf(geometry): beat web-ifc 0.0.77 on the full corpus — 2D + analyti…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-18T16:38:52Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a834cf59a324f9d808b795aaa65c23ed6e7df035",
"body": "…urces (#1807) (#1808)\n\n* perf(geometry): don't-bake instancing keeps uniform indexed-colour sources (#1807)\n\nThe #858 palette guard excluded every IfcIndexedColourMap source from the\ndon't-bake instanced path, but `split_mesh_by_indexed_colour` only splits when\n>=2 palette entries are actually used\n[…]\nrget) otherwise armed every per-job router with an empty set, a pointless\n per-element lookup plus Arc allocation.\n- Clarify the fixture's 1-based ColourIndex vs 0-based palette indexing in the test.",
"is_bot": false,
"headline": "perf(geometry): don't-bake instancing keeps uniform indexed-colour so…",
"author_name": "Yuri Isachenkov",
"author_login": "Blogbotana",
"committed_at": "2026-07-18T14:43:09Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "596aebc7ceb4a1a9d071c2c7f09f4baef0b6e3ee",
"body": null,
"is_bot": false,
"headline": "Delete CONTRIBUTORS.md (#1812)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-18T05:21:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8cf871914a5e0647e21c36d1516bb86dfa52546e",
"body": "…34 (#1811)\n\nCommit bfc7dd4f (#1734) was a 3-line collab-server writeAtomic bugfix\nthat also dragged in 246 lines of stray Railway agent output:\n\n- .railway-config-pull-29151/railway.ts throwaway `railway config pull` placeholder\n- .railway-config-pull-29183/railway.ts identical placeholder\n- .age\n[…]\n canonical .railway/railway.ts,\nand agent skills belong under .claude/, not .agents/. Delete all three and\nadd a .gitignore guard so `railway config pull` scratch dirs cannot leak\ninto a commit again.",
"is_bot": false,
"headline": "chore: remove Railway config-pull cruft accidentally committed in #17…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-18T05:19:05Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "b5e6b8a1583aa93a7047d517b94692e6d6aa278a",
"body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "chore: version packages (#1803)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T20:51:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e3378c4a0dd88fc774801e772be24b2f97aca7f7",
"body": "* feat(lists): Count aggregation with multi-criteria grouping (#1790)\n\nMulti-criteria grouping in Lists: group by several columns in order\n(e.g. Building, then Storey) with a per-group instance Count at every\nnesting level, Bonsai-style.\n\nEngine (@ifc-lite/lists):\n- ListGrouping.columnIds: ordered g\n[…]\nemoved a column without removeColumn's\n grouping + sum cleanup, stranding a stale grouping level until buildDefinition\n pruned it. Delegate toggleColumn to add/removeColumn so the cleanup is shared.",
"is_bot": false,
"headline": "feat(lists): Count aggregation with multi-criteria grouping (#1801)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T19:42:56Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "eb414a4aa62f81434911df41a7b1d6ccf6f054c3",
"body": "…ecimation + wedge-cut discard (#1788) (#1802)\n\n* fix(geometry): cut missed Poroton opening + slab profile decimation + wedge-cut discard (#1788)\n\nCorrectness-pass residuals vs IfcOpenShell (T1-T6 sweep, issue #1788):\n\n- subtract_many volume oracle: verify the lenient (non-conforming) batch\n agains\n[…]\ntry\nsuite green incl. #1167 undercut fixtures and the pinned mesh-determinism\nmanifest.\n\nRefs #1788\n\n* test(geometry): assert coordinates not just vertex counts in unit-invariance tests (review #1802)",
"is_bot": false,
"headline": "fix(geometry): cut missed Poroton opening + slab inner-tessellation d…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T19:38:57Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "3441fb9e902daea8ed7d6f1a692e75618bbecb7e",
"body": "…ar parser (#1799) (#1800)\n\nThe WASM/columnar path's EntityExtractor collapsed quoted STEP strings and\nbare enum tokens into indistinguishable JS strings, so #1779's unknown-type\nfallback had to reject by dotted-string SHAPE — blanking even a genuine\nquoted string '.USERDEFINED.', a one-directional \n[…]\nw run the real extractor end-to-end: bare vs quoted token kinds,\nthe #1779 regression scenario, nested/list enums unflagged, and the\ntokenizer-rule edge cases (.T., lowercase, non-enum dotted tokens).",
"is_bot": false,
"headline": "fix(parser): preserve STEP token kind (Enum vs String) through column…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T18:04:08Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "3701f296ce3885b9766241558e8b8a9a8cfa57d7",
"body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "chore: version packages (#1786)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T15:04:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f07e9bf804d72ccbaf564feb5d9482909354fc49",
"body": "…798)\n\n* ci(server): freshness guard for generated attr_indices.rs (#1780)\n\nThe server-parse root-attribute table (Description/ObjectType/Tag/\nPredefinedType positions per IFC type) is code-generated from\n@ifc-lite/parser's SCHEMA_REGISTRY — the same table the in-browser parse\nresolves attribute nam\n[…]\nd without a prior build. Build the\nparser first, matching generate:server-attr-indices. CI calls the script\ndirectly (not this wrapper), so it stays fast on the prebuilt artifact\n(CodeRabbit nitpick).",
"is_bot": false,
"headline": "ci(server): freshness guard for generated attr_indices.rs (#1780) (#1…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T14:45:13Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "6102a222a6a71afcdab89855f1dcfa9437d3994f",
"body": "…allback (#1779) (#1797)\n\n* fix(parser): drop STEP enum tokens from unknown-type root-attribute fallback (#1779)\n\nextractRootAttributesFromEntity's fixed-index fallback (types absent from the\nIFC4 schema registry) accepted any `typeof raw === 'string'`, but the extractor\nstores STEP bare enums as do\n[…]\n): correct affected columns for enum-fallback fix (#1779)\n\nextractRootAttributesFromEntity produces Tag/Description/ObjectType, not\na Class value — drop the overstated Class column claim (CodeRabbit).",
"is_bot": false,
"headline": "fix(parser): drop STEP enum tokens from unknown-type root-attribute f…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T14:45:10Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "4c30f2d537efb3cdeb8ed9822d7e0f9de696b100",
"body": "… README claim (#1796)\n\n* release: bump version anchor to 4.1.1 so crates republish the corrected README\n\nThe five published crates (ifc-lite-core/-geometry/-clash/-processing/\n-wasm) ship the repo root README (readme = ../../README.md), and the\n4.1.0 snapshots live on crates.io still advertise 'Geo\n[…]\ne.\n- Re-ran sync-versions: wasm-bindings' export pin 4.1.0 -> 4.1.1.\n\nThe export crate itself is publish-ready (workspace version/license,\ndescription, workspace-dep versions come from the root pins).",
"is_bot": false,
"headline": "release: bump anchor to 4.1.1 — republish crates without the stale 5x…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T14:37:15Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "613a1bf6e8f6b3678ce6bd214e746e82dd11f73d",
"body": "…s (#1787) (#1795)\n\nIDS's appendInheritedPropertySets resolved type psets only via\nextractTypePropertiesOnDemand, which returns null when store.source is empty\n(server-parsed stores). So an IDS facet targeting a property that lives on the\nelement's IfcTypeProduct passed on the WASM path but was invi\n[…]\nhaped store where the wall's Pset_WallCommon lives on its\nIfcWallType — a facet on a type-only property passes, incl. one reachable only\nthrough a candidate values[]; a non-existent value still fails.",
"is_bot": false,
"headline": "fix(ids): resolve type-inherited property sets on server-parsed store…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T13:14:23Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "502c61bc7c0ae1ac313ed93ab335fdd942471c72",
"body": "…1) (#1793)\n\n* feat(geometry,parser,renderer,viewer): render IFC4 IfcImageTexture from .ifcZIP (#1781)\n\nRead-side support for IFC4 texture styling, closing the exporter/viewer\nchicken-and-egg gap for the direct single-image case:\n\n- geometry (Rust): IfcImageTexture resolves to a TextureSource::Image\n[…]\npath) can never\ncontain UVs/textures, so serving it would render a textured archive\npermanently untextured for returning users. Mirror the existing\ncache-write skip on the read side. (Codex review P1)",
"is_bot": false,
"headline": "feat: render IFC4 IfcImageTexture surface textures from .ifcZIP (#178…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T12:45:37Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "631c3a0813e722fa65ff052108c2cea3ac905801",
"body": "* feat(drawing-2d,viewer): DXF import as 2D reference underlay (#1782)\n\nParse ASCII DXF (LINE, LWPOLYLINE/POLYLINE with bulges, CIRCLE, ARC,\nELLIPSE, SPLINE, SOLID/TRACE, HATCH, TEXT/MTEXT, DIMENSION blocks,\nINSERT/BLOCK with nested transforms and grids) into world-plan geometry\n(metres, +Y north) w\n[…]\n only\n gate).\n\nKept as-is with rationale: clockwise HATCH arc/ellipse edges negate\nand swap angles (ezdxf convention - CW edges store clockwise-measured\nangles; mirroring recovers the true geometry).",
"is_bot": false,
"headline": "feat(drawing-2d,viewer): DXF import as 2D reference underlay (#1794)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T12:03:26Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "90522d218d5a9c4df0760349b5bfc60916a23f8f",
"body": "…s (#1792)\n\n* docs: retire stale '5x faster than web-ifc' speed claims for verifiable ones\n\nThe claims came from a May 2026 run pairing web-ifc 0.0.68 with an\nifc-lite measurement path that predated the exact-CSG production\npipeline. Both sides have moved: web-ifc 0.69-0.77 got ~2.3-4x faster on\nboo\n[…]\n 11,123 products' ISSUE_098 figure;\nboth now carry the fair 2026-07-17 Holter row (4.2 s WASM single-thread,\n169 MB, 60,284 products) with keep-in-sync provenance comments pointing\nat bench-data.json.",
"is_bot": false,
"headline": "docs: retire stale '5x faster than web-ifc' claims for verifiable one…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T11:16:02Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "7dcf3e1e33101c694f0acc74aa77cf07770c63c5",
"body": "…ss names and counts (#1789)\n\n* feat(pointcloud,renderer,viewer): LAS classification toggles with counts (#1783)\n\n- @ifc-lite/pointcloud: ASPRS class-name table + per-class histogram\n helpers; streamPointCloud aggregates counts across chunks and passes\n them to onComplete\n- @ifc-lite/renderer: spl\n[…]\nodic histograms until done settles; unguarded writes repopulated\nphantom classes after a newer load reset the store. Guard the callback\non the load session, keeping the stale-branch cleanup unguarded.",
"is_bot": false,
"headline": "feat(pointcloud,renderer,viewer): LAS classification toggles with cla…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T10:27:52Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "37224e8cd852d246cf463622cd612a38e0cf6e27",
"body": "…icate-id guard, simplify docs (#1791)\n\n* refactor(export,docs): demesher follow-ups — prune module split, duplicate-id guard, docs\n\n- extract the reverse-reference mark-and-sweep into demesh-prune.ts\n (demesh-writer.ts 461 -> ~316 lines, both under the ~400 guideline)\n- applySimplifiedGeometry rep\n[…]\nrom the referrer index: layer-only-referenced geometry prunes,\nsurviving mixed layers get their item lists filtered, and a layer left\nempty is tombstoned. Regression test proves the pre-fix retention.",
"is_bot": false,
"headline": "refactor(export,docs): demesher follow-ups — prune module split, dupl…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T10:27:05Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "7194c95002f2c84cd3c9444d710a50190a976a90",
"body": "…del wire for IDS parity (#1766) (#1785)\n\n* feat(server,data,ids): carry values[] candidate arrays on the data-model wire for IDS parity (#1766)\n\nIDS facet checks pass when a constraint matches ANY candidate value of a\nmulti-valued property (enumerated/bounded/list/table). The WASM path surfaces\nthe\n[…]\nd on-thread.\n\n* test(ids): only expose non-empty candidate arrays from mock accessor (CodeRabbit)\n\n* fix(server): propagate values_json serialization errors instead of dropping candidates (CodeRabbit)",
"is_bot": false,
"headline": "feat(server,data,ids): carry values[] candidate arrays on the data-mo…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T09:55:05Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2a7c7ffe0ac27a8cc315e5d4a633c56469646cf0",
"body": "…lightweight IFC re-export (#1769)\n\n* feat(geometry,export): demesher - selective mesh simplification with lightweight IFC re-export (#1767)\n\nSelective per-element simplification of already-loaded models with\ndeferred export to a lighter IFC:\n\n- rust/geometry/src/simplify/: cavity removal (position-\n[…]\nd the kept result when the\n decimation over-collapses early\n- CLI help: advertise --ids and --json on simplify\n\n---------\n\nCo-authored-by: Louis Trümpler <78563314+louistrue@users.noreply.github.com>",
"is_bot": false,
"headline": "feat(geometry,export): demesher - selective mesh simplification with …",
"author_name": "Yuri Isachenkov",
"author_login": "Blogbotana",
"committed_at": "2026-07-17T08:28:54Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "05c8bdf348c5afae8978293cd324d45104e24940",
"body": "…ollow-up) (#1762)\n\n* fix(parser,ids,viewer): harden material association handling (#1755 follow-up)\n\nFour fixes from the #1755 adversarial sweep:\n\n1. Multiple IfcRelAssociatesMaterial per element are no longer lost.\n New resolveAllMaterialDefIds / extractAllMaterialsOnDemand surface\n every asso\n[…]\nial-bearing type.\nExpansion now applies the same precedence (cached per occurrence).\nRegression test with a double-typed door.\n\n* test(parser): assert the deterministic double-typing winner explicitly",
"is_bot": false,
"headline": "fix(parser,ids,viewer): harden material association handling (#1755 f…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T07:33:00Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "502bdbf5c4c4c86999f4e662b71ee5b0b16307ae",
"body": "collectMeshesViaPrePass spread the entire mesh batch into one\nArray.push(...) call - one JS argument per mesh - which exceeds V8's ~65k\nargument ceiling on large models and throws RangeError \"Maximum call stack\nsize exceeded\", killing the whole synchronous process() call. Found running\nthe apples-to\n[…]\n in\nthe viewer (the streaming path appends per batch and never spreads).\n\nAppend in a loop instead, matching the existing \"use loop to avoid stack\noverflow with large batches\" pattern in useIfcLoader.",
"is_bot": false,
"headline": "fix(geometry): sync process() stack overflow on >65k-mesh models (#1784)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T06:31:00Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "33a952f7dfa5e4e5b5edc84d2874b3c1bf6dabe5",
"body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "chore: version packages (#1758)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T04:44:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8a0b09f161fffbc3302e173bd639a5aa85074e59",
"body": "…d hostile-input decoders (#1774)\n\n* fix(server,collab,mcp,pointcloud): harden auth, stream cache path, and hostile-input decoders\n\napps/server:\n- parquet_stream: stop unwrap-panicking on a short/corrupt cached combined-\n Parquet blob; frame-check via cached_geometry_slice and fall through to a\n n\n[…]\nd stride accumulation past 2^53 is rejected.\n\nExplicitly NOT changed: dropping the admission guard on cached replay\n(parquet_stream.rs) is pre-existing deliberate behavior with a\ndocumented rationale.",
"is_bot": false,
"headline": "fix(server,collab,mcp,pointcloud): harden auth, stream cache path, an…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T03:49:29Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "fc4451d727f5fce51e617cefc0289671d41c177d",
"body": "… bugs (#1777)\n\n* fix(viewer): guard load-race + lens visibility leaks + coord/security bugs\n\nFixes a batch of viewer bugs found in the load / visibility / coordinate paths:\n\n1. useIfcLoader: add a stale-session guard to the PRIMARY geometry streaming\n loop. A second primary load (e.g. the ifc-lit\n[…]\nor misattributed to the current load.\n\nAlso: new console strings plain ASCII; 13 unit tests for the ownership\nhelpers (manual-hide survival, A->B->A toggling, remount no-op, channel\nownership checks).",
"is_bot": false,
"headline": "fix(viewer): guard load-race + lens visibility leaks + coord/security…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T03:39:52Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "cc92f171661eb8e27170bcc0360336df819f9ab7",
"body": "…fixes (#1772)\n\n* fix(export,parser,data,bcf,lists): STEP export + BCF/CSV correctness fixes\n\n- STEP REAL: share one formatStepReal helper (data) that rewrites JS exponent\n notation into valid ISO-10303-21 (5e-8 -> 5.E-8, 1e21 -> 1.E+21,\n 1.5e-7 -> 1.5E-7). Reused by toStepReal/serializePropertyVa\n[…]\n giving a text bomb that much\n headroom past maxExpandedBytes. String reads now TextDecoder the exact\n counted bytes.\n\n* fix(bcf): narrow EntryStream to the uint8array-only stream actually requested",
"is_bot": false,
"headline": "fix(export,parser,data,bcf,lists): STEP export + BCF/CSV correctness …",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T03:35:19Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2d2a2fb672bba182bc57e3f59c2da4909583fa49",
"body": "…ndex-wrap (#1776)\n\n* fix(geometry,core): harden malformed-input paths against hang/panic/index-wrap\n\nThree input-reachable defects in the wasm geometry worker (panic=abort there\ntakes down the whole instance):\n\n- boolean/collect_polygonal_chain: a cyclic FirstOperand chain (e.g.\n IFCBOOLEANCLIPPIN\n[…]\ntinels\n\nThe fast_parse path yields u32::MAX-1 after the 1-based fixup while\nschema_gen yields u32::MAX; note at both sites that consumers must\nbounds-check rather than compare a single sentinel value.",
"is_bot": false,
"headline": "fix(geometry,core): harden malformed-input paths against hang/panic/i…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T03:18:16Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0a1c500adfd7894b9f1a3f01cc774226b2bdb84b",
"body": "…pes, destroy device (#1775)\n\n* fix(renderer): release partial/hydrated GPU caches, balance error scopes, destroy device\n\n- Scene.dropAllPartialCaches: partial sub-batch clones built during\n hide/isolate are released when the filter returns to fully-visible instead\n of staying resident (~2x model \n[…]\nerror-scope balance on all exit paths, destroy() idempotency,\n render()-after-destroy(), hide/isolate toggling with exactly-once\n buffer destruction, and in-place mutation reaching the batched path.",
"is_bot": false,
"headline": "fix(renderer): release partial/hydrated GPU caches, balance error sco…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T03:17:54Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0d400edd61a71108c2affd0923fb561affbfe9fe",
"body": "…ker scan, and cache (#1773)\n\n* fix(parser,encoding,cache): harden string decode, material usage, worker scan, and cache\n\n- encoding: guard decodeIfcString \\X4\\ against code points > 0x10FFFF (emit\n U+FFFD instead of throwing a RangeError that aborted the whole model load on\n the columnar batch-na\n[…]\nver-shaped facade store (incl. type-level expansion),\n duplicate + dangling material associations, adversarial fraction shapes,\n malformed \\X2\\/\\X4\\ payload passthrough, batch-name quote edge cases.",
"is_bot": false,
"headline": "fix(parser,encoding,cache): harden string decode, material usage, wor…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T03:16:52Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "564a800e997322d863aac84127497ef4f8310ac3",
"body": "…edefinedType/Tag list columns (#1765) (#1778)\n\nThe server data-model only emitted id/type/global_id/name/has_geometry, so\nthese four built-in Lists attribute columns rendered empty on server-parsed\nmodels while the WASM path resolves them on demand.\n\nParity by construction: a generated Rust table\n(\n[…]\nthe trap cases (IfcSite LongName != Tag, IfcWallType\nApplicableOccurrence != ObjectType, CompositionType != PredefinedType); the\ncross-path parity test now asserts identical rows for all four columns.",
"is_bot": false,
"headline": "feat(server,data): server↔client parity for Description/ObjectType/Pr…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T03:16:22Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2cd5f439d202894fde34961cc4b3bfbe9ad2d140",
"body": "…metry, byte-identical) (#1770)\n\n* perf(kernel): u32-digit FixedInt multiply on wasm32 (-20-31% wasm geometry)\n\nwasm32 has no native 128-bit multiply, so every (u64 as u128)*(u64 as u128)\npartial product in FixedInt's schoolbook loops lowers to a __multi3 libcall.\nSince #1655 moved the exact-predica\n[…]\n), so enforce the\nprecondition instead of emulating it: debug_assert the low 2K limbs are zero\non entry and document the contract. Zero release-mode cost; the sole caller\nalready passes a fresh array.",
"is_bot": false,
"headline": "perf(kernel): u32-digit FixedInt multiply on wasm32 (-20-31% wasm geo…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T01:49:31Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a42b8a9cfc559781575dde893b2116a5dc493732",
"body": "…ap (#1771)\n\nTwo main-thread cold-load levers in the parallel stream path:\n\n- stitchShards is now two-phase: locate every shard's validated slice first\n (binary search, no copying), then write the exact-size output columns\n straight into SharedArrayBuffer-backed storage. deliverEntityIndex shares\n\n[…]\nmin-of-3; mesh counts identical 110,632 / 59,060):\n Holter 177MB first-visible 611 -> 594 ms, stream 4501 -> 4462 ms\n CatiaA1 883MB first-visible 7106 -> 6842 ms (-3.7%), stream 12495 -> 12269 ms",
"is_bot": false,
"headline": "perf(geometry): zero-copy sharded index delivery + drop per-mesh re-m…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-17T01:43:20Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f34bc4165166f0171e23e1839d8beef02a1c7fd5",
"body": "…classic strip (#1686) (#1768)\n\n* feat(viewer): tabbed ribbon toolbar as selectable alternative to the classic strip (#1686)\n\nA Ribbon toolbar style (File / Home / View / Analyze / Author tabs with\nlabeled command groups) selectable per user via uiSlice.toolbarStyle,\npersisted in localStorage. Both \n[…]\nrdcoded /5 against 7 toggles).\n- Close Compare alongside the other right-slot panels when an analysis\n extension opens.\n- Log (not swallow) blocked-storage errors in the toolbar preference\n readers.",
"is_bot": false,
"headline": "feat(viewer): tabbed ribbon toolbar as selectable alternative to the …",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-16T22:36:58Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a6bedfb406001a820f3bff4eccadcb7f91df9934",
"body": "…#1764)",
"is_bot": false,
"headline": "chore: add .railwayignore to keep .claude out of railway up uploads (…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-16T20:17:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "03366edf56316e0c127b946ab031a287cd7744b9",
"body": "…ptor (#1677) (#1760)\n\n* fix(viewer): drive SpaceMouse axis parsing from the HID report descriptor (#1677)\n\nHardware feedback on #1677 (SpaceMouse mostly dead, only one axis\nzooming) showed the fixed byte-layout parser does not match every\n3Dconnexion device. WebHID exposes the device's own report d\n[…]\now dropped without touching\n state or timestamp; the legacy path likewise only treats the known\n motion report ids as samples.\n\nAdds session-level routing tests (Node EventTarget as fake HIDDevice).",
"is_bot": false,
"headline": "fix(viewer): drive SpaceMouse axis parsing from the HID report descri…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-16T15:04:41Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "e49a1a020eaafd397af626e88a058b69122a1bd9",
"body": "…Type column (#1751, #1754) (#1759)\n\n* feat(server,lists): server↔client parity for Type-level props/QTOs + Type column (#1751, #1754)\n\nMake the server-parse path produce identical Lists/Schedule results to the\nin-browser WASM path for Type-level properties and quantities, and add a\n`Type` column sh\n[…]\nmpt `tests.rs` / `_tests.rs` files so the module-size ratchet passes without\nraising any budget (mod.rs 480→241, parquet 763→660).\n\n* chore(server): add MPL-2.0 header to split test files (CodeRabbit)",
"is_bot": false,
"headline": "feat(server,lists): server↔client parity for Type-level props/QTOs + …",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-16T13:41:55Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "7ef36225d863ec64dfb254cf0767d4ab9d034849",
"body": "…n usage index (#1755) (#1757)\n\nIfcRelAssociatesMaterial commonly targets the TYPE entity (IfcDoorType).\nbuildMaterialUsageIndex iterated onDemandMaterialMap verbatim, keying\nthose materials to the type entity — the viewer's By Material tree then\ndropped them via its geometry filter (types render no\n[…]\ncurrence-level associations take precedence\n(IFC semantics) with no double counting; the type entity keeps no entry\nof its own. Stores without a relationship graph keep the previous\nverbatim behavior.",
"is_bot": false,
"headline": "fix(parser): expand type-level material associations to occurrences i…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-16T11:54:53Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "38716e5397646627f5a79c1a415f1297b3f64763",
"body": "…(#1756)\n\nExtends the PLANKOPF Swiss plan-sheet identity from the landing (#1753) to ifclite.dev/docs (mkdocs-material): Archivo + Fragment Mono via self-loaded variable fonts, primary/accent:custom carbon+Swiss-red schemes, red DETAIL H2 ticks, mono-uppercase labels, ink links with red underline (red reserved), a title-block footer mirroring the landing, and mermaid re-render on palette toggle. Planned via an adversarial review against the installed Material 9.7.1 CSS.",
"is_bot": false,
"headline": "feat(docs): extend PLANKOPF plan-sheet theme to the mkdocs docs site …",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-16T10:25:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d71093703a8485549bda2fcc2aef5971e7760a4c",
"body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "chore: version packages (#1752)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-16T08:39:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7611c1b4811506cdb6057f6051adeb59f639265d",
"body": "…#1753)\n\nSwiss engineering plan-sheet redesign of the ifclite.dev landing (apps/landing): Archivo + Fragment Mono, signature Swiss red, fixed title-block bar with BLATT scroll-spy, self-dimensioning lines, red DETAIL callouts. Legacy CSS var names re-pointed so all six React widgets re-skin through tokens. Docs (mkdocs) unchanged and still served via build-docs.sh.",
"is_bot": false,
"headline": "feat(landing): overhaul ifclite.dev to \"PLANKOPF\" plan-sheet design (…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-15T23:40:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ae6079f0d2d8a3dbc923dfd468817c7f3e2f9b4a",
"body": "…hedules (#1745) (#1748)\n\n* feat(lists,parser): resolve Type-level properties/QTOs in instance schedules (#1745)\n\nColumns in Lists/Schedules that map to a pset or quantity living on an\nelement's IfcTypeProduct (via IfcRelDefinesByType) previously rendered\nblank on instance rows, because the engine r\n[…]\nker now offers\nthe type-only Manufacturer + Qto_WallBaseQuantities; a Walls list with\nManufacturer/FireRating/Width resolves ACME Walls / REI 120 (override) /\n200 and ACME Walls / REI 90 (type) / 200.",
"is_bot": false,
"headline": "feat(lists,parser): resolve Type-level properties/QTOs in instance sc…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-15T16:35:45Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "1e1ef35a10a314881e7ea735d97bcc0b026b1954",
"body": "…(#1749)\n\n* feat(viewer): add plain OSM slippy-map base for the 3D world context\n\nCloses #1744. The world-context overlay could only show Google\nPhotorealistic 3D Tiles or OSM Buildings (extruded footprints over\nsatellite imagery). Both can be visually heavy; some users just want a\nsimple flat map. \n[…]\nedit HTML), so\nthe on-canvas attribution is policy-compliant. Verified in-browser: the\ncredit reads \"© OpenStreetMap contributors\", links to\nopenstreetmap.org/copyright, and the MapQuest text is gone.",
"is_bot": false,
"headline": "feat(viewer): add plain OSM slippy-map base for the 3D world context …",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-15T15:53:36Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "dbfca1f28db7ff4fe38b8b20f52fb08b7e72ffbf",
"body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "chore: version packages (#1750)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-15T15:34:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "01b8b414bfb72f1893c0c4296153e8f35e44b641",
"body": "…st (#1747)\n\n* fix(renderer): surface non-intentional GPU device loss via onDeviceLost\n\nA lost GPU device (Windows TDR driver reset or VRAM exhaustion while\nrotating/re-opening a large model on a weak/integrated GPU) kills every\npipeline and buffer, so the viewport can never present again. The rende\n[…]\nsame instance: a fresh GPUDevice would then swallow a\nlater loss (guard still true) and render() stayed a permanent no-op. Reset both\nat the start of their init() so each device lifetime starts clean.",
"is_bot": false,
"headline": "fix(renderer): surface non-intentional GPU device loss via onDeviceLo…",
"author_name": "Yuri Isachenkov",
"author_login": "Blogbotana",
"committed_at": "2026-07-15T13:24:32Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "b97054462266fe6b61c1f9017cda96a949e32de2",
"body": "Bumps the cargo-minor-and-patch group with 4 updates: [memchr](https://github.com/BurntSushi/memchr), [arrow](https://github.com/apache/arrow-rs), [parquet](https://github.com/apache/arrow-rs) and [bytes](https://github.com/tokio-rs/bytes).\n\n\nUpdates `memchr` from 2.8.2 to 2.8.3\n- [Commits](https://\n[…]\ndate:semver-patch\n dependency-group: cargo-minor-and-patch\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": "chore(deps): bump the cargo-minor-and-patch group with 4 updates (#1737)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-15T08:32:06Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "9debbdce4460b4be4f0ba5404ade32528c5c846a",
"body": "---\nupdated-dependencies:\n- dependency-name: \"@types/node\"\n dependency-version: 26.1.1\n dependency-type: direct:development\n update-type: version-update:semver-patch\n dependency-group: npm-minor-and-patch\n- dependency-name: knip\n dependency-version: 6.26.0\n dependency-type: direct:development\n\n[…]\nupdate:semver-minor\n dependency-group: npm-minor-and-patch\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": "chore(deps): bump the npm-minor-and-patch group with 27 updates (#1739)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-15T08:30:32Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "93b6e9a82adf99367e57d485d1ced12fb2ab0517",
"body": "Bumps [actions/setup-dotnet](https://github.com/actions/setup-dotnet) from 4.3.1 to 5.4.0.\n- [Release notes](https://github.com/actions/setup-dotnet/releases)\n- [Commits](https://github.com/actions/setup-dotnet/compare/67a3573c9a986a3f9c594539f4ab511d57bb3ce9...26b0ec14cb23fa6904739307f278c14f94c95b\n[…]\nirect:production\n update-type: version-update:semver-major\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": "chore(deps): bump actions/setup-dotnet from 4.3.1 to 5.4.0 (#1738)",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-07-15T08:30:26Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "c4d2d7aefc68846056571c34ed09716245fafece",
"body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "chore: version packages (#1743)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-15T07:17:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "da19eb6e6f56384112b71344178d0a317b9986c5",
"body": "…ad of refusing as unrelated-base; diff ghost owns the store's copied set (#1742)\n\nPublishing appends the draft to its home ref with a declared base equal\nto the composition it was authored against, which need not be\nrepresentable on the ref (URI-id base files fail the content-address\ngate) - so the\n[…]\n.\n\nAlso fixes the diff-view ghost leak: visibilitySlice stores a defensive\ncopy of the entity set, so the ownership identity check never matched\nand the ghost survived closing the diff until Show All.",
"is_bot": false,
"headline": "fix(merge,viewer): re-merging a layer already on its ref no-ops inste…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-13T11:29:15Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "94ea3a936bb5871a4e62359d9101d170cd773b5b",
"body": "…n short viewports); Share dialog never shows an empty link (non-admin/mint-failure fallback to the held invite) (#1741)",
"is_bot": false,
"headline": "fix(viewer): welcome footer chips join the flow (overlapped content o…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-13T10:51:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f3ea4cc38a8c4e60e24793d236bc838933ac711e",
"body": "…ad, demo stack, tour, badges, menus (#1736)\n\n* feat(viewer): first-class exposure for Layer PRs — launchpad, demo stack, tour, badges, menus (#1717)\n\n* feat(viewer): expose the collaboration room — Panels menu, palette, actionable empty state opening the Share dialog\n\n* fix(viewer): Panels-menu items actually toggle the layers/collab panels; surface demo-load failures",
"is_bot": false,
"headline": "feat(viewer): first-class exposure for Layer PRs and collab — launchp…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-13T05:49:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "521bcca244fd765f83543d3dbc0a487b2d85ce2a",
"body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "chore: version packages (#1733)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-12T21:57:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2de44287ff70275108015ffb540e9440ff735fbb",
"body": "…embed actually bundles (#1735)",
"is_bot": false,
"headline": "fix(viewer-embed): declare the viewer's @ifc-lite workspace deps the …",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-12T19:56:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bfc7dd4fee8f0afd2e7afb4bd19497bfc9ea906d",
"body": "…ync overloads reject the string|Uint8Array union) (#1734)",
"is_bot": false,
"headline": "fix(collab-server): normalize writeAtomic payload to a buffer (writeS…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-12T19:53:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5e904942e3fd167d0d0e1a9c37b391d638eb6932",
"body": "* feat(registry): webhooks + auto-merge ref policy (#1717)\n\n* fix(registry): auto-merge requires an all-green manifest and skips already-merged candidates",
"is_bot": false,
"headline": "feat(registry): webhooks + auto-merge ref policy (#1732)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-12T19:47:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cd6c9bda1066b7c7cda19e164d787d15b57e3483",
"body": "…layers, retype opinions, no silent drops (#1731)\n\n* feat(layers): geometry-affecting edit publishing — session placement layers pinned, retype opinions, no silent drops (#1717)\n\n* fix(layers): a publish with skipped edits keeps them pending instead of clearing them",
"is_bot": false,
"headline": "feat(layers): geometry-affecting edit publishing — session placement …",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-12T19:46:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c1695d777263483110460df767ec86ca691048ab",
"body": "* feat(layers): live-session Y.Doc draft publishing — captureDocState fork point, hybrid authorship, delta-only republish (#1717)\n\n* fix(layers): hybrid authorship counts peers seen since the baseline, not just live presence",
"is_bot": false,
"headline": "feat(layers): live-session Y.Doc draft publishing (#1730)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-12T19:45:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b54f70478a7b92055750f11267ffe7fa47ed7da1",
"body": "…y, componentKey), viewpoints, .bcf export (#1729)\n\n* feat(layers): review comments as BCF topics — registry topics route, viewer comment thread + viewpoints + .bcf export, MCP add_review_topic (#1717)\n\n* fix(layers): push candidate before opening a review; bind comments to the active selection",
"is_bot": false,
"headline": "feat(layers): review comments as BCF topics — bound to (review, entit…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-12T19:45:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e3b3c5316fcd845d531265c11e0fb86cf526e778",
"body": "…-place editor, bulk actions (#1728)\n\n* feat(layers): conflict queue completion — edited resolutions through the registry, edit-in-place editor, bulk actions (#1717)\n\n* fix(layers): edited resolutions tombstone removed keys (per-attribute LWW resurrected them)",
"is_bot": false,
"headline": "feat(layers): conflict queue completion — edited resolutions, edit-in…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-12T19:44:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7dac702db0092a3a3d6a447b2e49bc9591f5dfc4",
"body": "…h, checks deep links, waiver authoring (#1727)\n\n* feat(layers): fetchable IDS check evidence — registry reports route, layer push, checks deep links + waiver authoring (#1717)\n\n* fix(layers): evidence digest validation (path traversal via crafted manifest) + shared download helper",
"is_bot": false,
"headline": "feat(layers): fetchable IDS check evidence — reports route, layer pus…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-12T19:43:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e092198070cd4311cbfe0a85a4dbd88c702d2919",
"body": "…he deployed binary (#1726)\n\n* feat(collab-server): durable disk-backed layer registry, enabled in the deployed binary (#1717)\n\n* fix(collab-server): room-token registry authorizer (registry was locked out under COLLAB_TOKEN_SECRET) + fsync-before-rename durability\n\n* chore: refresh api-surface for the registry authorizer exports",
"is_bot": false,
"headline": "feat(collab-server): durable disk-backed layer registry, enabled in t…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-12T19:42:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "beeb8ed500f53bb1f9d1aa4b51d3fe27929a32c9",
"body": "…gration ships (#1725)\n\nL4: viewer diff mode (Layers panel + Ghost others), conflict queue\n(per-conflict resolutions via MergeInit.resolutions), and the\nprovenance panel shipped; lens variants, bulk resolution, and BCF\nreview comments remain. L5: registry policy enforcement now covers\nper-conflict resolutions, credential-bound approval separation, and\nimmutable policies via PUT. Cross-cutting: the shared diff JSON is\nconsumed by the UI as well.",
"is_bot": false,
"headline": "docs(layer-prs): refresh roadmap statuses after the #1717 viewer inte…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T20:51:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "669b0df63c05e8af07ec2a4a6605d2c1e86eeb26",
"body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "chore: version packages (#1715)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T20:23:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a1bbd6c209ded2da1405a8d1c816a193601ae625",
"body": "…) (#1724)\n\n* perf(core): nearly-sorted run-merge path for ColumnarEntityIndex construction (stage 3)\n\nSTEP id streams are a few long ascending runs (57 across 19.1M records on\nCatiaA1). sort_columns (extracted to columnar_index_merge.rs) detects runs\nand k-way merges <= 64 of them with streak strea\n[…]\n-2.7s, styles 5.5-5.8s, first\nvisible 6.8/7.1/7.1s (stage 2: 9.9s; serial: 14.3s). Small-model parity\nexact (1960 styled / 62 voids / 83 draws / 399ms).\n\n* chore: drop the reverted run-merge changeset",
"is_bot": false,
"headline": "perf(stream): stage 3 — two style slices per worker (styles tail -45%…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T20:02:19Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "462c9ca7df4d70ce5b28104c0ce8b0806f85b78a",
"body": "…1717 V4) (#1723)\n\n* feat(viewer): provenance detail, layer-contribution ghosting, lazy Layers panel (#1717 V4)\n\nL4 completion pass on the Layers panel:\n\n- Clicking a stratum expands its full provenance manifest: author\n (kind/principal/tool), intent, created, base stack hash, scope\n claims, check\n[…]\nn the diff swaps (#1723)\n\nThe [diff] cleanup released the owned ghost set but left the local\nghosting flag on, so the button read 'Ghosting others' with nothing\nghosted until a dead click resynced it.",
"is_bot": false,
"headline": "feat(viewer): provenance detail, layer ghosting, lazy Layers panel (#…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T18:04:16Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "1ca08c9bdeb53707eb09419a3def8009a068d186",
"body": "…r-conflict resolutions (#1717 V3) (#1721)\n\n* feat(viewer,merge): merge refs in the viewer — conflict queue with per-conflict resolutions (#1717 V3)\n\nShared groundwork:\n- MergeInit.resolutions: per-conflict ResolutionInput[] through the\n shared ref-merge flow (preview -> decide each conflict -> exe\n[…]\nd silently auto-resolve conflicts the user\n never reviewed.\n- unrelated-base outcomes from the registry render the declared base\n instead of 'undefined' (the server sends declared_base, not reason).",
"is_bot": false,
"headline": "feat(viewer,merge): merge refs in the viewer — conflict queue with pe…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T17:55:28Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "cbd14fab08acad4d94d7cd05dd08064936b12fdc",
"body": "* feat(viewer): publish draft layers from viewer edits (#1717 V2)\n\nPending property/quantity/attribute mutations freeze into an immutable,\ncontent-addressed, provenance-stamped IFCX layer on a browser-local\nstore, then stack back onto the live composition as the strongest\noverlay.\n\n- BrowserLayerSto\n[…]\n full\n publishes clear mutations BEFORE the recompose.\n- The author field seeds from the collab identity when connected\n (authenticated registries bind the manifest author to the login\n principal).",
"is_bot": false,
"headline": "feat(viewer): publish draft layers from viewer edits (#1717 V2) (#1719)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T17:53:43Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "953d06f5b3e17863ebfa137f795dc5d1bed0eb8c",
"body": "…1717 V1) (#1718)\n\n* feat(viewer): layer-stack panel — strata, provenance, per-layer contribution diff (#1717 V1)\n\nThe viewer now surfaces the IFCX layer stack behind a federated\ncomposition. useIfcFederation records the parser-retained layer files\ninto a layerStackSlice (weakest first) with the com\n[…]\nith malformed checks (e.g. [null]) threw a TypeError and failed the\nwhole model for a file that composes fine. Summary extraction now\nshape-guards every read and degrades to an unsigned-looking entry.",
"is_bot": false,
"headline": "feat(viewer): layer-stack panel with provenance and per-layer diff (#…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T17:46:47Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "6ed4de6a46100e097b41137a65e91b581df34486",
"body": "…agent draft workflow (#1027)\n\n* feat(layers): Layer PRs — three-way merge, provenance, registry, and agent draft workflow (#1027)\n\nPort of the #1027 stack (#1053 L2 fast path, #1054 L5 registry, #1056\nshared diff contract merged into the branch) onto current main; the old\nbranch predates the histor\n[…]\n author.\n- applyResolutions rejects 'edited' on child:/inherit: pseudo-components\n (would serialize a relation edge as a literal attribute).\n\n---------\n\nCo-authored-by: Claude <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(layers): Layer PRs — three-way merge, provenance, registry, and …",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T17:39:32Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "a2c31a185e868d15183df8360badb001789bd978",
"body": "…olumn-based flatten (#1722)\n\n* perf(stream): stage 2 sharded pre-pass — columns-driven discovery + column-based styles flatten\n\n- scan_shard_classified now classifies EVERY record via classify_type_name\n (named codes for project/site/mapped-item/rel-defines/layer-set + all\n support kinds, FLAG bi\n[…]\nord\n classification for a column they never read (Codex P2).\n- buildPrePassStreamingSharded gained a required parameter since the 3.0.x\n publish - that is semver-major for @ifc-lite/wasm (Codex P2).",
"is_bot": false,
"headline": "perf(stream): sharded pre-pass stage 2 — columns-driven discovery + c…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T17:30:05Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "8f3fafd7cc777e60cdc006956f8336680723c440",
"body": "…l styles resolution, ON by default (#1720)\n\n* feat(stream): sharded pre-pass — parallel entity-index scan + parallel styles resolution (flag-gated)\n\nTime-to-first-geometry on large fresh loads is gated by the serial pre-pass:\nmeta (RTC full-index detour) -> entity-index -> 4s styles resolve -> job\n\n[…]\nift).\n\nBehavior identical: sharded smoke reproduces exact parity\n(1960 styled / 83 draws / 12.7MB on FM_ARC_DigitalHub); ratchet, clippy\n-D warnings, and the 51 processing lib tests all green locally.",
"is_bot": false,
"headline": "perf(stream): sharded pre-pass — parallel entity-index scan + paralle…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T16:43:05Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "62b68c06347aab661c3d9417bcf016e565e2c4b1",
"body": "…vot raycast) (#1716)\n\n* fix(viewer): skip the orbit-pivot raycast on instanced-heavy models (input lag at orbit start)\n\nThe mouse orbit-start handler anchors the pivot under the cursor via a CPU\nraycast, guarded by a large-model census that only counted flat meshes and\nbatch entities. CATIA-class m\n[…]\ne the batch loop\n\nA purely-instanced scene has no batched meshes, so a loop-only threshold\ncheck never saw the meshes+instanced base count and let the expensive pivot\nraycast run. (Codex P2 on #1716.)",
"is_bot": false,
"headline": "fix(viewer): orbit-start input lag on instanced-heavy models (skip pi…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T11:22:35Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "9689ea5276cc107895be56aa9267a4b7b778de2d",
"body": "…throttle (choppy orbit on CATIA-class models) (#1714)\n\n* perf(renderer): cull instanced-template draws + adaptive interaction throttle\n\nThe GPU-instanced pass drew every template unconditionally — on CATIA-class\nmodels that is ~97% of draw calls (8,929 of 9,213 on an 883MB model), which\nmade orbiti\n[…]\nctedCount could never decrement and the\nentity's templates stayed permanently exempt from contribution culling.\nDecrement while the occurrence locations are still known. (CodeRabbit\nfinding on #1714.)",
"is_bot": false,
"headline": "perf(renderer): cull instanced-template draws + adaptive interaction …",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T10:01:28Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "217a890fbd9bdd38b1822534d63e38cc064406de",
"body": "Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>",
"is_bot": false,
"headline": "chore: version packages (#1713)",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T07:15:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "22db0d53d7c42630673ca6bbca7bfcc208838118",
"body": "…lt (#1682 phase 6) (#1711)\n\n* perf(renderer): opt-in 12-byte lattice-quantized batch vertices (#1682 phase 6)\n\nBatch vertex layout drops 28B -> 12B: uint16x4 (lattice position xyz +\npacked octahedral normal in w) + the u32 entityId lane. Positions quantize\nonto a GLOBAL 2^-10 m lattice with lattice\n[…]\nread() documents the v13-only geometry contract; changeset notes\n the pre-v13 removal; stale off-by-default comments in Viewport corrected;\n #1682 regression labels on the quantize/residency suites.",
"is_bot": false,
"headline": "perf(renderer): 12-byte lattice-quantized batch vertices, ON by defau…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T06:38:59Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a8b5d8cef9d6a8f195783ceb45274a88ed73e4c7",
"body": "…D) (#1709)\n\n* feat(viewer): flip #1682 render-perf defaults ON (chunks 32m, GPU 2048MB, host 3072MB, LOD 48px)\n\nSweep verdict (headed Chrome, FZK / DigitalHub / advanced_model): load KPIs\nunchanged within noise; draw calls 13->17 / 21->85 / 275->343; resident GPU\n+0.3MB max; defaults-vs-all-off pix\n[…]\n=0 / LOD_PX=0 were rejected as invalid and the app default\napplied - an off-baseline A/B run silently ran WITH the features (Codex\nP2s on #1709). Zero now injects the corresponding kill-switch global.",
"is_bot": false,
"headline": "feat(viewer): flip #1682 render-perf defaults ON (chunks, budgets, LO…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T06:30:10Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "7a64fa75ba7cfcf22687a51a11a3eefe7bba7083",
"body": "…tices (#1682 phase 5) (#1708)\n\n* perf(renderer): opt-in LOD1 as a second index range over the same vertices (#1682 phase 5)\n\nVertex-clustering decimation (meshopt-sloppy style) over the batch's\nEXISTING interleaved vertex buffer at batch-build time: vertices snap to a\nuniform grid (~2% of the batch\n[…]\n lane (wrong object-id output for separation lines + wrong\noverlay depth-salt at LOD distance). The entityId lane now joins the\ncluster key; regression test covers co-located strips with distinct ids.",
"is_bot": false,
"headline": "perf(renderer): opt-in LOD1 as a second index range over the same ver…",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T06:22:21Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "87516cf5f502b1f770786199b2256c3a215331c3",
"body": "…v13 cache chunks (#1682 phase 3b) (#1707)\n\n* perf(renderer): opt-in cold (evict-to-disk) residency tier backed by v13 cache chunks (#1682 phase 3b)\n\nThree tiers: hot (GPU+CPU) / warm (CPU only, GPU evicted) / cold (metadata\nshell only). Scene.setHostResidencyBudget demotes warm buckets to cold\nLRU-\n[…]\nver.\n- Scene.drainColdTier() restores every cold bucket while the provider still\n exists; a federated add drains before clearing the provider so the\n primary's cold chunks are never stranded shells.",
"is_bot": false,
"headline": "perf(renderer): opt-in cold (evict-to-disk) residency tier backed by …",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T06:14:31Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "5b278f0f8b2f2b42a723e9ef64341639670e291e",
"body": "…load (#1682 phase 4) (#1706)\n\n* feat(cache): FORMAT_VERSION 13 chunked geometry + streamed cache-hit load (#1682 phase 4)\n\nGeometry section v13: headLength + counts + coordinateInfo + a chunk\ndirectory (world AABB, offsets, stored/uncompressed lengths, mesh count,\nflags per chunk), then independent\n[…]\nen appended onto them\n (duplicates). Reset geometryResult before rethrowing so the fallback\n starts clean (Codex P2 on #1706).\n- Complete the per-axis chunk-AABB containment assertions (CodeRabbit).",
"is_bot": false,
"headline": "feat(cache): FORMAT_VERSION 13 chunked geometry + streamed cache-hit …",
"author_name": "Louis Trümpler",
"author_login": "louistrue",
"committed_at": "2026-07-11T06:05:41Z",
"body_truncated": true,
"is_coding_agent": false
}
],
"releases_count": 100,
"commits_last_year": 1352,
"latest_release_at": "2026-07-21T11:36:15Z",
"latest_release_tag": "@ifc-lite/geometry@3.4.0",
"releases_from_tags": false,
"days_since_last_push": 0,
"active_weeks_last_year": 28,
"days_since_latest_release": 0,
"mean_days_between_releases": 0.4
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": true,
"health_percentage": 87,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": true
},
"ecosystem": {
"packages": [
{
"name": "@ifc-lite/bcf",
"exists": true,
"license": "MPL-2.0",
"keywords": [
"ifc",
"bim",
"bcf",
"buildingsmart",
"collaboration",
"issue-tracking",
"aec"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@ifc-lite/bcf",
"is_deprecated": false,
"latest_version": "1.16.3",
"repository_url": "https://github.com/LTplus-AG/ifc-lite",
"versions_count": 31,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 1941,
"first_published_at": "2026-02-02T10:50:09.500000Z",
"latest_published_at": "2026-07-17T04:49:21.699000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 4
},
{
"name": "@ifc-lite/cli",
"exists": true,
"license": "MPL-2.0",
"keywords": [
"ifc",
"bim",
"cli",
"aec",
"building",
"construction",
"ifc-lite"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@ifc-lite/cli",
"is_deprecated": false,
"latest_version": "0.20.0",
"repository_url": "https://github.com/LTplus-AG/ifc-lite",
"versions_count": 31,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 2013,
"first_published_at": "2026-03-12T06:51:09.094000Z",
"latest_published_at": "2026-07-17T15:10:32.682000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 4
},
{
"name": "@ifc-lite/data",
"exists": true,
"license": "MPL-2.0",
"keywords": [
"ifc",
"bim",
"data",
"columnar",
"aec"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@ifc-lite/data",
"is_deprecated": false,
"latest_version": "2.8.0",
"repository_url": "https://github.com/LTplus-AG/ifc-lite",
"versions_count": 51,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 8122,
"first_published_at": "2026-01-12T20:02:30.412000Z",
"latest_published_at": "2026-07-17T20:57:23.874000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 4
},
{
"name": "@ifc-lite/diff",
"exists": true,
"license": "MPL-2.0",
"keywords": [
"ifc",
"bim",
"diff",
"comparison",
"revision",
"aec"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@ifc-lite/diff",
"is_deprecated": false,
"latest_version": "0.4.0",
"repository_url": "https://github.com/LTplus-AG/ifc-lite",
"versions_count": 6,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 934,
"first_published_at": "2026-06-07T17:25:05.691000Z",
"latest_published_at": "2026-07-11T20:29:08.033000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 10
},
{
"name": "@ifc-lite/cache",
"exists": true,
"license": "MPL-2.0",
"keywords": [
"ifc",
"bim",
"cache",
"binary",
"aec"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@ifc-lite/cache",
"is_deprecated": false,
"latest_version": "2.2.1",
"repository_url": "https://github.com/LTplus-AG/ifc-lite",
"versions_count": 50,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 1952,
"first_published_at": "2026-01-14T13:28:51.087000Z",
"latest_published_at": "2026-07-17T04:49:22.106000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 4
},
{
"name": "@ifc-lite/clash",
"exists": true,
"license": "MPL-2.0",
"keywords": [
"ifc",
"bim",
"clash",
"clash-detection",
"coordination",
"aec"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@ifc-lite/clash",
"is_deprecated": false,
"latest_version": "1.6.3",
"repository_url": "https://github.com/LTplus-AG/ifc-lite",
"versions_count": 14,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 1995,
"first_published_at": "2026-06-01T21:12:54.421000Z",
"latest_published_at": "2026-07-11T20:29:09.181000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 10
},
{
"name": "@ifc-lite/collab",
"exists": true,
"license": "MPL-2.0",
"keywords": [
"ifc",
"ifcx",
"ifc5",
"bim",
"collaboration",
"crdt",
"yjs",
"real-time",
"aec"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@ifc-lite/collab",
"is_deprecated": false,
"latest_version": "0.4.0",
"repository_url": "https://github.com/LTplus-AG/ifc-lite",
"versions_count": 10,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 788,
"first_published_at": "2026-05-13T04:28:34.024000Z",
"latest_published_at": "2026-07-12T22:03:00.184000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 9
}
]
},
"popularity": {
"forks": 84,
"stars": 282,
"watchers": 4,
"fork_history": {
"days": [
{
"date": "2026-01-14",
"count": 1
},
{
"date": "2026-01-16",
"count": 1
},
{
"date": "2026-01-18",
"count": 1
},
{
"date": "2026-01-19",
"count": 1
},
{
"date": "2026-01-28",
"count": 1
},
{
"date": "2026-01-30",
"count": 1
},
{
"date": "2026-02-03",
"count": 2
},
{
"date": "2026-02-10",
"count": 1
},
{
"date": "2026-02-16",
"count": 1
},
{
"date": "2026-02-27",
"count": 1
},
{
"date": "2026-03-02",
"count": 1
},
{
"date": "2026-03-03",
"count": 3
},
{
"date": "2026-03-07",
"count": 1
},
{
"date": "2026-03-09",
"count": 2
},
{
"date": "2026-03-10",
"count": 1
},
{
"date": "2026-03-11",
"count": 2
},
{
"date": "2026-03-13",
"count": 1
},
{
"date": "2026-03-17",
"count": 1
},
{
"date": "2026-03-25",
"count": 4
},
{
"date": "2026-03-30",
"count": 2
},
{
"date": "2026-03-31",
"count": 1
},
{
"date": "2026-04-01",
"count": 1
},
{
"date": "2026-04-07",
"count": 1
},
{
"date": "2026-04-14",
"count": 1
},
{
"date": "2026-04-18",
"count": 1
},
{
"date": "2026-04-19",
"count": 1
},
{
"date": "2026-04-24",
"count": 1
},
{
"date": "2026-04-29",
"count": 1
},
{
"date": "2026-04-30",
"count": 2
},
{
"date": "2026-05-03",
"count": 1
},
{
"date": "2026-05-04",
"count": 3
},
{
"date": "2026-05-06",
"count": 2
},
{
"date": "2026-05-10",
"count": 3
},
{
"date": "2026-05-11",
"count": 1
},
{
"date": "2026-05-27",
"count": 2
},
{
"date": "2026-05-30",
"count": 1
},
{
"date": "2026-06-04",
"count": 1
},
{
"date": "2026-06-05",
"count": 1
},
{
"date": "2026-06-08",
"count": 1
},
{
"date": "2026-06-09",
"count": 1
},
{
"date": "2026-06-16",
"count": 1
},
{
"date": "2026-06-17",
"count": 3
},
{
"date": "2026-06-19",
"count": 2
},
{
"date": "2026-06-21",
"count": 1
},
{
"date": "2026-06-22",
"count": 1
},
{
"date": "2026-06-23",
"count": 1
},
{
"date": "2026-06-25",
"count": 1
},
{
"date": "2026-06-29",
"count": 1
},
{
"date": "2026-07-01",
"count": 2
},
{
"date": "2026-07-07",
"count": 1
},
{
"date": "2026-07-08",
"count": 2
},
{
"date": "2026-07-09",
"count": 1
},
{
"date": "2026-07-11",
"count": 2
},
{
"date": "2026-07-13",
"count": 2
},
{
"date": "2026-07-14",
"count": 1
},
{
"date": "2026-07-15",
"count": 1
},
{
"date": "2026-07-18",
"count": 1
}
],
"complete": true,
"collected": 80,
"total_forks": 84
},
"star_history": {
"days": [
{
"date": "2026-01-12",
"count": 1
},
{
"date": "2026-01-14",
"count": 1
},
{
"date": "2026-01-15",
"count": 4
},
{
"date": "2026-01-16",
"count": 6
},
{
"date": "2026-01-17",
"count": 2
},
{
"date": "2026-01-18",
"count": 4
},
{
"date": "2026-01-19",
"count": 11
},
{
"date": "2026-01-20",
"count": 5
},
{
"date": "2026-01-21",
"count": 2
},
{
"date": "2026-01-22",
"count": 2
},
{
"date": "2026-01-23",
"count": 2
},
{
"date": "2026-01-24",
"count": 1
},
{
"date": "2026-01-26",
"count": 1
},
{
"date": "2026-01-28",
"count": 1
},
{
"date": "2026-01-30",
"count": 1
},
{
"date": "2026-02-01",
"count": 1
},
{
"date": "2026-02-02",
"count": 2
},
{
"date": "2026-02-03",
"count": 2
},
{
"date": "2026-02-05",
"count": 1
},
{
"date": "2026-02-10",
"count": 1
},
{
"date": "2026-02-12",
"count": 4
},
{
"date": "2026-02-13",
"count": 1
},
{
"date": "2026-02-14",
"count": 1
},
{
"date": "2026-02-16",
"count": 2
},
{
"date": "2026-02-18",
"count": 3
},
{
"date": "2026-02-19",
"count": 1
},
{
"date": "2026-02-21",
"count": 2
},
{
"date": "2026-02-22",
"count": 1
},
{
"date": "2026-02-23",
"count": 1
},
{
"date": "2026-02-24",
"count": 1
},
{
"date": "2026-02-25",
"count": 1
},
{
"date": "2026-02-27",
"count": 1
},
{
"date": "2026-03-01",
"count": 1
},
{
"date": "2026-03-03",
"count": 8
},
{
"date": "2026-03-04",
"count": 3
},
{
"date": "2026-03-05",
"count": 5
},
{
"date": "2026-03-06",
"count": 1
},
{
"date": "2026-03-07",
"count": 1
},
{
"date": "2026-03-08",
"count": 1
},
{
"date": "2026-03-09",
"count": 11
},
{
"date": "2026-03-10",
"count": 7
},
{
"date": "2026-03-11",
"count": 1
},
{
"date": "2026-03-12",
"count": 3
},
{
"date": "2026-03-13",
"count": 9
},
{
"date": "2026-03-14",
"count": 2
},
{
"date": "2026-03-15",
"count": 1
},
{
"date": "2026-03-16",
"count": 4
},
{
"date": "2026-03-17",
"count": 2
},
{
"date": "2026-03-18",
"count": 1
},
{
"date": "2026-03-20",
"count": 1
},
{
"date": "2026-03-22",
"count": 1
},
{
"date": "2026-03-24",
"count": 3
},
{
"date": "2026-03-25",
"count": 2
},
{
"date": "2026-03-26",
"count": 1
},
{
"date": "2026-03-28",
"count": 4
},
{
"date": "2026-03-29",
"count": 2
},
{
"date": "2026-03-30",
"count": 4
},
{
"date": "2026-03-31",
"count": 2
},
{
"date": "2026-04-01",
"count": 1
},
{
"date": "2026-04-02",
"count": 1
},
{
"date": "2026-04-03",
"count": 1
},
{
"date": "2026-04-04",
"count": 1
},
{
"date": "2026-04-09",
"count": 1
},
{
"date": "2026-04-11",
"count": 1
},
{
"date": "2026-04-15",
"count": 1
},
{
"date": "2026-04-19",
"count": 2
},
{
"date": "2026-04-20",
"count": 1
},
{
"date": "2026-04-23",
"count": 1
},
{
"date": "2026-04-24",
"count": 1
},
{
"date": "2026-04-27",
"count": 1
},
{
"date": "2026-04-28",
"count": 1
},
{
"date": "2026-04-29",
"count": 1
},
{
"date": "2026-04-30",
"count": 1
},
{
"date": "2026-05-01",
"count": 1
},
{
"date": "2026-05-02",
"count": 3
},
{
"date": "2026-05-03",
"count": 1
},
{
"date": "2026-05-04",
"count": 2
},
{
"date": "2026-05-05",
"count": 1
},
{
"date": "2026-05-06",
"count": 1
},
{
"date": "2026-05-07",
"count": 1
},
{
"date": "2026-05-08",
"count": 1
},
{
"date": "2026-05-09",
"count": 3
},
{
"date": "2026-05-10",
"count": 6
},
{
"date": "2026-05-11",
"count": 3
},
{
"date": "2026-05-12",
"count": 1
},
{
"date": "2026-05-13",
"count": 1
},
{
"date": "2026-05-14",
"count": 1
},
{
"date": "2026-05-15",
"count": 1
},
{
"date": "2026-05-18",
"count": 2
},
{
"date": "2026-05-19",
"count": 1
},
{
"date": "2026-05-22",
"count": 1
},
{
"date": "2026-05-25",
"count": 2
},
{
"date": "2026-05-27",
"count": 1
},
{
"date": "2026-05-28",
"count": 1
},
{
"date": "2026-05-30",
"count": 2
},
{
"date": "2026-05-31",
"count": 1
},
{
"date": "2026-06-02",
"count": 3
},
{
"date": "2026-06-03",
"count": 3
},
{
"date": "2026-06-04",
"count": 2
},
{
"date": "2026-06-05",
"count": 1
},
{
"date": "2026-06-06",
"count": 1
},
{
"date": "2026-06-07",
"count": 1
},
{
"date": "2026-06-08",
"count": 2
},
{
"date": "2026-06-09",
"count": 1
},
{
"date": "2026-06-10",
"count": 3
},
{
"date": "2026-06-11",
"count": 1
},
{
"date": "2026-06-14",
"count": 5
},
{
"date": "2026-06-15",
"count": 4
},
{
"date": "2026-06-16",
"count": 1
},
{
"date": "2026-06-17",
"count": 3
},
{
"date": "2026-06-18",
"count": 6
},
{
"date": "2026-06-19",
"count": 3
},
{
"date": "2026-06-20",
"count": 1
},
{
"date": "2026-06-21",
"count": 1
},
{
"date": "2026-06-22",
"count": 1
},
{
"date": "2026-06-23",
"count": 3
},
{
"date": "2026-06-24",
"count": 1
},
{
"date": "2026-06-25",
"count": 2
},
{
"date": "2026-06-26",
"count": 1
},
{
"date": "2026-06-29",
"count": 2
},
{
"date": "2026-06-30",
"count": 3
},
{
"date": "2026-07-01",
"count": 1
},
{
"date": "2026-07-08",
"count": 1
},
{
"date": "2026-07-09",
"count": 1
},
{
"date": "2026-07-11",
"count": 1
},
{
"date": "2026-07-12",
"count": 3
},
{
"date": "2026-07-13",
"count": 3
},
{
"date": "2026-07-14",
"count": 3
},
{
"date": "2026-07-15",
"count": 3
},
{
"date": "2026-07-18",
"count": 1
},
{
"date": "2026-07-19",
"count": 1
},
{
"date": "2026-07-20",
"count": 2
},
{
"date": "2026-07-21",
"count": 2
}
],
"complete": true,
"collected": 282,
"total_stars": 282
},
"open_issues_and_prs": 11
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [
"examples",
"samples"
],
"has_llms_txt": false,
"has_dockerfile": true,
"has_mcp_signal": true,
"bootstrap_files": [],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [
"apps/viewer-embed/tsconfig.json",
"apps/viewer/src/lib/scripts/templates/tsconfig.json",
"apps/viewer/tsconfig.json",
"examples/babylonjs-viewer/tsconfig.json",
"examples/collab-demo/tsconfig.json",
"examples/threejs-collab/tsconfig.json",
"examples/threejs-viewer/tsconfig.json",
"packages/bcf/tsconfig.json",
"packages/cache/tsconfig.json",
"packages/clash/tsconfig.json",
"packages/cli/tsconfig.json",
"packages/codegen/tsconfig.json",
"packages/collab-server/tsconfig.json",
"packages/collab/tsconfig.json",
"packages/create-ifc-lite/tsconfig.json",
"packages/create/tsconfig.json",
"packages/data/tsconfig.json",
"packages/diff/tsconfig.json",
"packages/drawing-2d/tsconfig.json",
"packages/embed-protocol/tsconfig.json",
"packages/embed-sdk/tsconfig.json",
"packages/encoding/tsconfig.json",
"packages/export/tsconfig.json",
"packages/extensions/tsconfig.json",
"packages/geometry/tsconfig.json",
"packages/ids/tsconfig.json",
"packages/ifcx/tsconfig.json",
"packages/lens/tsconfig.json",
"packages/lists/tsconfig.json",
"packages/mcp/tsconfig.json",
"packages/merge/tsconfig.json",
"packages/mutations/tsconfig.json",
"packages/parser/tsconfig.json",
"packages/pointcloud/tsconfig.json",
"packages/query/tsconfig.json",
"packages/renderer/tsconfig.json",
"packages/sandbox/tsconfig.json",
"packages/sdk/tsconfig.json",
"packages/server-bin/tsconfig.json",
"packages/server-client/tsconfig.json",
"packages/solar/tsconfig.json",
"packages/spatial/tsconfig.json",
"packages/viewer/tsconfig.json",
"tests/tsconfig.json",
"tools/demo-kit/tsconfig.json",
"tsconfig.json"
],
"toolchain_manifests": [
"Cargo.toml",
"apps/server/Cargo.toml",
"rust/clash/Cargo.toml",
"rust/core/Cargo.toml",
"rust/core/fuzz/Cargo.toml",
"rust/csg-thread-bench/Cargo.toml",
"rust/export/Cargo.toml",
"rust/ffi/Cargo.toml",
"rust/geometry/Cargo.toml",
"rust/geometry/fuzz/Cargo.toml",
"rust/processing/Cargo.toml",
"rust/python/Cargo.toml",
"rust/wasm-bindings/Cargo.toml"
],
"largest_source_bytes": 1948298,
"source_files_sampled": 2574,
"oversized_source_files": 33,
"agent_instruction_files": [
".cursorrules",
"AGENTS.md",
"CLAUDE.md",
"apps/viewer/AGENTS.md",
"packages/collab-server/AGENTS.md",
"packages/collab/AGENTS.md",
"packages/geometry/AGENTS.md",
"rust/AGENTS.md"
],
"agent_instruction_max_bytes": 19343
},
"dependencies": {
"manifests": [
"Cargo.toml",
"package.json",
"requirements-docs.txt"
],
"advisories": {
"error": null,
"scope": "repository_graph",
"source": "osv",
"findings": [
{
"name": "dompurify",
"direct": false,
"version": "3.4.11",
"severity": "low",
"ecosystem": "npm",
"cvss_score": 0,
"advisory_ids": [
"GHSA-c2j3-45gr-mqc4"
],
"fixed_version": "3.4.12",
"advisory_count": 1,
"oldest_advisory_days": 0
},
{
"name": "async-std",
"direct": false,
"version": "1.13.2",
"severity": "unknown",
"ecosystem": "crates",
"cvss_score": null,
"advisory_ids": [
"RUSTSEC-2025-0052"
],
"fixed_version": null,
"advisory_count": 1,
"oldest_advisory_days": 331
},
{
"name": "crossbeam-epoch",
"direct": false,
"version": "0.9.18",
"severity": "unknown",
"ecosystem": "crates",
"cvss_score": null,
"advisory_ids": [
"RUSTSEC-2026-0204"
],
"fixed_version": "0.9.20",
"advisory_count": 1,
"oldest_advisory_days": 15
},
{
"name": "memmap2",
"direct": false,
"version": "0.5.10",
"severity": "unknown",
"ecosystem": "crates",
"cvss_score": null,
"advisory_ids": [
"RUSTSEC-2026-0186"
],
"fixed_version": "0.9.11",
"advisory_count": 1,
"oldest_advisory_days": 31
},
{
"name": "paste",
"direct": false,
"version": "1.0.15",
"severity": "unknown",
"ecosystem": "crates",
"cvss_score": null,
"advisory_ids": [
"RUSTSEC-2024-0436"
],
"fixed_version": null,
"advisory_count": 1,
"oldest_advisory_days": 652
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"low": 1,
"unknown": 4
},
"advisory_count": 5,
"affected_count": 5,
"assessed_count": 1306,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 156,
"direct_affected_count": 0
},
"ecosystems": [
"crates",
"npm",
"pypi"
],
"dependencies": [
{
"name": "@neondatabase/serverless",
"manifest": "package.json",
"ecosystem": "npm",
"version_constraint": "^1.1.0"
},
{
"name": "mimalloc",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.1"
},
{
"name": "axum",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.8"
},
{
"name": "tower",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.5"
},
{
"name": "tower-http",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.7"
},
{
"name": "tokio",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "1"
},
{
"name": "ifc-lite-core",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": null
},
{
"name": "ifc-lite-geometry",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": null
},
{
"name": "ifc-lite-processing",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": null
},
{
"name": "rayon",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "1.10"
},
{
"name": "serde",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "1.0"
},
{
"name": "serde_json",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "1.0"
},
{
"name": "tokio-stream",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.1"
},
{
"name": "futures",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.3"
},
{
"name": "async-stream",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.3"
},
{
"name": "cacache",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "13"
},
{
"name": "sha2",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.11"
},
{
"name": "hex",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.4"
},
{
"name": "tracing",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.1"
},
{
"name": "tracing-subscriber",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.3"
},
{
"name": "thiserror",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "2.0"
},
{
"name": "anyhow",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "1.0"
},
{
"name": "rustc-hash",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "2.1"
},
{
"name": "num_cpus",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "1.16"
},
{
"name": "arrow",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "59"
},
{
"name": "parquet",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "59"
},
{
"name": "bytes",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "1.5"
},
{
"name": "flate2",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "1.0"
},
{
"name": "zip",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "8"
},
{
"name": "base64",
"manifest": "apps/server/Cargo.toml",
"ecosystem": "crates",
"version_constraint": "0.22"
},
{
"name": "@ifc-lite/bcf",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/cache",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/clash",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/collab",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/create",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/data",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/diff",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/drawing-2d",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/embed-protocol",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/encoding",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/export",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/extensions",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/geometry",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/ids",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/ifcx",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/lens",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/lists",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/mcp",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/merge",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/mutations",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/parser",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/pointcloud",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/query",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/renderer",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/sandbox",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/sdk",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/server-client",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/solar",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/spatial",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/wasm",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "react",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "^19.2.7"
},
{
"name": "react-dom",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "^19.2.7"
},
{
"name": "zustand",
"manifest": "apps/viewer-embed/package.json",
"ecosystem": "npm",
"version_constraint": "^5.0.14"
},
{
"name": "@anthropic-ai/sdk",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^0.112.4"
},
{
"name": "@codemirror/autocomplete",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^6.20.3"
},
{
"name": "@codemirror/commands",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^6.10.4"
},
{
"name": "@codemirror/lang-javascript",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^6.2.5"
},
{
"name": "@codemirror/language",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^6.12.4"
},
{
"name": "@codemirror/search",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^6.7.1"
},
{
"name": "@codemirror/state",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^6.7.1"
},
{
"name": "@codemirror/view",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^6.43.6"
},
{
"name": "@floating-ui/dom",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^1.8.0"
},
{
"name": "@ifc-lite/bcf",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/cache",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/collab",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/clash",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/create",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/data",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/diff",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/ifcx",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/merge",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/drawing-2d",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/encoding",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/export",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/extensions",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/geometry",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/ids",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/lens",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/lists",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/mcp",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/mutations",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/parser",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/pointcloud",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/query",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/renderer",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/sandbox",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/sdk",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/server-client",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/solar",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/spatial",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/wasm",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@radix-ui/react-collapsible",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^1.1.17"
},
{
"name": "@radix-ui/react-dialog",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^1.1.20"
},
{
"name": "@radix-ui/react-dropdown-menu",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^2.1.21"
},
{
"name": "@radix-ui/react-label",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^2.1.12"
},
{
"name": "@radix-ui/react-progress",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^1.1.13"
},
{
"name": "@radix-ui/react-scroll-area",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^1.2.15"
},
{
"name": "@radix-ui/react-select",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^2.3.4"
},
{
"name": "@radix-ui/react-separator",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^1.1.12"
},
{
"name": "@radix-ui/react-slot",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^1.3.0"
},
{
"name": "@radix-ui/react-switch",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^1.3.4"
},
{
"name": "@radix-ui/react-tabs",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^1.1.18"
},
{
"name": "@radix-ui/react-tooltip",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^1.2.13"
},
{
"name": "@tanstack/react-virtual",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^3.14.7"
},
{
"name": "@vercel/analytics",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^2.0.1"
},
{
"name": "apache-arrow",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^21.2.0"
},
{
"name": "autoprefixer",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^10.5.4"
},
{
"name": "beautiful-theme-toggle",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^1.0.1"
},
{
"name": "cesium",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^1.143.0"
},
{
"name": "class-variance-authority",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^0.7.1"
},
{
"name": "clsx",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^2.1.1"
},
{
"name": "exceljs",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^4.4.0"
},
{
"name": "fflate",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^0.8.3"
},
{
"name": "geotiff",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^3.0.5"
},
{
"name": "jspdf",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^4.2.1"
},
{
"name": "jspdf-autotable",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^5.0.8"
},
{
"name": "lucide-react",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^1.25.0"
},
{
"name": "maplibre-gl",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^5.24.0"
},
{
"name": "parquet-wasm",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^0.7.2"
},
{
"name": "postcss",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^8.5.21"
},
{
"name": "posthog-js",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^1.405.3"
},
{
"name": "proj4",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^2.20.9"
},
{
"name": "react",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^19.2.7"
},
{
"name": "react-dom",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^19.2.7"
},
{
"name": "react-markdown",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^10.1.0"
},
{
"name": "react-resizable-panels",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^4.12.2"
},
{
"name": "remark-gfm",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^4.0.0"
},
{
"name": "tailwind-merge",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^3.6.0"
},
{
"name": "tailwindcss",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^4.3.3"
},
{
"name": "three",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^0.185.1"
},
{
"name": "zustand",
"manifest": "apps/viewer/package.json",
"ecosystem": "npm",
"version_constraint": "^5.0.14"
},
{
"name": "@ifc-lite/encoding",
"manifest": "packages/bcf/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "jszip",
"manifest": "packages/bcf/package.json",
"ecosystem": "npm",
"version_constraint": "^3.10.0"
},
{
"name": "@ifc-lite/data",
"manifest": "packages/cache/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/geometry",
"manifest": "packages/cache/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/spatial",
"manifest": "packages/clash/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/geometry",
"manifest": "packages/clash/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/parser",
"manifest": "packages/clash/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/query",
"manifest": "packages/clash/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/bcf",
"manifest": "packages/clash/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/ifcx",
"manifest": "packages/clash/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/wasm",
"manifest": "packages/clash/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/bcf",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/clash",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/create",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/data",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/export",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/extensions",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/geometry",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/ids",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/ifcx",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/merge",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/mcp",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/mutations",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/parser",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/query",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/sandbox",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/sdk",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/viewer-core",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/wasm",
"manifest": "packages/cli/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/data",
"manifest": "packages/codegen/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "commander",
"manifest": "packages/codegen/package.json",
"ecosystem": "npm",
"version_constraint": "^15.0.0"
},
{
"name": "@ifc-lite/collab",
"manifest": "packages/collab-server/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/ifcx",
"manifest": "packages/collab-server/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/merge",
"manifest": "packages/collab-server/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "lib0",
"manifest": "packages/collab-server/package.json",
"ecosystem": "npm",
"version_constraint": "^0.2.99"
},
{
"name": "ws",
"manifest": "packages/collab-server/package.json",
"ecosystem": "npm",
"version_constraint": "^8.21.1"
},
{
"name": "y-protocols",
"manifest": "packages/collab-server/package.json",
"ecosystem": "npm",
"version_constraint": "^1.0.6"
},
{
"name": "yjs",
"manifest": "packages/collab-server/package.json",
"ecosystem": "npm",
"version_constraint": "^13.6.31"
},
{
"name": "@automerge/automerge",
"manifest": "packages/collab/package.json",
"ecosystem": "npm",
"version_constraint": "^3.3.2"
},
{
"name": "@ifc-lite/data",
"manifest": "packages/collab/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/ifcx",
"manifest": "packages/collab/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/mutations",
"manifest": "packages/collab/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "lib0",
"manifest": "packages/collab/package.json",
"ecosystem": "npm",
"version_constraint": "^0.2.99"
},
{
"name": "y-indexeddb",
"manifest": "packages/collab/package.json",
"ecosystem": "npm",
"version_constraint": "^9.0.12"
},
{
"name": "y-protocols",
"manifest": "packages/collab/package.json",
"ecosystem": "npm",
"version_constraint": "^1.0.6"
},
{
"name": "y-websocket",
"manifest": "packages/collab/package.json",
"ecosystem": "npm",
"version_constraint": "^3.0.0"
},
{
"name": "yjs",
"manifest": "packages/collab/package.json",
"ecosystem": "npm",
"version_constraint": "^13.6.31"
},
{
"name": "@ifc-lite/encoding",
"manifest": "packages/create/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/mutations",
"manifest": "packages/create/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/parser",
"manifest": "packages/create/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/geometry",
"manifest": "packages/drawing-2d/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/embed-protocol",
"manifest": "packages/embed-sdk/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/geometry",
"manifest": "packages/export/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/data",
"manifest": "packages/export/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/encoding",
"manifest": "packages/export/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/parser",
"manifest": "packages/export/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "@ifc-lite/mutations",
"manifest": "packages/export/package.json",
"ecosystem": "npm",
"version_constraint": "workspace:^"
},
{
"name": "parquet-wasm",
"manifest": "packages/export/package.json",
"ecosystem": "npm",
"version_constraint": "^0.7.2"
},
{
"name": "apache-arrow",
"manifest": "packages/export/package.json",
"ecosystem": "npm",
"version_constraint": "^21.2.0"
},
{
"name": "jszip",
"manifest": "packages/export/package.json",
"ecosystem": "npm",
"version_constraint": "^3.10.0"
},
{
"name": "acorn",
"manifest": "packages/extensions/package.json",
"ecosystem": "npm",
"version_constraint": "^8.17.0"
},
{
"name": "acorn-walk",
"manifest": "packages/extensions/package.json",
"ecosystem": "npm",
"version_constraint": "^8.3.0"
},
{
"name": "fflate",
"manifest": "packages/extensions/package.json",
"ecosystem": "npm",
"version_constraint": "^0.8.2"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "anyhow",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "anyhow",
"direct": true,
"version": "1.0.104",
"ecosystem": "crates"
},
{
"name": "arrow",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "arrow",
"direct": true,
"version": "59.1.0",
"ecosystem": "crates"
},
{
"name": "async-stream",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "async-stream",
"direct": true,
"version": "0.3.6",
"ecosystem": "crates"
},
{
"name": "axum",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "axum",
"direct": true,
"version": "0.8.9",
"ecosystem": "crates"
},
{
"name": "base64",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "base64",
"direct": true,
"version": "0.21.7",
"ecosystem": "crates"
},
{
"name": "base64",
"direct": true,
"version": "0.22.1",
"ecosystem": "crates"
},
{
"name": "bytes",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "bytes",
"direct": true,
"version": "1.12.1",
"ecosystem": "crates"
},
{
"name": "cacache",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "cacache",
"direct": true,
"version": "13.1.0",
"ecosystem": "crates"
},
{
"name": "flate2",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "flate2",
"direct": true,
"version": "1.1.9",
"ecosystem": "crates"
},
{
"name": "futures",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "futures",
"direct": true,
"version": "0.3.33",
"ecosystem": "crates"
},
{
"name": "hex",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "hex",
"direct": true,
"version": "0.4.3",
"ecosystem": "crates"
},
{
"name": "ifc-lite-core",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "ifc-lite-geometry",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "ifc-lite-processing",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "mimalloc",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "mimalloc",
"direct": true,
"version": "0.1.52",
"ecosystem": "crates"
},
{
"name": "num_cpus",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "num_cpus",
"direct": true,
"version": "1.17.0",
"ecosystem": "crates"
},
{
"name": "parquet",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "parquet",
"direct": true,
"version": "59.1.0",
"ecosystem": "crates"
},
{
"name": "rayon",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "rayon",
"direct": true,
"version": "1.12.0",
"ecosystem": "crates"
},
{
"name": "rustc-hash",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "rustc-hash",
"direct": true,
"version": "2.1.2",
"ecosystem": "crates"
},
{
"name": "rustc-hash",
"direct": true,
"version": "2.1.3",
"ecosystem": "crates"
},
{
"name": "serde",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "serde",
"direct": true,
"version": "1.0.228",
"ecosystem": "crates"
},
{
"name": "serde",
"direct": true,
"version": "1.0.229",
"ecosystem": "crates"
},
{
"name": "serde_json",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "serde_json",
"direct": true,
"version": "1.0.150",
"ecosystem": "crates"
},
{
"name": "serde_json",
"direct": true,
"version": "1.0.151",
"ecosystem": "crates"
},
{
"name": "sha2",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "sha2",
"direct": true,
"version": "0.10.9",
"ecosystem": "crates"
},
{
"name": "sha2",
"direct": true,
"version": "0.11.0",
"ecosystem": "crates"
},
{
"name": "thiserror",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "thiserror",
"direct": true,
"version": "1.0.69",
"ecosystem": "crates"
},
{
"name": "thiserror",
"direct": true,
"version": "2.0.18",
"ecosystem": "crates"
},
{
"name": "thiserror",
"direct": true,
"version": "2.0.19",
"ecosystem": "crates"
},
{
"name": "tokio",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "tokio",
"direct": true,
"version": "1.53.1",
"ecosystem": "crates"
},
{
"name": "tokio-stream",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "tokio-stream",
"direct": true,
"version": "0.1.18",
"ecosystem": "crates"
},
{
"name": "tower",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "tower",
"direct": true,
"version": "0.5.3",
"ecosystem": "crates"
},
{
"name": "tower-http",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "tower-http",
"direct": true,
"version": "0.7.0",
"ecosystem": "crates"
},
{
"name": "tracing",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "tracing",
"direct": true,
"version": "0.1.44",
"ecosystem": "crates"
},
{
"name": "tracing-subscriber",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "tracing-subscriber",
"direct": true,
"version": "0.3.23",
"ecosystem": "crates"
},
{
"name": "zip",
"direct": true,
"version": null,
"ecosystem": "crates"
},
{
"name": "zip",
"direct": true,
"version": "8.6.0",
"ecosystem": "crates"
},
{
"name": "@anthropic-ai/sdk",
"direct": true,
"version": "0.112.4",
"ecosystem": "npm"
},
{
"name": "@anthropic-ai/sdk",
"direct": true,
"version": "^0.112.4",
"ecosystem": "npm"
},
{
"name": "@automerge/automerge",
"direct": true,
"version": "3.3.2",
"ecosystem": "npm"
},
{
"name": "@automerge/automerge",
"direct": true,
"version": "^3.3.2",
"ecosystem": "npm"
},
{
"name": "@codemirror/autocomplete",
"direct": true,
"version": "6.20.3",
"ecosystem": "npm"
},
{
"name": "@codemirror/autocomplete",
"direct": true,
"version": "^6.20.3",
"ecosystem": "npm"
},
{
"name": "@codemirror/commands",
"direct": true,
"version": "6.10.4",
"ecosystem": "npm"
},
{
"name": "@codemirror/commands",
"direct": true,
"version": "^6.10.4",
"ecosystem": "npm"
},
{
"name": "@codemirror/lang-javascript",
"direct": true,
"version": "6.2.5",
"ecosystem": "npm"
},
{
"name": "@codemirror/lang-javascript",
"direct": true,
"version": "^6.2.5",
"ecosystem": "npm"
},
{
"name": "@codemirror/language",
"direct": true,
"version": "6.12.4",
"ecosystem": "npm"
},
{
"name": "@codemirror/language",
"direct": true,
"version": "^6.12.4",
"ecosystem": "npm"
},
{
"name": "@codemirror/search",
"direct": true,
"version": "6.7.1",
"ecosystem": "npm"
},
{
"name": "@codemirror/search",
"direct": true,
"version": "^6.7.1",
"ecosystem": "npm"
},
{
"name": "@codemirror/state",
"direct": true,
"version": "6.7.1",
"ecosystem": "npm"
},
{
"name": "@codemirror/state",
"direct": true,
"version": "^6.7.1",
"ecosystem": "npm"
},
{
"name": "@codemirror/view",
"direct": true,
"version": "6.43.6",
"ecosystem": "npm"
},
{
"name": "@codemirror/view",
"direct": true,
"version": "^6.43.6",
"ecosystem": "npm"
},
{
"name": "@floating-ui/dom",
"direct": true,
"version": "1.8.0",
"ecosystem": "npm"
},
{
"name": "@floating-ui/dom",
"direct": true,
"version": "^1.8.0",
"ecosystem": "npm"
},
{
"name": "@ifc-lite/data",
"direct": true,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "@ifc-lite/data",
"direct": true,
"version": "^2.0.0",
"ecosystem": "npm"
},
{
"name": "@ifc-lite/encoding",
"direct": true,
"version": "1.14.6",
"ecosystem": "npm"
},
{
"name": "@ifc-lite/geometry",
"direct": true,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "@ifc-lite/geometry",
"direct": true,
"version": "^2.1.0",
"ecosystem": "npm"
},
{
"name": "@ifc-lite/ifcx",
"direct": true,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "@ifc-lite/mutations",
"direct": true,
"version": "1.15.1",
"ecosystem": "npm"
},
{
"name": "@ifc-lite/parser",
"direct": true,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "@ifc-lite/parser",
"direct": true,
"version": "^3.0.0",
"ecosystem": "npm"
},
{
"name": "@ifc-lite/pointcloud",
"direct": true,
"version": "0.3.1",
"ecosystem": "npm"
},
{
"name": "@ifc-lite/wasm",
"direct": true,
"version": "2.1.4",
"ecosystem": "npm"
},
{
"name": "@neondatabase/serverless",
"direct": true,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-collapsible",
"direct": true,
"version": "1.1.17",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-collapsible",
"direct": true,
"version": "^1.1.17",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-dialog",
"direct": true,
"version": "1.1.20",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-dialog",
"direct": true,
"version": "^1.1.20",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-dropdown-menu",
"direct": true,
"version": "2.1.21",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-dropdown-menu",
"direct": true,
"version": "^2.1.21",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-label",
"direct": true,
"version": "2.1.12",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-label",
"direct": true,
"version": "^2.1.12",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-progress",
"direct": true,
"version": "1.1.13",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-progress",
"direct": true,
"version": "^1.1.13",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-scroll-area",
"direct": true,
"version": "1.2.15",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-scroll-area",
"direct": true,
"version": "^1.2.15",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-select",
"direct": true,
"version": "2.3.4",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-select",
"direct": true,
"version": "^2.3.4",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-separator",
"direct": true,
"version": "1.1.12",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-separator",
"direct": true,
"version": "^1.1.12",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-slot",
"direct": true,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-slot",
"direct": true,
"version": "^1.3.0",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-switch",
"direct": true,
"version": "1.3.4",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-switch",
"direct": true,
"version": "^1.3.4",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-tabs",
"direct": true,
"version": "1.1.18",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-tabs",
"direct": true,
"version": "^1.1.18",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-tooltip",
"direct": true,
"version": "1.2.13",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-tooltip",
"direct": true,
"version": "^1.2.13",
"ecosystem": "npm"
},
{
"name": "@tanstack/react-virtual",
"direct": true,
"version": "3.14.7",
"ecosystem": "npm"
},
{
"name": "@tanstack/react-virtual",
"direct": true,
"version": "^3.14.7",
"ecosystem": "npm"
},
{
"name": "@vercel/analytics",
"direct": true,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "@vercel/analytics",
"direct": true,
"version": "^2.0.1",
"ecosystem": "npm"
},
{
"name": "acorn",
"direct": true,
"version": "8.17.0",
"ecosystem": "npm"
},
{
"name": "acorn",
"direct": true,
"version": "^8.17.0",
"ecosystem": "npm"
},
{
"name": "acorn-walk",
"direct": true,
"version": "8.3.5",
"ecosystem": "npm"
},
{
"name": "acorn-walk",
"direct": true,
"version": "^8.3.0",
"ecosystem": "npm"
},
{
"name": "apache-arrow",
"direct": true,
"version": "14.0.2",
"ecosystem": "npm"
},
{
"name": "apache-arrow",
"direct": true,
"version": "21.2.0",
"ecosystem": "npm"
},
{
"name": "apache-arrow",
"direct": true,
"version": "^21.2.0",
"ecosystem": "npm"
},
{
"name": "autoprefixer",
"direct": true,
"version": "10.5.4",
"ecosystem": "npm"
},
{
"name": "autoprefixer",
"direct": true,
"version": "^10.5.4",
"ecosystem": "npm"
},
{
"name": "beautiful-theme-toggle",
"direct": true,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "beautiful-theme-toggle",
"direct": true,
"version": "^1.0.1",
"ecosystem": "npm"
},
{
"name": "cesium",
"direct": true,
"version": "1.143.0",
"ecosystem": "npm"
},
{
"name": "cesium",
"direct": true,
"version": "^1.143.0",
"ecosystem": "npm"
},
{
"name": "class-variance-authority",
"direct": true,
"version": "0.7.1",
"ecosystem": "npm"
},
{
"name": "class-variance-authority",
"direct": true,
"version": "^0.7.1",
"ecosystem": "npm"
},
{
"name": "clsx",
"direct": true,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "clsx",
"direct": true,
"version": "^2.1.1",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": true,
"version": "11.1.0",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": true,
"version": "15.0.0",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": true,
"version": "2.20.3",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": true,
"version": "^15.0.0",
"ecosystem": "npm"
},
{
"name": "exceljs",
"direct": true,
"version": "4.4.0",
"ecosystem": "npm"
},
{
"name": "exceljs",
"direct": true,
"version": "^4.4.0",
"ecosystem": "npm"
},
{
"name": "fflate",
"direct": true,
"version": "0.4.9",
"ecosystem": "npm"
},
{
"name": "fflate",
"direct": true,
"version": "0.8.3",
"ecosystem": "npm"
},
{
"name": "fflate",
"direct": true,
"version": "^0.8.2",
"ecosystem": "npm"
},
{
"name": "fflate",
"direct": true,
"version": "^0.8.3",
"ecosystem": "npm"
},
{
"name": "geotiff",
"direct": true,
"version": "3.0.5",
"ecosystem": "npm"
},
{
"name": "geotiff",
"direct": true,
"version": "^3.0.5",
"ecosystem": "npm"
},
{
"name": "jspdf",
"direct": true,
"version": "4.2.1",
"ecosystem": "npm"
},
{
"name": "jspdf",
"direct": true,
"version": "^4.2.1",
"ecosystem": "npm"
},
{
"name": "jspdf-autotable",
"direct": true,
"version": "5.0.8",
"ecosystem": "npm"
},
{
"name": "jspdf-autotable",
"direct": true,
"version": "^5.0.8",
"ecosystem": "npm"
},
{
"name": "jszip",
"direct": true,
"version": "3.10.1",
"ecosystem": "npm"
},
{
"name": "jszip",
"direct": true,
"version": "^3.10.0",
"ecosystem": "npm"
},
{
"name": "lib0",
"direct": true,
"version": "0.2.117",
"ecosystem": "npm"
},
{
"name": "lib0",
"direct": true,
"version": "^0.2.99",
"ecosystem": "npm"
},
{
"name": "lucide-react",
"direct": true,
"version": "1.25.0",
"ecosystem": "npm"
},
{
"name": "lucide-react",
"direct": true,
"version": "^1.25.0",
"ecosystem": "npm"
},
{
"name": "maplibre-gl",
"direct": true,
"version": "5.24.0",
"ecosystem": "npm"
},
{
"name": "maplibre-gl",
"direct": true,
"version": "^5.24.0",
"ecosystem": "npm"
},
{
"name": "parquet-wasm",
"direct": true,
"version": "0.5.0",
"ecosystem": "npm"
},
{
"name": "parquet-wasm",
"direct": true,
"version": "0.7.2",
"ecosystem": "npm"
},
{
"name": "parquet-wasm",
"direct": true,
"version": "^0.7.2",
"ecosystem": "npm"
},
{
"name": "postcss",
"direct": true,
"version": "8.5.21",
"ecosystem": "npm"
},
{
"name": "postcss",
"direct": true,
"version": "^8.5.21",
"ecosystem": "npm"
},
{
"name": "posthog-js",
"direct": true,
"version": "1.405.3",
"ecosystem": "npm"
},
{
"name": "posthog-js",
"direct": true,
"version": "^1.405.3",
"ecosystem": "npm"
},
{
"name": "proj4",
"direct": true,
"version": "2.20.9",
"ecosystem": "npm"
},
{
"name": "proj4",
"direct": true,
"version": "^2.20.9",
"ecosystem": "npm"
},
{
"name": "react",
"direct": true,
"version": "19.2.7",
"ecosystem": "npm"
},
{
"name": "react",
"direct": true,
"version": "^19.2.7",
"ecosystem": "npm"
},
{
"name": "react-dom",
"direct": true,
"version": "19.2.7",
"ecosystem": "npm"
},
{
"name": "react-dom",
"direct": true,
"version": "^19.2.7",
"ecosystem": "npm"
},
{
"name": "react-markdown",
"direct": true,
"version": "10.1.0",
"ecosystem": "npm"
},
{
"name": "react-markdown",
"direct": true,
"version": "^10.1.0",
"ecosystem": "npm"
},
{
"name": "react-resizable-panels",
"direct": true,
"version": "4.12.2",
"ecosystem": "npm"
},
{
"name": "react-resizable-panels",
"direct": true,
"version": "^4.12.2",
"ecosystem": "npm"
},
{
"name": "remark-gfm",
"direct": true,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "remark-gfm",
"direct": true,
"version": "^4.0.0",
"ecosystem": "npm"
},
{
"name": "tailwind-merge",
"direct": true,
"version": "3.6.0",
"ecosystem": "npm"
},
{
"name": "tailwind-merge",
"direct": true,
"version": "^3.6.0",
"ecosystem": "npm"
},
{
"name": "tailwindcss",
"direct": true,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "tailwindcss",
"direct": true,
"version": "^4.3.3",
"ecosystem": "npm"
},
{
"name": "three",
"direct": true,
"version": "0.185.1",
"ecosystem": "npm"
},
{
"name": "three",
"direct": true,
"version": "^0.185.1",
"ecosystem": "npm"
},
{
"name": "ws",
"direct": true,
"version": "8.21.1",
"ecosystem": "npm"
},
{
"name": "ws",
"direct": true,
"version": "^8.21.1",
"ecosystem": "npm"
},
{
"name": "y-indexeddb",
"direct": true,
"version": "9.0.12",
"ecosystem": "npm"
},
{
"name": "y-indexeddb",
"direct": true,
"version": "^9.0.12",
"ecosystem": "npm"
},
{
"name": "y-protocols",
"direct": true,
"version": "1.0.7",
"ecosystem": "npm"
},
{
"name": "y-protocols",
"direct": true,
"version": "^1.0.6",
"ecosystem": "npm"
},
{
"name": "y-websocket",
"direct": true,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "y-websocket",
"direct": true,
"version": "^3.0.0",
"ecosystem": "npm"
},
{
"name": "yjs",
"direct": true,
"version": "13.6.31",
"ecosystem": "npm"
},
{
"name": "yjs",
"direct": true,
"version": "^13.6.31",
"ecosystem": "npm"
},
{
"name": "zustand",
"direct": true,
"version": "5.0.14",
"ecosystem": "npm"
},
{
"name": "zustand",
"direct": true,
"version": "^5.0.14",
"ecosystem": "npm"
},
{
"name": "adler2",
"direct": false,
"version": "2.0.1",
"ecosystem": "crates"
},
{
"name": "ahash",
"direct": false,
"version": "0.8.12",
"ecosystem": "crates"
},
{
"name": "aho-corasick",
"direct": false,
"version": "1.1.4",
"ecosystem": "crates"
},
{
"name": "alloca",
"direct": false,
"version": "0.4.0",
"ecosystem": "crates"
},
{
"name": "android_system_properties",
"direct": false,
"version": "0.1.5",
"ecosystem": "crates"
},
{
"name": "anes",
"direct": false,
"version": "0.1.6",
"ecosystem": "crates"
},
{
"name": "anstyle",
"direct": false,
"version": "1.0.14",
"ecosystem": "crates"
},
{
"name": "approx",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "approx",
"direct": false,
"version": "0.5.1",
"ecosystem": "crates"
},
{
"name": "arbitrary",
"direct": false,
"version": "1.4.2",
"ecosystem": "crates"
},
{
"name": "arrow-arith",
"direct": false,
"version": "59.1.0",
"ecosystem": "crates"
},
{
"name": "arrow-array",
"direct": false,
"version": "59.1.0",
"ecosystem": "crates"
},
{
"name": "arrow-buffer",
"direct": false,
"version": "59.1.0",
"ecosystem": "crates"
},
{
"name": "arrow-cast",
"direct": false,
"version": "59.1.0",
"ecosystem": "crates"
},
{
"name": "arrow-data",
"direct": false,
"version": "59.1.0",
"ecosystem": "crates"
},
{
"name": "arrow-ipc",
"direct": false,
"version": "59.1.0",
"ecosystem": "crates"
},
{
"name": "arrow-ord",
"direct": false,
"version": "59.1.0",
"ecosystem": "crates"
},
{
"name": "arrow-row",
"direct": false,
"version": "59.1.0",
"ecosystem": "crates"
},
{
"name": "arrow-schema",
"direct": false,
"version": "59.1.0",
"ecosystem": "crates"
},
{
"name": "arrow-select",
"direct": false,
"version": "59.1.0",
"ecosystem": "crates"
},
{
"name": "arrow-string",
"direct": false,
"version": "59.1.0",
"ecosystem": "crates"
},
{
"name": "async-channel",
"direct": false,
"version": "1.9.0",
"ecosystem": "crates"
},
{
"name": "async-channel",
"direct": false,
"version": "2.5.0",
"ecosystem": "crates"
},
{
"name": "async-compression",
"direct": false,
"version": "0.4.42",
"ecosystem": "crates"
},
{
"name": "async-executor",
"direct": false,
"version": "1.14.0",
"ecosystem": "crates"
},
{
"name": "async-global-executor",
"direct": false,
"version": "2.4.1",
"ecosystem": "crates"
},
{
"name": "async-io",
"direct": false,
"version": "2.6.0",
"ecosystem": "crates"
},
{
"name": "async-lock",
"direct": false,
"version": "3.4.2",
"ecosystem": "crates"
},
{
"name": "async-process",
"direct": false,
"version": "2.5.0",
"ecosystem": "crates"
},
{
"name": "async-signal",
"direct": false,
"version": "0.2.14",
"ecosystem": "crates"
},
{
"name": "async-std",
"direct": false,
"version": "1.13.2",
"ecosystem": "crates"
},
{
"name": "async-stream-impl",
"direct": false,
"version": "0.3.6",
"ecosystem": "crates"
},
{
"name": "async-task",
"direct": false,
"version": "4.7.1",
"ecosystem": "crates"
},
{
"name": "async-trait",
"direct": false,
"version": "0.1.89",
"ecosystem": "crates"
},
{
"name": "atoi",
"direct": false,
"version": "2.0.0",
"ecosystem": "crates"
},
{
"name": "atomic-waker",
"direct": false,
"version": "1.1.2",
"ecosystem": "crates"
},
{
"name": "autocfg",
"direct": false,
"version": "1.5.0",
"ecosystem": "crates"
},
{
"name": "autocfg",
"direct": false,
"version": "1.5.1",
"ecosystem": "crates"
},
{
"name": "axum-core",
"direct": false,
"version": "0.5.6",
"ecosystem": "crates"
},
{
"name": "bit-set",
"direct": false,
"version": "0.8.0",
"ecosystem": "crates"
},
{
"name": "bit-vec",
"direct": false,
"version": "0.8.0",
"ecosystem": "crates"
},
{
"name": "bitflags",
"direct": false,
"version": "2.11.1",
"ecosystem": "crates"
},
{
"name": "bitflags",
"direct": false,
"version": "2.13.0",
"ecosystem": "crates"
},
{
"name": "block-buffer",
"direct": false,
"version": "0.10.4",
"ecosystem": "crates"
},
{
"name": "block-buffer",
"direct": false,
"version": "0.12.0",
"ecosystem": "crates"
},
{
"name": "blocking",
"direct": false,
"version": "1.6.2",
"ecosystem": "crates"
},
{
"name": "bnum",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "bnum",
"direct": false,
"version": "0.14.4",
"ecosystem": "crates"
},
{
"name": "bumpalo",
"direct": false,
"version": "3.20.2",
"ecosystem": "crates"
},
{
"name": "bytemuck",
"direct": false,
"version": "1.25.0",
"ecosystem": "crates"
},
{
"name": "cast",
"direct": false,
"version": "0.3.0",
"ecosystem": "crates"
},
{
"name": "cc",
"direct": false,
"version": "1.2.62",
"ecosystem": "crates"
},
{
"name": "cc",
"direct": false,
"version": "1.2.65",
"ecosystem": "crates"
},
{
"name": "cfg-if",
"direct": false,
"version": "1.0.4",
"ecosystem": "crates"
},
{
"name": "chrono",
"direct": false,
"version": "0.4.44",
"ecosystem": "crates"
},
{
"name": "ciborium",
"direct": false,
"version": "0.2.2",
"ecosystem": "crates"
},
{
"name": "ciborium-io",
"direct": false,
"version": "0.2.2",
"ecosystem": "crates"
},
{
"name": "ciborium-ll",
"direct": false,
"version": "0.2.2",
"ecosystem": "crates"
},
{
"name": "clap",
"direct": false,
"version": "4.6.1",
"ecosystem": "crates"
},
{
"name": "clap_builder",
"direct": false,
"version": "4.6.0",
"ecosystem": "crates"
},
{
"name": "clap_lex",
"direct": false,
"version": "1.1.0",
"ecosystem": "crates"
},
{
"name": "compression-codecs",
"direct": false,
"version": "0.4.38",
"ecosystem": "crates"
},
{
"name": "compression-core",
"direct": false,
"version": "0.4.32",
"ecosystem": "crates"
},
{
"name": "concurrent-queue",
"direct": false,
"version": "2.5.0",
"ecosystem": "crates"
},
{
"name": "console_error_panic_hook",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "console_error_panic_hook",
"direct": false,
"version": "0.1.7",
"ecosystem": "crates"
},
{
"name": "const-oid",
"direct": false,
"version": "0.10.2",
"ecosystem": "crates"
},
{
"name": "const-random",
"direct": false,
"version": "0.1.18",
"ecosystem": "crates"
},
{
"name": "const-random-macro",
"direct": false,
"version": "0.1.16",
"ecosystem": "crates"
},
{
"name": "core-foundation-sys",
"direct": false,
"version": "0.8.7",
"ecosystem": "crates"
},
{
"name": "cpufeatures",
"direct": false,
"version": "0.2.17",
"ecosystem": "crates"
},
{
"name": "cpufeatures",
"direct": false,
"version": "0.3.0",
"ecosystem": "crates"
},
{
"name": "crc32fast",
"direct": false,
"version": "1.5.0",
"ecosystem": "crates"
},
{
"name": "criterion",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "criterion",
"direct": false,
"version": "0.8.2",
"ecosystem": "crates"
},
{
"name": "criterion-plot",
"direct": false,
"version": "0.8.2",
"ecosystem": "crates"
},
{
"name": "crossbeam-channel",
"direct": false,
"version": "0.5.15",
"ecosystem": "crates"
},
{
"name": "crossbeam-deque",
"direct": false,
"version": "0.8.6",
"ecosystem": "crates"
},
{
"name": "crossbeam-epoch",
"direct": false,
"version": "0.9.18",
"ecosystem": "crates"
},
{
"name": "crossbeam-utils",
"direct": false,
"version": "0.8.21",
"ecosystem": "crates"
},
{
"name": "crunchy",
"direct": false,
"version": "0.2.4",
"ecosystem": "crates"
},
{
"name": "crypto-common",
"direct": false,
"version": "0.1.7",
"ecosystem": "crates"
},
{
"name": "crypto-common",
"direct": false,
"version": "0.2.1",
"ecosystem": "crates"
},
{
"name": "digest",
"direct": false,
"version": "0.10.7",
"ecosystem": "crates"
},
{
"name": "digest",
"direct": false,
"version": "0.11.3",
"ecosystem": "crates"
},
{
"name": "earcutr",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "earcutr",
"direct": false,
"version": "0.5.0",
"ecosystem": "crates"
},
{
"name": "either",
"direct": false,
"version": "1.15.0",
"ecosystem": "crates"
},
{
"name": "either",
"direct": false,
"version": "1.16.0",
"ecosystem": "crates"
},
{
"name": "encoding_rs",
"direct": false,
"version": "0.8.35",
"ecosystem": "crates"
},
{
"name": "equivalent",
"direct": false,
"version": "1.0.2",
"ecosystem": "crates"
},
{
"name": "errno",
"direct": false,
"version": "0.3.14",
"ecosystem": "crates"
},
{
"name": "event-listener",
"direct": false,
"version": "2.5.3",
"ecosystem": "crates"
},
{
"name": "event-listener",
"direct": false,
"version": "5.4.1",
"ecosystem": "crates"
},
{
"name": "event-listener-strategy",
"direct": false,
"version": "0.5.4",
"ecosystem": "crates"
},
{
"name": "fast-float2",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "fast-float2",
"direct": false,
"version": "0.2.3",
"ecosystem": "crates"
},
{
"name": "fastrand",
"direct": false,
"version": "2.4.1",
"ecosystem": "crates"
},
{
"name": "fdeflate",
"direct": false,
"version": "0.3.7",
"ecosystem": "crates"
},
{
"name": "find-msvc-tools",
"direct": false,
"version": "0.1.9",
"ecosystem": "crates"
},
{
"name": "flatbuffers",
"direct": false,
"version": "25.12.19",
"ecosystem": "crates"
},
{
"name": "fnv",
"direct": false,
"version": "1.0.7",
"ecosystem": "crates"
},
{
"name": "foldhash",
"direct": false,
"version": "0.1.5",
"ecosystem": "crates"
},
{
"name": "form_urlencoded",
"direct": false,
"version": "1.2.2",
"ecosystem": "crates"
},
{
"name": "futures-channel",
"direct": false,
"version": "0.3.33",
"ecosystem": "crates"
},
{
"name": "futures-core",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "futures-core",
"direct": false,
"version": "0.3.32",
"ecosystem": "crates"
},
{
"name": "futures-core",
"direct": false,
"version": "0.3.33",
"ecosystem": "crates"
},
{
"name": "futures-executor",
"direct": false,
"version": "0.3.33",
"ecosystem": "crates"
},
{
"name": "futures-io",
"direct": false,
"version": "0.3.33",
"ecosystem": "crates"
},
{
"name": "futures-lite",
"direct": false,
"version": "2.6.1",
"ecosystem": "crates"
},
{
"name": "futures-macro",
"direct": false,
"version": "0.3.32",
"ecosystem": "crates"
},
{
"name": "futures-macro",
"direct": false,
"version": "0.3.33",
"ecosystem": "crates"
},
{
"name": "futures-sink",
"direct": false,
"version": "0.3.33",
"ecosystem": "crates"
},
{
"name": "futures-task",
"direct": false,
"version": "0.3.32",
"ecosystem": "crates"
},
{
"name": "futures-task",
"direct": false,
"version": "0.3.33",
"ecosystem": "crates"
},
{
"name": "futures-util",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "futures-util",
"direct": false,
"version": "0.3.32",
"ecosystem": "crates"
},
{
"name": "futures-util",
"direct": false,
"version": "0.3.33",
"ecosystem": "crates"
},
{
"name": "generic-array",
"direct": false,
"version": "0.14.7",
"ecosystem": "crates"
},
{
"name": "geometry-predicates",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "geometry-predicates",
"direct": false,
"version": "0.3.0",
"ecosystem": "crates"
},
{
"name": "getrandom",
"direct": false,
"version": "0.2.17",
"ecosystem": "crates"
},
{
"name": "getrandom",
"direct": false,
"version": "0.3.4",
"ecosystem": "crates"
},
{
"name": "getrandom",
"direct": false,
"version": "0.4.2",
"ecosystem": "crates"
},
{
"name": "glam",
"direct": false,
"version": "0.30.10",
"ecosystem": "crates"
},
{
"name": "glam",
"direct": false,
"version": "0.31.1",
"ecosystem": "crates"
},
{
"name": "glam",
"direct": false,
"version": "0.32.1",
"ecosystem": "crates"
},
{
"name": "glam",
"direct": false,
"version": "0.33.0",
"ecosystem": "crates"
},
{
"name": "glam",
"direct": false,
"version": "0.33.1",
"ecosystem": "crates"
},
{
"name": "glam",
"direct": false,
"version": "0.33.2",
"ecosystem": "crates"
},
{
"name": "gloo-timers",
"direct": false,
"version": "0.3.0",
"ecosystem": "crates"
},
{
"name": "half",
"direct": false,
"version": "2.7.1",
"ecosystem": "crates"
},
{
"name": "hashbrown",
"direct": false,
"version": "0.15.5",
"ecosystem": "crates"
},
{
"name": "hashbrown",
"direct": false,
"version": "0.17.1",
"ecosystem": "crates"
},
{
"name": "heck",
"direct": false,
"version": "0.5.0",
"ecosystem": "crates"
},
{
"name": "hermit-abi",
"direct": false,
"version": "0.5.2",
"ecosystem": "crates"
},
{
"name": "http",
"direct": false,
"version": "1.4.0",
"ecosystem": "crates"
},
{
"name": "http-body",
"direct": false,
"version": "1.0.1",
"ecosystem": "crates"
},
{
"name": "http-body-util",
"direct": false,
"version": "0.1.3",
"ecosystem": "crates"
},
{
"name": "httparse",
"direct": false,
"version": "1.10.1",
"ecosystem": "crates"
},
{
"name": "httpdate",
"direct": false,
"version": "1.0.3",
"ecosystem": "crates"
},
{
"name": "hybrid-array",
"direct": false,
"version": "0.4.12",
"ecosystem": "crates"
},
{
"name": "hyper",
"direct": false,
"version": "1.9.0",
"ecosystem": "crates"
},
{
"name": "hyper-util",
"direct": false,
"version": "0.1.20",
"ecosystem": "crates"
},
{
"name": "i_float",
"direct": false,
"version": "3.0.0",
"ecosystem": "crates"
},
{
"name": "i_key_sort",
"direct": false,
"version": "0.10.3",
"ecosystem": "crates"
},
{
"name": "i_overlay",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "i_overlay",
"direct": false,
"version": "7.0.1",
"ecosystem": "crates"
},
{
"name": "i_overlay",
"direct": false,
"version": "7.0.2",
"ecosystem": "crates"
},
{
"name": "i_shape",
"direct": false,
"version": "3.0.0",
"ecosystem": "crates"
},
{
"name": "i_tree",
"direct": false,
"version": "0.19.0",
"ecosystem": "crates"
},
{
"name": "iana-time-zone",
"direct": false,
"version": "0.1.65",
"ecosystem": "crates"
},
{
"name": "iana-time-zone-haiku",
"direct": false,
"version": "0.1.2",
"ecosystem": "crates"
},
{
"name": "id-arena",
"direct": false,
"version": "2.3.0",
"ecosystem": "crates"
},
{
"name": "ifc-lite-clash",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "ifc-lite-export",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "indexmap",
"direct": false,
"version": "2.14.0",
"ecosystem": "crates"
},
{
"name": "insta",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "insta",
"direct": false,
"version": "1.48.0",
"ecosystem": "crates"
},
{
"name": "itertools",
"direct": false,
"version": "0.13.0",
"ecosystem": "crates"
},
{
"name": "itertools",
"direct": false,
"version": "0.14.0",
"ecosystem": "crates"
},
{
"name": "itoa",
"direct": false,
"version": "1.0.18",
"ecosystem": "crates"
},
{
"name": "jobserver",
"direct": false,
"version": "0.1.34",
"ecosystem": "crates"
},
{
"name": "jpeg-decoder",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "jpeg-decoder",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "js-sys",
"direct": false,
"version": "0.3.83",
"ecosystem": "crates"
},
{
"name": "kv-log-macro",
"direct": false,
"version": "1.0.7",
"ecosystem": "crates"
},
{
"name": "lazy_static",
"direct": false,
"version": "1.5.0",
"ecosystem": "crates"
},
{
"name": "leb128fmt",
"direct": false,
"version": "0.1.0",
"ecosystem": "crates"
},
{
"name": "lexical-core",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "lexical-core",
"direct": false,
"version": "1.0.6",
"ecosystem": "crates"
},
{
"name": "lexical-parse-float",
"direct": false,
"version": "1.0.6",
"ecosystem": "crates"
},
{
"name": "lexical-parse-integer",
"direct": false,
"version": "1.0.6",
"ecosystem": "crates"
},
{
"name": "lexical-util",
"direct": false,
"version": "1.0.7",
"ecosystem": "crates"
},
{
"name": "lexical-write-float",
"direct": false,
"version": "1.0.6",
"ecosystem": "crates"
},
{
"name": "lexical-write-integer",
"direct": false,
"version": "1.0.6",
"ecosystem": "crates"
},
{
"name": "libc",
"direct": false,
"version": "0.2.186",
"ecosystem": "crates"
},
{
"name": "libfuzzer-sys",
"direct": false,
"version": "0.4.13",
"ecosystem": "crates"
},
{
"name": "libm",
"direct": false,
"version": "0.2.16",
"ecosystem": "crates"
},
{
"name": "libmimalloc-sys",
"direct": false,
"version": "0.1.49",
"ecosystem": "crates"
},
{
"name": "linux-raw-sys",
"direct": false,
"version": "0.12.1",
"ecosystem": "crates"
},
{
"name": "lock_api",
"direct": false,
"version": "0.4.14",
"ecosystem": "crates"
},
{
"name": "log",
"direct": false,
"version": "0.4.29",
"ecosystem": "crates"
},
{
"name": "lz4_flex",
"direct": false,
"version": "0.13.1",
"ecosystem": "crates"
},
{
"name": "matchers",
"direct": false,
"version": "0.2.0",
"ecosystem": "crates"
},
{
"name": "matchit",
"direct": false,
"version": "0.8.4",
"ecosystem": "crates"
},
{
"name": "matrixmultiply",
"direct": false,
"version": "0.3.10",
"ecosystem": "crates"
},
{
"name": "memchr",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "memchr",
"direct": false,
"version": "2.8.2",
"ecosystem": "crates"
},
{
"name": "memchr",
"direct": false,
"version": "2.8.3",
"ecosystem": "crates"
},
{
"name": "memmap2",
"direct": false,
"version": "0.5.10",
"ecosystem": "crates"
},
{
"name": "miette",
"direct": false,
"version": "5.10.0",
"ecosystem": "crates"
},
{
"name": "miette-derive",
"direct": false,
"version": "5.10.0",
"ecosystem": "crates"
},
{
"name": "mime",
"direct": false,
"version": "0.3.17",
"ecosystem": "crates"
},
{
"name": "minicov",
"direct": false,
"version": "0.3.8",
"ecosystem": "crates"
},
{
"name": "minimal-lexical",
"direct": false,
"version": "0.2.1",
"ecosystem": "crates"
},
{
"name": "miniz_oxide",
"direct": false,
"version": "0.8.9",
"ecosystem": "crates"
},
{
"name": "mio",
"direct": false,
"version": "1.2.0",
"ecosystem": "crates"
},
{
"name": "multer",
"direct": false,
"version": "3.1.0",
"ecosystem": "crates"
},
{
"name": "nalgebra",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "nalgebra",
"direct": false,
"version": "0.35.0",
"ecosystem": "crates"
},
{
"name": "nom",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "nom",
"direct": false,
"version": "7.1.3",
"ecosystem": "crates"
},
{
"name": "nu-ansi-term",
"direct": false,
"version": "0.50.3",
"ecosystem": "crates"
},
{
"name": "num-bigint",
"direct": false,
"version": "0.4.6",
"ecosystem": "crates"
},
{
"name": "num-bigint",
"direct": false,
"version": "0.4.7",
"ecosystem": "crates"
},
{
"name": "num-complex",
"direct": false,
"version": "0.4.6",
"ecosystem": "crates"
},
{
"name": "num-integer",
"direct": false,
"version": "0.1.46",
"ecosystem": "crates"
},
{
"name": "num-rational",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "num-rational",
"direct": false,
"version": "0.4.2",
"ecosystem": "crates"
},
{
"name": "num-traits",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "num-traits",
"direct": false,
"version": "0.2.19",
"ecosystem": "crates"
},
{
"name": "once_cell",
"direct": false,
"version": "1.21.4",
"ecosystem": "crates"
},
{
"name": "oorandom",
"direct": false,
"version": "11.1.5",
"ecosystem": "crates"
},
{
"name": "page_size",
"direct": false,
"version": "0.6.0",
"ecosystem": "crates"
},
{
"name": "parking",
"direct": false,
"version": "2.2.1",
"ecosystem": "crates"
},
{
"name": "parking_lot",
"direct": false,
"version": "0.12.5",
"ecosystem": "crates"
},
{
"name": "parking_lot_core",
"direct": false,
"version": "0.9.12",
"ecosystem": "crates"
},
{
"name": "paste",
"direct": false,
"version": "1.0.15",
"ecosystem": "crates"
},
{
"name": "percent-encoding",
"direct": false,
"version": "2.3.2",
"ecosystem": "crates"
},
{
"name": "pin-project-lite",
"direct": false,
"version": "0.2.17",
"ecosystem": "crates"
},
{
"name": "pin-utils",
"direct": false,
"version": "0.1.0",
"ecosystem": "crates"
},
{
"name": "piper",
"direct": false,
"version": "0.2.5",
"ecosystem": "crates"
},
{
"name": "pkg-config",
"direct": false,
"version": "0.3.33",
"ecosystem": "crates"
},
{
"name": "plotters",
"direct": false,
"version": "0.3.7",
"ecosystem": "crates"
},
{
"name": "plotters-backend",
"direct": false,
"version": "0.3.7",
"ecosystem": "crates"
},
{
"name": "plotters-svg",
"direct": false,
"version": "0.3.7",
"ecosystem": "crates"
},
{
"name": "png",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "png",
"direct": false,
"version": "0.18.1",
"ecosystem": "crates"
},
{
"name": "polling",
"direct": false,
"version": "3.11.0",
"ecosystem": "crates"
},
{
"name": "portable-atomic",
"direct": false,
"version": "1.13.1",
"ecosystem": "crates"
},
{
"name": "ppv-lite86",
"direct": false,
"version": "0.2.21",
"ecosystem": "crates"
},
{
"name": "prettyplease",
"direct": false,
"version": "0.2.37",
"ecosystem": "crates"
},
{
"name": "proc-macro2",
"direct": false,
"version": "1.0.106",
"ecosystem": "crates"
},
{
"name": "proptest",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "proptest",
"direct": false,
"version": "1.11.0",
"ecosystem": "crates"
},
{
"name": "pyo3",
"direct": false,
"version": "0.29.0",
"ecosystem": "crates"
},
{
"name": "pyo3-build-config",
"direct": false,
"version": "0.29.0",
"ecosystem": "crates"
},
{
"name": "pyo3-ffi",
"direct": false,
"version": "0.29.0",
"ecosystem": "crates"
},
{
"name": "pyo3-macros",
"direct": false,
"version": "0.29.0",
"ecosystem": "crates"
},
{
"name": "pyo3-macros-backend",
"direct": false,
"version": "0.29.0",
"ecosystem": "crates"
},
{
"name": "quick-error",
"direct": false,
"version": "1.2.3",
"ecosystem": "crates"
},
{
"name": "quote",
"direct": false,
"version": "1.0.45",
"ecosystem": "crates"
},
{
"name": "quote",
"direct": false,
"version": "1.0.46",
"ecosystem": "crates"
},
{
"name": "r-efi",
"direct": false,
"version": "5.3.0",
"ecosystem": "crates"
},
{
"name": "r-efi",
"direct": false,
"version": "6.0.0",
"ecosystem": "crates"
},
{
"name": "rand",
"direct": false,
"version": "0.9.4",
"ecosystem": "crates"
},
{
"name": "rand_chacha",
"direct": false,
"version": "0.9.0",
"ecosystem": "crates"
},
{
"name": "rand_core",
"direct": false,
"version": "0.9.5",
"ecosystem": "crates"
},
{
"name": "rand_xorshift",
"direct": false,
"version": "0.4.0",
"ecosystem": "crates"
},
{
"name": "rawpointer",
"direct": false,
"version": "0.2.1",
"ecosystem": "crates"
},
{
"name": "rayon-core",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "rayon-core",
"direct": false,
"version": "1.13.0",
"ecosystem": "crates"
},
{
"name": "redox_syscall",
"direct": false,
"version": "0.5.18",
"ecosystem": "crates"
},
{
"name": "reflink-copy",
"direct": false,
"version": "0.1.29",
"ecosystem": "crates"
},
{
"name": "regex",
"direct": false,
"version": "1.12.3",
"ecosystem": "crates"
},
{
"name": "regex-automata",
"direct": false,
"version": "0.4.14",
"ecosystem": "crates"
},
{
"name": "regex-syntax",
"direct": false,
"version": "0.8.10",
"ecosystem": "crates"
},
{
"name": "robust",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "robust",
"direct": false,
"version": "1.2.0",
"ecosystem": "crates"
},
{
"name": "rustc_version",
"direct": false,
"version": "0.4.1",
"ecosystem": "crates"
},
{
"name": "rustix",
"direct": false,
"version": "1.1.4",
"ecosystem": "crates"
},
{
"name": "rustversion",
"direct": false,
"version": "1.0.22",
"ecosystem": "crates"
},
{
"name": "rusty-fork",
"direct": false,
"version": "0.3.1",
"ecosystem": "crates"
},
{
"name": "ryu",
"direct": false,
"version": "1.0.23",
"ecosystem": "crates"
},
{
"name": "safe_arch",
"direct": false,
"version": "1.0.0",
"ecosystem": "crates"
},
{
"name": "same-file",
"direct": false,
"version": "1.0.6",
"ecosystem": "crates"
},
{
"name": "scopeguard",
"direct": false,
"version": "1.2.0",
"ecosystem": "crates"
},
{
"name": "semver",
"direct": false,
"version": "1.0.28",
"ecosystem": "crates"
},
{
"name": "seq-macro",
"direct": false,
"version": "0.3.6",
"ecosystem": "crates"
},
{
"name": "serde-wasm-bindgen",
"direct": false,
"version": "0.6.5",
"ecosystem": "crates"
},
{
"name": "serde_core",
"direct": false,
"version": "1.0.228",
"ecosystem": "crates"
},
{
"name": "serde_core",
"direct": false,
"version": "1.0.229",
"ecosystem": "crates"
},
{
"name": "serde_derive",
"direct": false,
"version": "1.0.228",
"ecosystem": "crates"
},
{
"name": "serde_derive",
"direct": false,
"version": "1.0.229",
"ecosystem": "crates"
},
{
"name": "serde_path_to_error",
"direct": false,
"version": "0.1.20",
"ecosystem": "crates"
},
{
"name": "serde_urlencoded",
"direct": false,
"version": "0.7.1",
"ecosystem": "crates"
},
{
"name": "sha-1",
"direct": false,
"version": "0.10.1",
"ecosystem": "crates"
},
{
"name": "sha1",
"direct": false,
"version": "0.10.6",
"ecosystem": "crates"
},
{
"name": "sharded-slab",
"direct": false,
"version": "0.1.7",
"ecosystem": "crates"
},
{
"name": "shlex",
"direct": false,
"version": "1.3.0",
"ecosystem": "crates"
},
{
"name": "shlex",
"direct": false,
"version": "2.0.1",
"ecosystem": "crates"
},
{
"name": "signal-hook-registry",
"direct": false,
"version": "1.4.8",
"ecosystem": "crates"
},
{
"name": "simba",
"direct": false,
"version": "0.10.0",
"ecosystem": "crates"
},
{
"name": "simd-adler32",
"direct": false,
"version": "0.3.9",
"ecosystem": "crates"
},
{
"name": "similar",
"direct": false,
"version": "2.7.0",
"ecosystem": "crates"
},
{
"name": "slab",
"direct": false,
"version": "0.4.12",
"ecosystem": "crates"
},
{
"name": "smallvec",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "smallvec",
"direct": false,
"version": "1.15.2",
"ecosystem": "crates"
},
{
"name": "snap",
"direct": false,
"version": "1.1.1",
"ecosystem": "crates"
},
{
"name": "socket2",
"direct": false,
"version": "0.6.3",
"ecosystem": "crates"
},
{
"name": "spin",
"direct": false,
"version": "0.9.8",
"ecosystem": "crates"
},
{
"name": "ssri",
"direct": false,
"version": "9.2.0",
"ecosystem": "crates"
},
{
"name": "syn",
"direct": false,
"version": "2.0.117",
"ecosystem": "crates"
},
{
"name": "syn",
"direct": false,
"version": "2.0.118",
"ecosystem": "crates"
},
{
"name": "syn",
"direct": false,
"version": "3.0.2",
"ecosystem": "crates"
},
{
"name": "sync_wrapper",
"direct": false,
"version": "1.0.2",
"ecosystem": "crates"
},
{
"name": "target-lexicon",
"direct": false,
"version": "0.13.5",
"ecosystem": "crates"
},
{
"name": "tempfile",
"direct": false,
"version": "3.27.0",
"ecosystem": "crates"
},
{
"name": "thiserror-impl",
"direct": false,
"version": "1.0.69",
"ecosystem": "crates"
},
{
"name": "thiserror-impl",
"direct": false,
"version": "2.0.18",
"ecosystem": "crates"
},
{
"name": "thiserror-impl",
"direct": false,
"version": "2.0.19",
"ecosystem": "crates"
},
{
"name": "thread_local",
"direct": false,
"version": "1.1.9",
"ecosystem": "crates"
},
{
"name": "tiny-keccak",
"direct": false,
"version": "2.0.2",
"ecosystem": "crates"
},
{
"name": "tinytemplate",
"direct": false,
"version": "1.2.1",
"ecosystem": "crates"
},
{
"name": "tokio-macros",
"direct": false,
"version": "2.7.0",
"ecosystem": "crates"
},
{
"name": "tokio-util",
"direct": false,
"version": "0.7.18",
"ecosystem": "crates"
},
{
"name": "tower-layer",
"direct": false,
"version": "0.3.3",
"ecosystem": "crates"
},
{
"name": "tower-service",
"direct": false,
"version": "0.3.3",
"ecosystem": "crates"
},
{
"name": "tracing-attributes",
"direct": false,
"version": "0.1.31",
"ecosystem": "crates"
},
{
"name": "tracing-core",
"direct": false,
"version": "0.1.36",
"ecosystem": "crates"
},
{
"name": "tracing-log",
"direct": false,
"version": "0.2.0",
"ecosystem": "crates"
},
{
"name": "tracing-serde",
"direct": false,
"version": "0.2.0",
"ecosystem": "crates"
},
{
"name": "twox-hash",
"direct": false,
"version": "2.1.2",
"ecosystem": "crates"
},
{
"name": "typed-path",
"direct": false,
"version": "0.12.3",
"ecosystem": "crates"
},
{
"name": "typenum",
"direct": false,
"version": "1.20.0",
"ecosystem": "crates"
},
{
"name": "typenum",
"direct": false,
"version": "1.20.1",
"ecosystem": "crates"
},
{
"name": "unarray",
"direct": false,
"version": "0.1.4",
"ecosystem": "crates"
},
{
"name": "unicode-ident",
"direct": false,
"version": "1.0.24",
"ecosystem": "crates"
},
{
"name": "unicode-width",
"direct": false,
"version": "0.1.14",
"ecosystem": "crates"
},
{
"name": "unicode-xid",
"direct": false,
"version": "0.2.6",
"ecosystem": "crates"
},
{
"name": "valuable",
"direct": false,
"version": "0.1.1",
"ecosystem": "crates"
},
{
"name": "value-bag",
"direct": false,
"version": "1.12.0",
"ecosystem": "crates"
},
{
"name": "version_check",
"direct": false,
"version": "0.9.5",
"ecosystem": "crates"
},
{
"name": "wait-timeout",
"direct": false,
"version": "0.2.1",
"ecosystem": "crates"
},
{
"name": "walkdir",
"direct": false,
"version": "2.5.0",
"ecosystem": "crates"
},
{
"name": "wasi",
"direct": false,
"version": "0.11.1+wasi-snapshot-preview1",
"ecosystem": "crates"
},
{
"name": "wasip2",
"direct": false,
"version": "1.0.3+wasi-0.2.9",
"ecosystem": "crates"
},
{
"name": "wasip2",
"direct": false,
"version": "1.0.4+wasi-0.2.12",
"ecosystem": "crates"
},
{
"name": "wasip3",
"direct": false,
"version": "0.4.0+wasi-0.3.0-rc-2026-01-06",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen",
"direct": false,
"version": "0.2.106",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-futures",
"direct": false,
"version": "0.4.56",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-macro",
"direct": false,
"version": "0.2.106",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-macro-support",
"direct": false,
"version": "0.2.106",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-rayon",
"direct": false,
"version": null,
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-rayon",
"direct": false,
"version": "1.3.0",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-shared",
"direct": false,
"version": "0.2.106",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-test",
"direct": false,
"version": "0.3.56",
"ecosystem": "crates"
},
{
"name": "wasm-bindgen-test-macro",
"direct": false,
"version": "0.3.56",
"ecosystem": "crates"
},
{
"name": "wasm-encoder",
"direct": false,
"version": "0.244.0",
"ecosystem": "crates"
},
{
"name": "wasm-metadata",
"direct": false,
"version": "0.244.0",
"ecosystem": "crates"
},
{
"name": "wasm_sync",
"direct": false,
"version": "0.1.2",
"ecosystem": "crates"
},
{
"name": "wasmparser",
"direct": false,
"version": "0.244.0",
"ecosystem": "crates"
},
{
"name": "web-sys",
"direct": false,
"version": "0.3.83",
"ecosystem": "crates"
},
{
"name": "wide",
"direct": false,
"version": "1.4.0",
"ecosystem": "crates"
},
{
"name": "wide",
"direct": false,
"version": "1.5.0",
"ecosystem": "crates"
},
{
"name": "winapi",
"direct": false,
"version": "0.3.9",
"ecosystem": "crates"
},
{
"name": "winapi-i686-pc-windows-gnu",
"direct": false,
"version": "0.4.0",
"ecosystem": "crates"
},
{
"name": "winapi-util",
"direct": false,
"version": "0.1.11",
"ecosystem": "crates"
},
{
"name": "winapi-x86_64-pc-windows-gnu",
"direct": false,
"version": "0.4.0",
"ecosystem": "crates"
},
{
"name": "windows",
"direct": false,
"version": "0.62.2",
"ecosystem": "crates"
},
{
"name": "windows-collections",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "windows-core",
"direct": false,
"version": "0.62.2",
"ecosystem": "crates"
},
{
"name": "windows-future",
"direct": false,
"version": "0.3.2",
"ecosystem": "crates"
},
{
"name": "windows-implement",
"direct": false,
"version": "0.60.2",
"ecosystem": "crates"
},
{
"name": "windows-interface",
"direct": false,
"version": "0.59.3",
"ecosystem": "crates"
},
{
"name": "windows-link",
"direct": false,
"version": "0.2.1",
"ecosystem": "crates"
},
{
"name": "windows-numerics",
"direct": false,
"version": "0.3.1",
"ecosystem": "crates"
},
{
"name": "windows-result",
"direct": false,
"version": "0.4.1",
"ecosystem": "crates"
},
{
"name": "windows-strings",
"direct": false,
"version": "0.5.1",
"ecosystem": "crates"
},
{
"name": "windows-sys",
"direct": false,
"version": "0.61.2",
"ecosystem": "crates"
},
{
"name": "windows-threading",
"direct": false,
"version": "0.2.1",
"ecosystem": "crates"
},
{
"name": "wit-bindgen",
"direct": false,
"version": "0.51.0",
"ecosystem": "crates"
},
{
"name": "wit-bindgen",
"direct": false,
"version": "0.57.1",
"ecosystem": "crates"
},
{
"name": "wit-bindgen-core",
"direct": false,
"version": "0.51.0",
"ecosystem": "crates"
},
{
"name": "wit-bindgen-rust",
"direct": false,
"version": "0.51.0",
"ecosystem": "crates"
},
{
"name": "wit-bindgen-rust-macro",
"direct": false,
"version": "0.51.0",
"ecosystem": "crates"
},
{
"name": "wit-component",
"direct": false,
"version": "0.244.0",
"ecosystem": "crates"
},
{
"name": "wit-parser",
"direct": false,
"version": "0.244.0",
"ecosystem": "crates"
},
{
"name": "xxhash-rust",
"direct": false,
"version": "0.8.15",
"ecosystem": "crates"
},
{
"name": "zerocopy",
"direct": false,
"version": "0.8.48",
"ecosystem": "crates"
},
{
"name": "zerocopy-derive",
"direct": false,
"version": "0.8.48",
"ecosystem": "crates"
},
{
"name": "zlib-rs",
"direct": false,
"version": "0.6.4",
"ecosystem": "crates"
},
{
"name": "zmij",
"direct": false,
"version": "1.0.21",
"ecosystem": "crates"
},
{
"name": "zopfli",
"direct": false,
"version": "0.8.3",
"ecosystem": "crates"
},
{
"name": "zstd",
"direct": false,
"version": "0.13.3",
"ecosystem": "crates"
},
{
"name": "zstd-safe",
"direct": false,
"version": "7.2.1",
"ecosystem": "crates"
},
{
"name": "zstd-sys",
"direct": false,
"version": "2.0.13+zstd.1.5.6",
"ecosystem": "crates"
},
{
"name": "@75lb/deep-merge",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@alloc/quick-lru",
"direct": false,
"version": "5.2.0",
"ecosystem": "npm"
},
{
"name": "@antfu/install-pkg",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@babel/code-frame",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/compat-data",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/core",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/generator",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-compilation-targets",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-globals",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-module-imports",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-module-transforms",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-string-parser",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-validator-identifier",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-validator-option",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helpers",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/parser",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/runtime",
"direct": false,
"version": "7.29.2",
"ecosystem": "npm"
},
{
"name": "@babel/runtime",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/template",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/traverse",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/types",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babylonjs/core",
"direct": false,
"version": "9.17.0",
"ecosystem": "npm"
},
{
"name": "@babylonjs/core",
"direct": false,
"version": "^9.17.0",
"ecosystem": "npm"
},
{
"name": "@cesium/engine",
"direct": false,
"version": "26.1.0",
"ecosystem": "npm"
},
{
"name": "@cesium/wasm-splats",
"direct": false,
"version": "0.1.0-alpha.2",
"ecosystem": "npm"
},
{
"name": "@cesium/widgets",
"direct": false,
"version": "16.1.0",
"ecosystem": "npm"
},
{
"name": "@changesets/apply-release-plan",
"direct": false,
"version": "7.1.1",
"ecosystem": "npm"
},
{
"name": "@changesets/assemble-release-plan",
"direct": false,
"version": "6.0.10",
"ecosystem": "npm"
},
{
"name": "@changesets/changelog-git",
"direct": false,
"version": "0.2.1",
"ecosystem": "npm"
},
{
"name": "@changesets/changelog-github",
"direct": false,
"version": "0.7.0",
"ecosystem": "npm"
},
{
"name": "@changesets/cli",
"direct": false,
"version": "2.31.1",
"ecosystem": "npm"
},
{
"name": "@changesets/config",
"direct": false,
"version": "3.1.4",
"ecosystem": "npm"
},
{
"name": "@changesets/errors",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "@changesets/get-dependents-graph",
"direct": false,
"version": "2.1.4",
"ecosystem": "npm"
},
{
"name": "@changesets/get-github-info",
"direct": false,
"version": "0.8.0",
"ecosystem": "npm"
},
{
"name": "@changesets/get-release-plan",
"direct": false,
"version": "4.0.16",
"ecosystem": "npm"
},
{
"name": "@changesets/get-version-range-type",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "@changesets/git",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "@changesets/logger",
"direct": false,
"version": "0.1.1",
"ecosystem": "npm"
},
{
"name": "@changesets/parse",
"direct": false,
"version": "0.4.3",
"ecosystem": "npm"
},
{
"name": "@changesets/pre",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "@changesets/read",
"direct": false,
"version": "0.6.7",
"ecosystem": "npm"
},
{
"name": "@changesets/should-skip-package",
"direct": false,
"version": "0.1.2",
"ecosystem": "npm"
},
{
"name": "@changesets/types",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@changesets/types",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "@changesets/write",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "@codemirror/lint",
"direct": false,
"version": "6.9.6",
"ecosystem": "npm"
},
{
"name": "@dimforge/rapier3d-compat",
"direct": false,
"version": "0.12.0",
"ecosystem": "npm"
},
{
"name": "@edge-runtime/primitives",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "@edge-runtime/vm",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "@emnapi/core",
"direct": false,
"version": "1.11.0",
"ecosystem": "npm"
},
{
"name": "@emnapi/core",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "@emnapi/runtime",
"direct": false,
"version": "1.11.0",
"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": "@esbuild/aix-ppc64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-arm",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/android-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/darwin-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/darwin-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/freebsd-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/freebsd-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-arm",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-ia32",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-loong64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-mips64el",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-ppc64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-riscv64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-s390x",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/linux-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/netbsd-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/netbsd-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/openbsd-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/openbsd-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/openharmony-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/sunos-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-arm64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-ia32",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@esbuild/win32-x64",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "@fast-csv/format",
"direct": false,
"version": "4.3.5",
"ecosystem": "npm"
},
{
"name": "@fast-csv/parse",
"direct": false,
"version": "4.3.6",
"ecosystem": "npm"
},
{
"name": "@floating-ui/core",
"direct": false,
"version": "1.8.0",
"ecosystem": "npm"
},
{
"name": "@floating-ui/react-dom",
"direct": false,
"version": "2.1.9",
"ecosystem": "npm"
},
{
"name": "@floating-ui/utils",
"direct": false,
"version": "0.2.12",
"ecosystem": "npm"
},
{
"name": "@iconify/types",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "@iconify/utils",
"direct": false,
"version": "3.1.4",
"ecosystem": "npm"
},
{
"name": "@inquirer/external-editor",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "@isaacs/fs-minipass",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "@jitl/quickjs-ffi-types",
"direct": false,
"version": "0.32.0",
"ecosystem": "npm"
},
{
"name": "@jitl/quickjs-wasmfile-debug-asyncify",
"direct": false,
"version": "0.32.0",
"ecosystem": "npm"
},
{
"name": "@jitl/quickjs-wasmfile-debug-sync",
"direct": false,
"version": "0.32.0",
"ecosystem": "npm"
},
{
"name": "@jitl/quickjs-wasmfile-release-asyncify",
"direct": false,
"version": "0.32.0",
"ecosystem": "npm"
},
{
"name": "@jitl/quickjs-wasmfile-release-sync",
"direct": false,
"version": "0.32.0",
"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/sourcemap-codec",
"direct": false,
"version": "1.5.5",
"ecosystem": "npm"
},
{
"name": "@jridgewell/trace-mapping",
"direct": false,
"version": "0.3.31",
"ecosystem": "npm"
},
{
"name": "@lezer/common",
"direct": false,
"version": "1.5.2",
"ecosystem": "npm"
},
{
"name": "@lezer/highlight",
"direct": false,
"version": "1.2.3",
"ecosystem": "npm"
},
{
"name": "@lezer/javascript",
"direct": false,
"version": "1.5.4",
"ecosystem": "npm"
},
{
"name": "@lezer/lr",
"direct": false,
"version": "1.4.10",
"ecosystem": "npm"
},
{
"name": "@manypkg/find-root",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@manypkg/get-packages",
"direct": false,
"version": "1.1.3",
"ecosystem": "npm"
},
{
"name": "@mapbox/jsonlint-lines-primitives",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "@mapbox/point-geometry",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@mapbox/tiny-sdf",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "@mapbox/unitbezier",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "@mapbox/vector-tile",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "@mapbox/whoots-js",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "@maplibre/geojson-vt",
"direct": false,
"version": "5.0.4",
"ecosystem": "npm"
},
{
"name": "@maplibre/geojson-vt",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "@maplibre/maplibre-gl-style-spec",
"direct": false,
"version": "24.8.5",
"ecosystem": "npm"
},
{
"name": "@maplibre/mlt",
"direct": false,
"version": "1.1.9",
"ecosystem": "npm"
},
{
"name": "@maplibre/vt-pbf",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "@marijn/find-cluster-break",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "@napi-rs/wasm-runtime",
"direct": false,
"version": "1.1.6",
"ecosystem": "npm"
},
{
"name": "@noble/hashes",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "@noble/hashes",
"direct": false,
"version": "^2.2.0",
"ecosystem": "npm"
},
{
"name": "@nodelib/fs.scandir",
"direct": false,
"version": "2.1.5",
"ecosystem": "npm"
},
{
"name": "@nodelib/fs.stat",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "@nodelib/fs.walk",
"direct": false,
"version": "1.2.8",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-android-arm-eabi",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-android-arm64",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-darwin-arm64",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-darwin-x64",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-freebsd-x64",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-arm-gnueabihf",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-arm-musleabihf",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-arm64-gnu",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-arm64-musl",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-ppc64-gnu",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-riscv64-gnu",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-riscv64-musl",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-s390x-gnu",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-x64-gnu",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-linux-x64-musl",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-openharmony-arm64",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-wasm32-wasi",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-win32-arm64-msvc",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-win32-ia32-msvc",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-parser/binding-win32-x64-msvc",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-project/types",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "@oxc-project/types",
"direct": false,
"version": "0.139.0",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-android-arm-eabi",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-android-arm64",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-darwin-arm64",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-darwin-x64",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-freebsd-x64",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-arm-gnueabihf",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-arm-musleabihf",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-arm64-gnu",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-arm64-musl",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-ppc64-gnu",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-riscv64-gnu",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-riscv64-musl",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-s390x-gnu",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-x64-gnu",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-linux-x64-musl",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-openharmony-arm64",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-wasm32-wasi",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-win32-arm64-msvc",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@oxc-resolver/binding-win32-x64-msvc",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "@petamoriken/float16",
"direct": false,
"version": "3.9.3",
"ecosystem": "npm"
},
{
"name": "@playwright/test",
"direct": false,
"version": "1.61.1",
"ecosystem": "npm"
},
{
"name": "@posthog/core",
"direct": false,
"version": "1.44.0",
"ecosystem": "npm"
},
{
"name": "@posthog/types",
"direct": false,
"version": "1.397.1",
"ecosystem": "npm"
},
{
"name": "@radix-ui/number",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@radix-ui/primitive",
"direct": false,
"version": "1.1.6",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-arrow",
"direct": false,
"version": "1.1.12",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-collection",
"direct": false,
"version": "1.1.12",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-compose-refs",
"direct": false,
"version": "1.1.3",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-context",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-direction",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-dismissable-layer",
"direct": false,
"version": "1.1.16",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-focus-guards",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-focus-scope",
"direct": false,
"version": "1.1.13",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-id",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-menu",
"direct": false,
"version": "2.1.21",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-popper",
"direct": false,
"version": "1.3.4",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-portal",
"direct": false,
"version": "1.1.14",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-presence",
"direct": false,
"version": "1.1.8",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-primitive",
"direct": false,
"version": "2.1.7",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-roving-focus",
"direct": false,
"version": "1.1.16",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-use-callback-ref",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-use-controllable-state",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-use-effect-event",
"direct": false,
"version": "0.0.3",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-use-is-hydrated",
"direct": false,
"version": "0.1.1",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-use-layout-effect",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-use-previous",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-use-rect",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-use-size",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@radix-ui/react-visually-hidden",
"direct": false,
"version": "1.2.8",
"ecosystem": "npm"
},
{
"name": "@radix-ui/rect",
"direct": false,
"version": "1.1.2",
"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-virtual",
"direct": false,
"version": "3.0.2",
"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": "@spz-loader/core",
"direct": false,
"version": "0.3.1",
"ecosystem": "npm"
},
{
"name": "@stablelib/base64",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@standard-schema/spec",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@svgr/babel-plugin-add-jsx-attribute",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "@svgr/babel-plugin-remove-jsx-attribute",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "@svgr/babel-plugin-remove-jsx-empty-expression",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "@svgr/babel-plugin-replace-jsx-attribute-value",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "@svgr/babel-plugin-svg-dynamic-title",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "@svgr/babel-plugin-svg-em-dimensions",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "@svgr/babel-plugin-transform-react-native-svg",
"direct": false,
"version": "8.1.0",
"ecosystem": "npm"
},
{
"name": "@svgr/babel-plugin-transform-svg-component",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "@svgr/babel-preset",
"direct": false,
"version": "8.1.0",
"ecosystem": "npm"
},
{
"name": "@svgr/core",
"direct": false,
"version": "8.1.0",
"ecosystem": "npm"
},
{
"name": "@svgr/core",
"direct": false,
"version": "^8.1.0",
"ecosystem": "npm"
},
{
"name": "@svgr/hast-util-to-babel-ast",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "@svgr/plugin-jsx",
"direct": false,
"version": "8.1.0",
"ecosystem": "npm"
},
{
"name": "@svgr/plugin-jsx",
"direct": false,
"version": "^8.1.0",
"ecosystem": "npm"
},
{
"name": "@swc/core",
"direct": false,
"version": "1.15.8",
"ecosystem": "npm"
},
{
"name": "@swc/core-darwin-arm64",
"direct": false,
"version": "1.15.8",
"ecosystem": "npm"
},
{
"name": "@swc/core-darwin-x64",
"direct": false,
"version": "1.15.8",
"ecosystem": "npm"
},
{
"name": "@swc/core-linux-arm-gnueabihf",
"direct": false,
"version": "1.15.8",
"ecosystem": "npm"
},
{
"name": "@swc/core-linux-arm64-gnu",
"direct": false,
"version": "1.15.8",
"ecosystem": "npm"
},
{
"name": "@swc/core-linux-arm64-musl",
"direct": false,
"version": "1.15.8",
"ecosystem": "npm"
},
{
"name": "@swc/core-linux-x64-gnu",
"direct": false,
"version": "1.15.8",
"ecosystem": "npm"
},
{
"name": "@swc/core-linux-x64-musl",
"direct": false,
"version": "1.15.8",
"ecosystem": "npm"
},
{
"name": "@swc/core-win32-arm64-msvc",
"direct": false,
"version": "1.15.8",
"ecosystem": "npm"
},
{
"name": "@swc/core-win32-ia32-msvc",
"direct": false,
"version": "1.15.8",
"ecosystem": "npm"
},
{
"name": "@swc/core-win32-x64-msvc",
"direct": false,
"version": "1.15.8",
"ecosystem": "npm"
},
{
"name": "@swc/counter",
"direct": false,
"version": "0.1.3",
"ecosystem": "npm"
},
{
"name": "@swc/helpers",
"direct": false,
"version": "0.5.21",
"ecosystem": "npm"
},
{
"name": "@swc/types",
"direct": false,
"version": "0.1.25",
"ecosystem": "npm"
},
{
"name": "@swc/wasm",
"direct": false,
"version": "1.15.8",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/node",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-android-arm64",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-darwin-arm64",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-darwin-x64",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-freebsd-x64",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-linux-arm-gnueabihf",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-linux-arm64-gnu",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-linux-arm64-musl",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-linux-x64-gnu",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-linux-x64-musl",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-wasm32-wasi",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-win32-arm64-msvc",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/oxide-win32-x64-msvc",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/postcss",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "@tailwindcss/postcss",
"direct": false,
"version": "^4.3.3",
"ecosystem": "npm"
},
{
"name": "@tanstack/virtual-core",
"direct": false,
"version": "3.17.5",
"ecosystem": "npm"
},
{
"name": "@tauri-apps/api",
"direct": false,
"version": "2.11.0",
"ecosystem": "npm"
},
{
"name": "@tauri-apps/api",
"direct": false,
"version": "2.11.1",
"ecosystem": "npm"
},
{
"name": "@tauri-apps/api",
"direct": false,
"version": "^2.11.1",
"ecosystem": "npm"
},
{
"name": "@turbo/darwin-64",
"direct": false,
"version": "2.10.5",
"ecosystem": "npm"
},
{
"name": "@turbo/darwin-arm64",
"direct": false,
"version": "2.10.5",
"ecosystem": "npm"
},
{
"name": "@turbo/linux-64",
"direct": false,
"version": "2.10.5",
"ecosystem": "npm"
},
{
"name": "@turbo/linux-arm64",
"direct": false,
"version": "2.10.5",
"ecosystem": "npm"
},
{
"name": "@turbo/windows-64",
"direct": false,
"version": "2.10.5",
"ecosystem": "npm"
},
{
"name": "@turbo/windows-arm64",
"direct": false,
"version": "2.10.5",
"ecosystem": "npm"
},
{
"name": "@tweenjs/tween.js",
"direct": false,
"version": "23.1.3",
"ecosystem": "npm"
},
{
"name": "@tweenjs/tween.js",
"direct": false,
"version": "25.0.0",
"ecosystem": "npm"
},
{
"name": "@tybys/wasm-util",
"direct": false,
"version": "0.10.3",
"ecosystem": "npm"
},
{
"name": "@types/chai",
"direct": false,
"version": "5.2.3",
"ecosystem": "npm"
},
{
"name": "@types/command-line-args",
"direct": false,
"version": "5.2.0",
"ecosystem": "npm"
},
{
"name": "@types/command-line-usage",
"direct": false,
"version": "5.0.2",
"ecosystem": "npm"
},
{
"name": "@types/debug",
"direct": false,
"version": "4.1.13",
"ecosystem": "npm"
},
{
"name": "@types/deep-eql",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "@types/estree",
"direct": false,
"version": "1.0.9",
"ecosystem": "npm"
},
{
"name": "@types/estree-jsx",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "@types/geojson",
"direct": false,
"version": "7946.0.16",
"ecosystem": "npm"
},
{
"name": "@types/hast",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "@types/mdast",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "@types/ms",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "12.20.55",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "14.18.63",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "20.3.0",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "25.9.5",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "26.1.1",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "^26.1.1",
"ecosystem": "npm"
},
{
"name": "@types/pad-left",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "@types/pako",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "@types/raf",
"direct": false,
"version": "3.4.3",
"ecosystem": "npm"
},
{
"name": "@types/react",
"direct": false,
"version": "19.2.17",
"ecosystem": "npm"
},
{
"name": "@types/react",
"direct": false,
"version": "^19.2.17",
"ecosystem": "npm"
},
{
"name": "@types/react-dom",
"direct": false,
"version": "19.2.3",
"ecosystem": "npm"
},
{
"name": "@types/react-dom",
"direct": false,
"version": "^19.2.3",
"ecosystem": "npm"
},
{
"name": "@types/stats.js",
"direct": false,
"version": "0.17.4",
"ecosystem": "npm"
},
{
"name": "@types/supercluster",
"direct": false,
"version": "7.1.3",
"ecosystem": "npm"
},
{
"name": "@types/three",
"direct": false,
"version": "0.185.1",
"ecosystem": "npm"
},
{
"name": "@types/three",
"direct": false,
"version": "^0.185.1",
"ecosystem": "npm"
},
{
"name": "@types/trusted-types",
"direct": false,
"version": "2.0.7",
"ecosystem": "npm"
},
{
"name": "@types/unist",
"direct": false,
"version": "2.0.11",
"ecosystem": "npm"
},
{
"name": "@types/unist",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "@types/webxr",
"direct": false,
"version": "0.5.24",
"ecosystem": "npm"
},
{
"name": "@types/whatwg-mimetype",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "@types/ws",
"direct": false,
"version": "8.18.1",
"ecosystem": "npm"
},
{
"name": "@types/ws",
"direct": false,
"version": "^8.5.13",
"ecosystem": "npm"
},
{
"name": "@ungap/structured-clone",
"direct": false,
"version": "1.3.1",
"ecosystem": "npm"
},
{
"name": "@vitejs/plugin-react",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "@vitejs/plugin-react",
"direct": false,
"version": "^6.0.3",
"ecosystem": "npm"
},
{
"name": "@vitest/expect",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/mocker",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/pretty-format",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/runner",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/snapshot",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/spy",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@vitest/utils",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "@webgpu/types",
"direct": false,
"version": "0.1.71",
"ecosystem": "npm"
},
{
"name": "@webgpu/types",
"direct": false,
"version": "^0.1.71",
"ecosystem": "npm"
},
{
"name": "@xmldom/xmldom",
"direct": false,
"version": "0.9.10",
"ecosystem": "npm"
},
{
"name": "@xmldom/xmldom",
"direct": false,
"version": "^0.9.10",
"ecosystem": "npm"
},
{
"name": "@zip.js/zip.js",
"direct": false,
"version": "2.8.26",
"ecosystem": "npm"
},
{
"name": "ansi-colors",
"direct": false,
"version": "4.1.3",
"ecosystem": "npm"
},
{
"name": "ansi-regex",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "anymatch",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "archiver",
"direct": false,
"version": "5.3.2",
"ecosystem": "npm"
},
{
"name": "archiver-utils",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "archiver-utils",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "argparse",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "aria-hidden",
"direct": false,
"version": "1.2.6",
"ecosystem": "npm"
},
{
"name": "array-back",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "array-back",
"direct": false,
"version": "6.2.2",
"ecosystem": "npm"
},
{
"name": "array-back",
"direct": false,
"version": "6.2.3",
"ecosystem": "npm"
},
{
"name": "array-union",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "assertion-error",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "async",
"direct": false,
"version": "3.2.6",
"ecosystem": "npm"
},
{
"name": "autolinker",
"direct": false,
"version": "4.1.5",
"ecosystem": "npm"
},
{
"name": "bail",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "balanced-match",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "base64-arraybuffer",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "base64-js",
"direct": false,
"version": "1.5.1",
"ecosystem": "npm"
},
{
"name": "baseline-browser-mapping",
"direct": false,
"version": "2.10.44",
"ecosystem": "npm"
},
{
"name": "better-path-resolve",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "big-integer",
"direct": false,
"version": "1.6.52",
"ecosystem": "npm"
},
{
"name": "binary",
"direct": false,
"version": "0.3.0",
"ecosystem": "npm"
},
{
"name": "binary-extensions",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "bitmap-sdf",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "bl",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "bluebird",
"direct": false,
"version": "3.4.7",
"ecosystem": "npm"
},
{
"name": "boolbase",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "1.1.16",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "braces",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "browserslist",
"direct": false,
"version": "4.28.6",
"ecosystem": "npm"
},
{
"name": "buffer",
"direct": false,
"version": "5.7.1",
"ecosystem": "npm"
},
{
"name": "buffer-crc32",
"direct": false,
"version": "0.2.13",
"ecosystem": "npm"
},
{
"name": "buffer-image-size",
"direct": false,
"version": "0.6.4",
"ecosystem": "npm"
},
{
"name": "buffer-indexof-polyfill",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "buffers",
"direct": false,
"version": "0.1.1",
"ecosystem": "npm"
},
{
"name": "callsites",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "camelcase",
"direct": false,
"version": "6.3.0",
"ecosystem": "npm"
},
{
"name": "caniuse-lite",
"direct": false,
"version": "1.0.30001806",
"ecosystem": "npm"
},
{
"name": "canvg",
"direct": false,
"version": "3.0.11",
"ecosystem": "npm"
},
{
"name": "ccount",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "chai",
"direct": false,
"version": "6.2.2",
"ecosystem": "npm"
},
{
"name": "chainsaw",
"direct": false,
"version": "0.1.0",
"ecosystem": "npm"
},
{
"name": "chalk",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "chalk-template",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "character-entities",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "character-entities-html4",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "character-entities-legacy",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "character-reference-invalid",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "chardet",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "chokidar",
"direct": false,
"version": "3.6.0",
"ecosystem": "npm"
},
{
"name": "chownr",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "color-convert",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "color-name",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "comma-separated-tokens",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "command-line-args",
"direct": false,
"version": "5.2.1",
"ecosystem": "npm"
},
{
"name": "command-line-usage",
"direct": false,
"version": "7.0.1",
"ecosystem": "npm"
},
{
"name": "command-line-usage",
"direct": false,
"version": "7.0.4",
"ecosystem": "npm"
},
{
"name": "compress-commons",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "concat-map",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "confbox",
"direct": false,
"version": "0.1.8",
"ecosystem": "npm"
},
{
"name": "confbox",
"direct": false,
"version": "0.2.4",
"ecosystem": "npm"
},
{
"name": "convert-source-map",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "core-js",
"direct": false,
"version": "3.49.0",
"ecosystem": "npm"
},
{
"name": "core-util-is",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "cosmiconfig",
"direct": false,
"version": "8.3.6",
"ecosystem": "npm"
},
{
"name": "crc-32",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "crc32-stream",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "crelt",
"direct": false,
"version": "1.0.6",
"ecosystem": "npm"
},
{
"name": "crelt",
"direct": false,
"version": "1.0.7",
"ecosystem": "npm"
},
{
"name": "cross-spawn",
"direct": false,
"version": "7.0.6",
"ecosystem": "npm"
},
{
"name": "css-line-break",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "css-select",
"direct": false,
"version": "5.2.2",
"ecosystem": "npm"
},
{
"name": "css-tree",
"direct": false,
"version": "2.2.1",
"ecosystem": "npm"
},
{
"name": "css-tree",
"direct": false,
"version": "3.2.1",
"ecosystem": "npm"
},
{
"name": "css-what",
"direct": false,
"version": "6.2.2",
"ecosystem": "npm"
},
{
"name": "csso",
"direct": false,
"version": "5.0.5",
"ecosystem": "npm"
},
{
"name": "csstype",
"direct": false,
"version": "3.2.3",
"ecosystem": "npm"
},
{
"name": "dataloader",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "dayjs",
"direct": false,
"version": "1.11.21",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "4.4.3",
"ecosystem": "npm"
},
{
"name": "decode-named-character-reference",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "dequal",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "detect-indent",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "detect-libc",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "detect-node-es",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "devlop",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "dir-glob",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "dom-serializer",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "domelementtype",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "domhandler",
"direct": false,
"version": "5.0.3",
"ecosystem": "npm"
},
{
"name": "dompurify",
"direct": false,
"version": "3.4.11",
"ecosystem": "npm"
},
{
"name": "dompurify",
"direct": false,
"version": "3.4.12",
"ecosystem": "npm"
},
{
"name": "domutils",
"direct": false,
"version": "3.2.2",
"ecosystem": "npm"
},
{
"name": "dot-case",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "dotenv",
"direct": false,
"version": "8.6.0",
"ecosystem": "npm"
},
{
"name": "draco3d",
"direct": false,
"version": "1.5.7",
"ecosystem": "npm"
},
{
"name": "duplexer2",
"direct": false,
"version": "0.1.4",
"ecosystem": "npm"
},
{
"name": "earcut",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "electron-to-chromium",
"direct": false,
"version": "1.5.394",
"ecosystem": "npm"
},
{
"name": "end-of-stream",
"direct": false,
"version": "1.4.5",
"ecosystem": "npm"
},
{
"name": "enhanced-resolve",
"direct": false,
"version": "5.24.3",
"ecosystem": "npm"
},
{
"name": "enquirer",
"direct": false,
"version": "2.4.1",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "4.5.0",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "7.0.1",
"ecosystem": "npm"
},
{
"name": "error-ex",
"direct": false,
"version": "1.3.4",
"ecosystem": "npm"
},
{
"name": "es-module-lexer",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "esbuild",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "esbuild",
"direct": false,
"version": "^0.28.0",
"ecosystem": "npm"
},
{
"name": "esbuild-wasm",
"direct": false,
"version": "0.28.1",
"ecosystem": "npm"
},
{
"name": "esbuild-wasm",
"direct": false,
"version": "^0.28.1",
"ecosystem": "npm"
},
{
"name": "escalade",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "escape-string-regexp",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "estree-util-is-identifier-name",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "estree-walker",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "expect-type",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "exsolve",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "extend",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "extendable-error",
"direct": false,
"version": "0.1.7",
"ecosystem": "npm"
},
{
"name": "fake-indexeddb",
"direct": false,
"version": "6.2.5",
"ecosystem": "npm"
},
{
"name": "fake-indexeddb",
"direct": false,
"version": "^6.2.5",
"ecosystem": "npm"
},
{
"name": "fast-csv",
"direct": false,
"version": "4.3.6",
"ecosystem": "npm"
},
{
"name": "fast-glob",
"direct": false,
"version": "3.3.3",
"ecosystem": "npm"
},
{
"name": "fast-png",
"direct": false,
"version": "6.4.0",
"ecosystem": "npm"
},
{
"name": "fast-sha256",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "fastq",
"direct": false,
"version": "1.20.1",
"ecosystem": "npm"
},
{
"name": "fd-package-json",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "fdir",
"direct": false,
"version": "6.5.0",
"ecosystem": "npm"
},
{
"name": "fill-range",
"direct": false,
"version": "7.1.1",
"ecosystem": "npm"
},
{
"name": "find-replace",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "find-up",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "flatbuffers",
"direct": false,
"version": "23.5.26",
"ecosystem": "npm"
},
{
"name": "flatbuffers",
"direct": false,
"version": "25.9.23",
"ecosystem": "npm"
},
{
"name": "formatly",
"direct": false,
"version": "0.3.0",
"ecosystem": "npm"
},
{
"name": "fraction.js",
"direct": false,
"version": "5.3.4",
"ecosystem": "npm"
},
{
"name": "fs-constants",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "fs-extra",
"direct": false,
"version": "7.0.1",
"ecosystem": "npm"
},
{
"name": "fs-extra",
"direct": false,
"version": "8.1.0",
"ecosystem": "npm"
},
{
"name": "fs.realpath",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "fsevents",
"direct": false,
"version": "2.3.2",
"ecosystem": "npm"
},
{
"name": "fsevents",
"direct": false,
"version": "2.3.3",
"ecosystem": "npm"
},
{
"name": "fstream",
"direct": false,
"version": "1.0.12",
"ecosystem": "npm"
},
{
"name": "gensync",
"direct": false,
"version": "1.0.0-beta.2",
"ecosystem": "npm"
},
{
"name": "get-nonce",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "get-tsconfig",
"direct": false,
"version": "4.14.0",
"ecosystem": "npm"
},
{
"name": "gl-matrix",
"direct": false,
"version": "3.4.4",
"ecosystem": "npm"
},
{
"name": "glob",
"direct": false,
"version": "7.2.3",
"ecosystem": "npm"
},
{
"name": "glob-parent",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "globby",
"direct": false,
"version": "11.1.0",
"ecosystem": "npm"
},
{
"name": "graceful-fs",
"direct": false,
"version": "4.2.11",
"ecosystem": "npm"
},
{
"name": "grapheme-splitter",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "happy-dom",
"direct": false,
"version": "20.11.0",
"ecosystem": "npm"
},
{
"name": "happy-dom",
"direct": false,
"version": "^20.11.0",
"ecosystem": "npm"
},
{
"name": "has-flag",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "hast-util-to-jsx-runtime",
"direct": false,
"version": "2.3.6",
"ecosystem": "npm"
},
{
"name": "hast-util-whitespace",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "html-url-attributes",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "html2canvas",
"direct": false,
"version": "1.4.1",
"ecosystem": "npm"
},
{
"name": "human-id",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "iconv-lite",
"direct": false,
"version": "0.7.3",
"ecosystem": "npm"
},
{
"name": "ieee754",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "ignore",
"direct": false,
"version": "5.3.2",
"ecosystem": "npm"
},
{
"name": "immediate",
"direct": false,
"version": "3.0.6",
"ecosystem": "npm"
},
{
"name": "import-fresh",
"direct": false,
"version": "3.3.1",
"ecosystem": "npm"
},
{
"name": "import-meta-resolve",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "inflight",
"direct": false,
"version": "1.0.6",
"ecosystem": "npm"
},
{
"name": "inherits",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "inline-style-parser",
"direct": false,
"version": "0.2.7",
"ecosystem": "npm"
},
{
"name": "iobuffer",
"direct": false,
"version": "5.4.0",
"ecosystem": "npm"
},
{
"name": "is-alphabetical",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "is-alphanumerical",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "is-arrayish",
"direct": false,
"version": "0.2.1",
"ecosystem": "npm"
},
{
"name": "is-binary-path",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "is-decimal",
"direct": false,
"version": "2.0.1",
"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-hexadecimal",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "is-number",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "is-plain-obj",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "is-subdir",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "is-windows",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "isarray",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "isexe",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "isomorphic.js",
"direct": false,
"version": "0.2.5",
"ecosystem": "npm"
},
{
"name": "jiti",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "js-tokens",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "js-yaml",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "jsep",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "jsesc",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "json-bignum",
"direct": false,
"version": "0.0.3",
"ecosystem": "npm"
},
{
"name": "json-parse-even-better-errors",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "json-schema-to-ts",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "json-stringify-pretty-compact",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "json-with-bigint",
"direct": false,
"version": "3.5.10",
"ecosystem": "npm"
},
{
"name": "json5",
"direct": false,
"version": "2.2.3",
"ecosystem": "npm"
},
{
"name": "jsonfile",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "kdbush",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "kdbush",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "knip",
"direct": false,
"version": "6.27.0",
"ecosystem": "npm"
},
{
"name": "ktx-parse",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "laz-perf",
"direct": false,
"version": "0.0.6",
"ecosystem": "npm"
},
{
"name": "laz-perf",
"direct": false,
"version": "0.0.7",
"ecosystem": "npm"
},
{
"name": "laz-perf",
"direct": false,
"version": "^0.0.7",
"ecosystem": "npm"
},
{
"name": "lazystream",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "lerc",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "lerc",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "lie",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "lightningcss",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss",
"direct": false,
"version": "1.33.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-android-arm64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-android-arm64",
"direct": false,
"version": "1.33.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-darwin-arm64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-darwin-arm64",
"direct": false,
"version": "1.33.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-darwin-x64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-darwin-x64",
"direct": false,
"version": "1.33.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-freebsd-x64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-freebsd-x64",
"direct": false,
"version": "1.33.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm-gnueabihf",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm-gnueabihf",
"direct": false,
"version": "1.33.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm64-gnu",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm64-gnu",
"direct": false,
"version": "1.33.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm64-musl",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm64-musl",
"direct": false,
"version": "1.33.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-x64-gnu",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-x64-gnu",
"direct": false,
"version": "1.33.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-x64-musl",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-x64-musl",
"direct": false,
"version": "1.33.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-win32-arm64-msvc",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-win32-arm64-msvc",
"direct": false,
"version": "1.33.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-win32-x64-msvc",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-win32-x64-msvc",
"direct": false,
"version": "1.33.0",
"ecosystem": "npm"
},
{
"name": "lines-and-columns",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "listenercount",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "local-pkg",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "locate-path",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "lodash",
"direct": false,
"version": "4.18.1",
"ecosystem": "npm"
},
{
"name": "lodash.camelcase",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "lodash.defaults",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "lodash.difference",
"direct": false,
"version": "4.5.0",
"ecosystem": "npm"
},
{
"name": "lodash.escaperegexp",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "lodash.flatten",
"direct": false,
"version": "4.4.0",
"ecosystem": "npm"
},
{
"name": "lodash.groupby",
"direct": false,
"version": "4.6.0",
"ecosystem": "npm"
},
{
"name": "lodash.isboolean",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "lodash.isequal",
"direct": false,
"version": "4.5.0",
"ecosystem": "npm"
},
{
"name": "lodash.isfunction",
"direct": false,
"version": "3.0.9",
"ecosystem": "npm"
},
{
"name": "lodash.isnil",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "lodash.isplainobject",
"direct": false,
"version": "4.0.6",
"ecosystem": "npm"
},
{
"name": "lodash.isundefined",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "lodash.startcase",
"direct": false,
"version": "4.4.0",
"ecosystem": "npm"
},
{
"name": "lodash.union",
"direct": false,
"version": "4.6.0",
"ecosystem": "npm"
},
{
"name": "lodash.uniq",
"direct": false,
"version": "4.5.0",
"ecosystem": "npm"
},
{
"name": "long",
"direct": false,
"version": "5.3.2",
"ecosystem": "npm"
},
{
"name": "longest-streak",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "lower-case",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "magic-string",
"direct": false,
"version": "0.30.21",
"ecosystem": "npm"
},
{
"name": "markdown-table",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "mdast-util-find-and-replace",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "mdast-util-from-markdown",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "mdast-util-gfm",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-gfm-autolink-literal",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "mdast-util-gfm-footnote",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-gfm-strikethrough",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-gfm-table",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-gfm-task-list-item",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-mdx-expression",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "mdast-util-mdx-jsx",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-mdxjs-esm",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "mdast-util-phrasing",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-to-hast",
"direct": false,
"version": "13.2.1",
"ecosystem": "npm"
},
{
"name": "mdast-util-to-markdown",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "mdast-util-to-string",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "mdn-data",
"direct": false,
"version": "2.0.28",
"ecosystem": "npm"
},
{
"name": "mdn-data",
"direct": false,
"version": "2.27.1",
"ecosystem": "npm"
},
{
"name": "merge2",
"direct": false,
"version": "1.4.1",
"ecosystem": "npm"
},
{
"name": "mersenne-twister",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "meshoptimizer",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "meshoptimizer",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "mgrs",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "micromark",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "micromark-core-commonmark",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "micromark-extension-gfm",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-gfm-autolink-literal",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-gfm-footnote",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-gfm-strikethrough",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-gfm-table",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "micromark-extension-gfm-tagfilter",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-gfm-task-list-item",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "micromark-factory-destination",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-factory-label",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-factory-space",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-factory-title",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-factory-whitespace",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-character",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-chunked",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-classify-character",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-combine-extensions",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-decode-numeric-character-reference",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "micromark-util-decode-string",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-encode",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-html-tag-name",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-normalize-identifier",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-resolve-all",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-sanitize-uri",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-subtokenize",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "micromark-util-symbol",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-types",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "micromatch",
"direct": false,
"version": "4.0.8",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": false,
"version": "3.1.5",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": false,
"version": "5.1.9",
"ecosystem": "npm"
},
{
"name": "minimist",
"direct": false,
"version": "1.2.8",
"ecosystem": "npm"
},
{
"name": "minipass",
"direct": false,
"version": "7.1.3",
"ecosystem": "npm"
},
{
"name": "minizlib",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "mkdirp",
"direct": false,
"version": "0.5.6",
"ecosystem": "npm"
},
{
"name": "mlly",
"direct": false,
"version": "1.8.2",
"ecosystem": "npm"
},
{
"name": "mri",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "murmurhash-js",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "nanoid",
"direct": false,
"version": "3.3.16",
"ecosystem": "npm"
},
{
"name": "no-case",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "node-fetch",
"direct": false,
"version": "2.7.0",
"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": "nosleep.js",
"direct": false,
"version": "0.12.0",
"ecosystem": "npm"
},
{
"name": "nth-check",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "obug",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "once",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "outdent",
"direct": false,
"version": "0.5.0",
"ecosystem": "npm"
},
{
"name": "oxc-parser",
"direct": false,
"version": "0.137.0",
"ecosystem": "npm"
},
{
"name": "oxc-resolver",
"direct": false,
"version": "11.21.3",
"ecosystem": "npm"
},
{
"name": "p-filter",
"direct": false,
"version": "2.1.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-map",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "p-map",
"direct": false,
"version": "7.0.4",
"ecosystem": "npm"
},
{
"name": "p-try",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "package-manager-detector",
"direct": false,
"version": "0.2.11",
"ecosystem": "npm"
},
{
"name": "package-manager-detector",
"direct": false,
"version": "1.8.0",
"ecosystem": "npm"
},
{
"name": "pad-left",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "pako",
"direct": false,
"version": "1.0.11",
"ecosystem": "npm"
},
{
"name": "pako",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "pako",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "parent-module",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "parse-entities",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "parse-headers",
"direct": false,
"version": "2.0.6",
"ecosystem": "npm"
},
{
"name": "parse-json",
"direct": false,
"version": "5.2.0",
"ecosystem": "npm"
},
{
"name": "path-exists",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "path-is-absolute",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "path-key",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "path-type",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "pathe",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "pbf",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "performance-now",
"direct": false,
"version": "2.1.0",
"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-types",
"direct": false,
"version": "1.3.1",
"ecosystem": "npm"
},
{
"name": "pkg-types",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "playwright",
"direct": false,
"version": "1.61.1",
"ecosystem": "npm"
},
{
"name": "playwright-core",
"direct": false,
"version": "1.61.1",
"ecosystem": "npm"
},
{
"name": "postcss-value-parser",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "potpack",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "preact",
"direct": false,
"version": "10.29.7",
"ecosystem": "npm"
},
{
"name": "prettier",
"direct": false,
"version": "2.8.8",
"ecosystem": "npm"
},
{
"name": "process-nextick-args",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "property-information",
"direct": false,
"version": "7.1.0",
"ecosystem": "npm"
},
{
"name": "protobufjs",
"direct": false,
"version": "8.6.6",
"ecosystem": "npm"
},
{
"name": "protocol-buffers-schema",
"direct": false,
"version": "3.6.1",
"ecosystem": "npm"
},
{
"name": "quansync",
"direct": false,
"version": "0.2.11",
"ecosystem": "npm"
},
{
"name": "query-selector-shadow-dom",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "queue-microtask",
"direct": false,
"version": "1.2.3",
"ecosystem": "npm"
},
{
"name": "quick-lru",
"direct": false,
"version": "6.1.2",
"ecosystem": "npm"
},
{
"name": "quickjs-emscripten",
"direct": false,
"version": "0.32.0",
"ecosystem": "npm"
},
{
"name": "quickjs-emscripten",
"direct": false,
"version": "^0.32.0",
"ecosystem": "npm"
},
{
"name": "quickjs-emscripten-core",
"direct": false,
"version": "0.32.0",
"ecosystem": "npm"
},
{
"name": "quickselect",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "raf",
"direct": false,
"version": "3.4.1",
"ecosystem": "npm"
},
{
"name": "rbush",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "react-remove-scroll",
"direct": false,
"version": "2.7.2",
"ecosystem": "npm"
},
{
"name": "react-remove-scroll-bar",
"direct": false,
"version": "2.3.8",
"ecosystem": "npm"
},
{
"name": "react-style-singleton",
"direct": false,
"version": "2.2.3",
"ecosystem": "npm"
},
{
"name": "read-yaml-file",
"direct": false,
"version": "2.1.0",
"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": "readdir-glob",
"direct": false,
"version": "1.1.3",
"ecosystem": "npm"
},
{
"name": "readdirp",
"direct": false,
"version": "3.6.0",
"ecosystem": "npm"
},
{
"name": "regenerator-runtime",
"direct": false,
"version": "0.13.11",
"ecosystem": "npm"
},
{
"name": "remark-parse",
"direct": false,
"version": "11.0.0",
"ecosystem": "npm"
},
{
"name": "remark-rehype",
"direct": false,
"version": "11.1.2",
"ecosystem": "npm"
},
{
"name": "remark-stringify",
"direct": false,
"version": "11.0.0",
"ecosystem": "npm"
},
{
"name": "repeat-string",
"direct": false,
"version": "1.6.1",
"ecosystem": "npm"
},
{
"name": "resolve-from",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "resolve-from",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "resolve-pkg-maps",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "resolve-protobuf-schema",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "reusify",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "rgbcolor",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "rimraf",
"direct": false,
"version": "2.7.1",
"ecosystem": "npm"
},
{
"name": "rolldown",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "rollup",
"direct": false,
"version": "4.62.2",
"ecosystem": "npm"
},
{
"name": "run-parallel",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "safe-buffer",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "safer-buffer",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "sax",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "saxes",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "scheduler",
"direct": false,
"version": "0.27.0",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "6.3.1",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "7.8.5",
"ecosystem": "npm"
},
{
"name": "setimmediate",
"direct": false,
"version": "1.0.5",
"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": "siginfo",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "signal-exit",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "slash",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "smol-toml",
"direct": false,
"version": "1.7.0",
"ecosystem": "npm"
},
{
"name": "snake-case",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "source-map-js",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "space-separated-tokens",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "spawndamnit",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "stackback",
"direct": false,
"version": "0.0.2",
"ecosystem": "npm"
},
{
"name": "stackblur-canvas",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "standardwebhooks",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "std-env",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "stream-read-all",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "string_decoder",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "stringify-entities",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "strip-ansi",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "strip-bom",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "strip-json-comments",
"direct": false,
"version": "5.0.3",
"ecosystem": "npm"
},
{
"name": "style-mod",
"direct": false,
"version": "4.1.3",
"ecosystem": "npm"
},
{
"name": "style-to-js",
"direct": false,
"version": "1.1.21",
"ecosystem": "npm"
},
{
"name": "style-to-object",
"direct": false,
"version": "1.0.14",
"ecosystem": "npm"
},
{
"name": "supercluster",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "supports-color",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "svg-parser",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "svg-pathdata",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "svgo",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "svgo",
"direct": false,
"version": "^4.0.2",
"ecosystem": "npm"
},
{
"name": "table-layout",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "table-layout",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "tapable",
"direct": false,
"version": "2.3.3",
"ecosystem": "npm"
},
{
"name": "tar",
"direct": false,
"version": "7.5.20",
"ecosystem": "npm"
},
{
"name": "tar",
"direct": false,
"version": "^7.5.20",
"ecosystem": "npm"
},
{
"name": "tar-stream",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "term-size",
"direct": false,
"version": "2.2.1",
"ecosystem": "npm"
},
{
"name": "text-segmentation",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "tinybench",
"direct": false,
"version": "2.9.0",
"ecosystem": "npm"
},
{
"name": "tinyexec",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "tinyglobby",
"direct": false,
"version": "0.2.17",
"ecosystem": "npm"
},
{
"name": "tinyqueue",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "tinyrainbow",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "tmp",
"direct": false,
"version": "0.2.7",
"ecosystem": "npm"
},
{
"name": "to-regex-range",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "topojson-client",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "tr46",
"direct": false,
"version": "0.0.3",
"ecosystem": "npm"
},
{
"name": "traverse",
"direct": false,
"version": "0.3.9",
"ecosystem": "npm"
},
{
"name": "trim-lines",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "trough",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "ts-algebra",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "tslib",
"direct": false,
"version": "2.8.1",
"ecosystem": "npm"
},
{
"name": "tsx",
"direct": false,
"version": "4.23.1",
"ecosystem": "npm"
},
{
"name": "tsx",
"direct": false,
"version": "^4.23.1",
"ecosystem": "npm"
},
{
"name": "turbo",
"direct": false,
"version": "2.10.5",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "5.9.3",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "^5.3.0",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "^6.0.3",
"ecosystem": "npm"
},
{
"name": "typical",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "typical",
"direct": false,
"version": "7.3.0",
"ecosystem": "npm"
},
{
"name": "ufo",
"direct": false,
"version": "1.6.4",
"ecosystem": "npm"
},
{
"name": "unbash",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "undici-types",
"direct": false,
"version": "7.24.6",
"ecosystem": "npm"
},
{
"name": "undici-types",
"direct": false,
"version": "8.3.0",
"ecosystem": "npm"
},
{
"name": "unified",
"direct": false,
"version": "11.0.5",
"ecosystem": "npm"
},
{
"name": "unist-util-is",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "unist-util-position",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "unist-util-stringify-position",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "unist-util-visit",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "unist-util-visit-parents",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "universalify",
"direct": false,
"version": "0.1.2",
"ecosystem": "npm"
},
{
"name": "unplugin",
"direct": false,
"version": "2.3.11",
"ecosystem": "npm"
},
{
"name": "unplugin-icons",
"direct": false,
"version": "23.0.1",
"ecosystem": "npm"
},
{
"name": "unplugin-icons",
"direct": false,
"version": "^23.0.1",
"ecosystem": "npm"
},
{
"name": "unzipper",
"direct": false,
"version": "0.10.14",
"ecosystem": "npm"
},
{
"name": "update-browserslist-db",
"direct": false,
"version": "1.2.3",
"ecosystem": "npm"
},
{
"name": "urijs",
"direct": false,
"version": "1.19.11",
"ecosystem": "npm"
},
{
"name": "use-callback-ref",
"direct": false,
"version": "1.3.3",
"ecosystem": "npm"
},
{
"name": "use-sidecar",
"direct": false,
"version": "1.1.3",
"ecosystem": "npm"
},
{
"name": "use-sync-external-store",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "util-deprecate",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "utrie",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "uuid",
"direct": false,
"version": "11.1.1",
"ecosystem": "npm"
},
{
"name": "vfile",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "vfile-message",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "vite",
"direct": false,
"version": "8.1.5",
"ecosystem": "npm"
},
{
"name": "vite",
"direct": false,
"version": "^8.1.5",
"ecosystem": "npm"
},
{
"name": "vite-plugin-static-copy",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "vite-plugin-static-copy",
"direct": false,
"version": "^4.1.1",
"ecosystem": "npm"
},
{
"name": "vite-plugin-top-level-await",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "vite-plugin-top-level-await",
"direct": false,
"version": "^1.5.0",
"ecosystem": "npm"
},
{
"name": "vite-plugin-top-level-await",
"direct": false,
"version": "^1.6.0",
"ecosystem": "npm"
},
{
"name": "vite-plugin-wasm",
"direct": false,
"version": "3.6.0",
"ecosystem": "npm"
},
{
"name": "vite-plugin-wasm",
"direct": false,
"version": "^3.6.0",
"ecosystem": "npm"
},
{
"name": "vitest",
"direct": false,
"version": "4.1.10",
"ecosystem": "npm"
},
{
"name": "vitest",
"direct": false,
"version": "^4.1.10",
"ecosystem": "npm"
},
{
"name": "w3c-keyname",
"direct": false,
"version": "2.2.8",
"ecosystem": "npm"
},
{
"name": "walk-up-path",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "web-vitals",
"direct": false,
"version": "5.3.0",
"ecosystem": "npm"
},
{
"name": "web-worker",
"direct": false,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "webidl-conversions",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "webpack-virtual-modules",
"direct": false,
"version": "0.6.2",
"ecosystem": "npm"
},
{
"name": "whatwg-mimetype",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "whatwg-url",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "which",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "why-is-node-running",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "wkt-parser",
"direct": false,
"version": "1.5.5",
"ecosystem": "npm"
},
{
"name": "wordwrapjs",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "wrappy",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "xml-utils",
"direct": false,
"version": "1.10.2",
"ecosystem": "npm"
},
{
"name": "xmlchars",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "yallist",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "yallist",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "yaml",
"direct": false,
"version": "2.9.0",
"ecosystem": "npm"
},
{
"name": "zip-stream",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "zod",
"direct": false,
"version": "4.4.3",
"ecosystem": "npm"
},
{
"name": "zstddec",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "zwitch",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "maturin",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "mkdocs",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "mkdocs-material",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "mkdocs-mermaid2-plugin",
"direct": false,
"version": null,
"ecosystem": "pypi"
},
{
"name": "mkdocs-minify-plugin",
"direct": false,
"version": null,
"ecosystem": "pypi"
}
],
"collected": true,
"truncated": false,
"total_count": 1462,
"direct_count": 200,
"indirect_count": 1262
}
},
"maintainership": {
"issues": {
"open_prs": 4,
"merged_prs": 1316,
"open_issues": 7,
"closed_ratio": 0.979,
"closed_issues": 320,
"closed_unmerged_prs": 182
},
"bus_factor": 1,
"bot_contributors": 3,
"top_contributors": [
{
"type": "User",
"login": "louistrue",
"commits": 1160,
"avatar_url": "https://avatars.githubusercontent.com/u/78563314?v=4"
},
{
"type": "User",
"login": "Blogbotana",
"commits": 29,
"avatar_url": "https://avatars.githubusercontent.com/u/69924139?v=4"
},
{
"type": "User",
"login": "claude",
"commits": 4,
"avatar_url": "https://avatars.githubusercontent.com/u/81847?v=4"
},
{
"type": "User",
"login": "jonatanjacobsson",
"commits": 3,
"avatar_url": "https://avatars.githubusercontent.com/u/62721045?v=4"
},
{
"type": "User",
"login": "maxkrut",
"commits": 3,
"avatar_url": "https://avatars.githubusercontent.com/u/9089443?v=4"
},
{
"type": "User",
"login": "mehmet-ylcnky",
"commits": 3,
"avatar_url": "https://avatars.githubusercontent.com/u/217944387?v=4"
},
{
"type": "User",
"login": "Amixx",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/26713658?v=4"
},
{
"type": "User",
"login": "joepaddock-uk",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/65926833?v=4"
},
{
"type": "User",
"login": "kamyarba",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/55237698?v=4"
},
{
"type": "User",
"login": "rpisarew",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/3972970?v=4"
}
],
"contributors_sampled": 16,
"top_contributor_share": 0.953
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"benchmark.yml",
"determinism.yml",
"docker.yml",
"docs.yml",
"fuzz.yml",
"ifcopenshell-parity.yml",
"python-wheels.yml",
"release.yml",
"sdk-canary.yml",
"server-binaries.yml",
"test-templates.yml",
"test.yml"
],
"has_docs_dir": true,
"linter_configs": [],
"has_editorconfig": false,
"has_linter_config": false,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"Cargo.lock",
"pnpm-lock.yaml"
],
"scorecard": {
"checks": [
{
"name": "Binary-Artifacts",
"score": 10,
"reason": "no binaries found in the repo",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
},
{
"name": "Branch-Protection",
"score": 4,
"reason": "branch protection is not maximal on development and all release branches",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 10,
"reason": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
},
{
"name": "CII-Best-Practices",
"score": 0,
"reason": "no effort to earn an OpenSSF best practices badge detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
},
{
"name": "Code-Review",
"score": 1,
"reason": "Found 4/23 approved changesets -- score normalized to 1",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 6,
"reason": "project has 2 contributing companies or organizations -- score normalized to 6",
"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": 10,
"reason": "project is 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 18 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": 7,
"reason": "dependency not pinned by hash detected -- score normalized to 7",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#pinned-dependencies"
},
{
"name": "SAST",
"score": 0,
"reason": "SAST tool is not run on all commits -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#sast"
},
{
"name": "Security-Policy",
"score": 9,
"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": 10,
"reason": "GitHub workflow tokens follow principle of least privilege",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 5,
"reason": "5 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "9a70a18dc1afdb31447690e6a5b22c2912c1acad",
"ran_at": "2026-07-21T23:22:50Z",
"aggregate_score": 7.4,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": true,
"has_dependabot_config": true
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-21T17:08:33Z",
"oldest_open_prs": [
{
"number": 918,
"created_at": "2026-06-04T12:06:48Z",
"last_comment_at": "2026-06-04T12:16:06Z",
"last_comment_author": "louistrue"
},
{
"number": 1344,
"created_at": "2026-06-24T10:59:28Z",
"last_comment_at": "2026-07-01T20:42:06Z",
"last_comment_author": "github-actions"
},
{
"number": 1761,
"created_at": "2026-07-16T14:44:20Z",
"last_comment_at": "2026-07-17T16:31:48Z",
"last_comment_author": "greptile-apps"
},
{
"number": 1836,
"created_at": "2026-07-21T16:32:31Z",
"last_comment_at": "2026-07-21T16:35:26Z",
"last_comment_author": "github-actions"
}
],
"last_merged_pr_at": "2026-07-21T17:04:24Z",
"ci_last_conclusion": "SUCCESS",
"oldest_open_issues": [
{
"number": 1663,
"created_at": "2026-07-08T17:48:45Z",
"last_comment_at": "2026-07-10T07:06:31Z",
"last_comment_author": "bruadam"
},
{
"number": 1788,
"created_at": "2026-07-17T08:30:57Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1790,
"created_at": "2026-07-17T08:48:54Z",
"last_comment_at": "2026-07-18T06:49:52Z",
"last_comment_author": "steverugi"
},
{
"number": 1804,
"created_at": "2026-07-17T21:15:36Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1805,
"created_at": "2026-07-17T21:32:42Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 1810,
"created_at": "2026-07-18T05:07:19Z",
"last_comment_at": "2026-07-21T06:46:15Z",
"last_comment_author": "louistrue"
},
{
"number": 1839,
"created_at": "2026-07-21T18:35:13Z",
"last_comment_at": null,
"last_comment_author": null
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/LTplus-AG/ifc-lite",
"host": "github.com",
"name": "ifc-lite",
"owner": "LTplus-AG"
},
"metrics": {
"overall": {
"key": "overall",
"band": "at_risk",
"name": "Overall health",
"note": "High-Risk Jurisdiction Policy applies a 50% multiplier to weighted overall health and gives it an At risk ceiling of 49.",
"notes": [
{
"code": "jurisdiction_overall_adjustment",
"params": {
"cap": 49,
"pct": 50
}
}
],
"value": 36,
"inputs": {
"security": 50,
"vitality": 90,
"community": 73,
"governance": 62,
"engineering": 77,
"high_risk_jurisdiction_cap": 49,
"high_risk_jurisdiction_multiplier": 50,
"weighted_overall_before_jurisdiction": 71,
"overall_after_jurisdiction_multiplier": 36
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "excellent",
"name": "Vitality",
"value": 90,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "good",
"name": "Development activity",
"note": null,
"notes": [],
"value": 83,
"inputs": {
"commits_last_year": 1352,
"human_commit_share": 0.9,
"days_since_last_push": 0,
"active_weeks_last_year": 28
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 0 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "push_recency",
"params": {
"days": 0
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "28/52 weeks with commits",
"points": 19.4,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 28
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "1352 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 1352
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 18 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": "@ifc-lite/geometry@3.4.0",
"releases_from_tags": false,
"days_since_latest_release": 0,
"mean_days_between_releases": 0.4
},
"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 0 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 0
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~0.4 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 0.4
}
}
],
"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": 0,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 0 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 0
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "good",
"name": "Community & Adoption",
"value": 73,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "moderate",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 58,
"inputs": {
"forks": 84,
"stars": 282,
"watchers": 4,
"growth_state": "organic",
"growth_factor_pct": 100
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "282 stars",
"points": 39.7,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 282
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "84 forks",
"points": 16,
"status": "partial",
"details": [
{
"code": "forks",
"params": {
"count": 84
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "4 watchers",
"points": 2.7,
"status": "partial",
"details": [
{
"code": "watchers",
"params": {
"count": 4
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "excellent",
"name": "Community health",
"note": null,
"notes": [],
"value": 92,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": true,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (MPL-2.0)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "MPL-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": 6.3,
"status": "met",
"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": 71,
"inputs": {
"packages": [
"@ifc-lite/bcf",
"@ifc-lite/cli",
"@ifc-lite/data",
"@ifc-lite/diff",
"@ifc-lite/cache",
"@ifc-lite/clash",
"@ifc-lite/collab"
],
"dependents": null,
"ecosystems": "npm",
"total_downloads": null,
"monthly_downloads": 17745
},
"components": [
{
"key": "monthly_downloads",
"name": "Monthly downloads",
"detail": "17,745 downloads/month across npm",
"points": 56.7,
"status": "partial",
"details": [
{
"code": "downloads_monthly",
"params": {
"count": 17745,
"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": 62,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "at_risk",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 30,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 16,
"top_contributor_share": 0.953
},
"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 95% of commits",
"points": 1.1,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 95
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "16 contributors",
"points": 13.5,
"status": "met",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 16
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 2 contributing companies or organizations -- score normalized to 6",
"points": 6,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "good",
"name": "Issue & PR responsiveness",
"note": null,
"notes": [],
"value": 81,
"inputs": {
"merged_prs": 1316,
"open_issues": 7,
"closed_issues": 320,
"issue_closed_ratio": 0.979,
"closed_unmerged_prs": 182
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "98% of issues closed",
"points": 45.8,
"status": "partial",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 98
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "1316/1498 decided PRs merged",
"points": 33.6,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 1316,
"decided": 1498
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 4/23 approved changesets -- score normalized to 1",
"points": 1.5,
"status": "partial",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "moderate",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 50,
"inputs": {
"followers": 16,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "LTplus-AG",
"public_repos": 7,
"account_age_days": 829
},
"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": "16 followers of LTplus-AG",
"points": 8.8,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 16,
"login": "LTplus-AG"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "7 public repos, account ~2 yr old",
"points": 11.1,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 7
}
},
{
"code": "account_age_years",
"params": {
"years": 2
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"@ifc-lite/bcf",
"@ifc-lite/cli",
"@ifc-lite/data",
"@ifc-lite/diff",
"@ifc-lite/cache",
"@ifc-lite/clash",
"@ifc-lite/collab"
],
"ecosystems": "npm",
"any_deprecated": false,
"min_days_since_publish": 4
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "7 package(s) on npm",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 7,
"ecosystems": "npm"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 4 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 4
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "51 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 51
}
}
],
"max_points": 20
},
{
"key": "not_deprecated",
"name": "Not deprecated",
"detail": "active, not deprecated or yanked",
"points": 20,
"status": "met",
"details": [
{
"code": "package_not_deprecated",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
},
{
"key": "engineering",
"band": "good",
"name": "Engineering Quality",
"value": 77,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "moderate",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 68,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": false,
"has_linter_config": false,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "12 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 12
}
}
],
"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": null,
"points": 0,
"status": "missed",
"details": [],
"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": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"points": 20,
"status": "met",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "excellent",
"name": "Documentation",
"note": null,
"notes": [],
"value": 90,
"inputs": {
"topics": [
"3d-viewer",
"columnar",
"ifc",
"rust",
"webgpu",
"cli",
"ifc-parser",
"script-editor",
"bcf",
"ids",
"mcp",
"pointcloud",
"sdk"
],
"has_wiki": false,
"homepage": "https://ifclite.dev",
"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://ifclite.dev",
"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": "13 topics",
"points": 10,
"status": "met",
"details": [
{
"code": "topics_count",
"params": {
"count": 13
}
}
],
"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": "moderate",
"name": "Security",
"value": 50,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "at_risk",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): Signed-Releases. Remaining weights renormalized. High-Risk Jurisdiction Policy applies a 50% multiplier to Security posture and gives it an At risk ceiling of 49.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
},
{
"code": "jurisdiction_posture_adjustment",
"params": {
"cap": 49,
"pct": 50
}
}
],
"value": 37,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 17,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 1,
"scorecard_aggregate": 7.4,
"high_risk_jurisdiction_cap": 49,
"high_risk_jurisdiction_multiplier": 50,
"security_posture_after_multiplier": 37,
"security_posture_before_jurisdiction": 74
},
"components": [
{
"key": "binary_artifacts",
"name": "Binary-Artifacts",
"detail": "no binaries found in the repo",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "branch_protection",
"name": "Branch-Protection",
"detail": "branch protection is not maximal on development and all release branches",
"points": 3,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "30 out of 30 merged PRs checked by a CI test -- score normalized to 10",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "cii_best_practices",
"name": "CII-Best-Practices",
"detail": "no effort to earn an OpenSSF best practices badge detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 2.5
},
{
"key": "code_review",
"name": "Code-Review",
"detail": "Found 4/23 approved changesets -- score normalized to 1",
"points": 0.8,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 2 contributing companies or organizations -- score normalized to 6",
"points": 1.5,
"status": "partial",
"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 fuzzed",
"points": 5,
"status": "met",
"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 18 issue activity found in the last 90 days -- score normalized to 10",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "packaging",
"name": "Packaging",
"detail": "packaging workflow detected",
"points": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "pinned_dependencies",
"name": "Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 7",
"points": 3.5,
"status": "partial",
"details": [],
"max_points": 5
},
{
"key": "sast",
"name": "SAST",
"detail": "SAST tool is not run on all commits -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "security_policy",
"name": "Security-Policy",
"detail": "security policy file detected",
"points": 4.5,
"status": "partial",
"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": "GitHub workflow tokens follow principle of least privilege",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "vulnerabilities",
"name": "Vulnerabilities",
"detail": "5 existing vulnerabilities detected",
"points": 3.8,
"status": "partial",
"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 1306 resolved dependencies against OSV; 156 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": 1306
}
},
{
"code": "advisories_unassessed",
"params": {
"count": 156
}
},
{
"code": "advisories_repo_graph_caveat",
"params": {}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 100,
"inputs": {
"source": "osv",
"advisories": 5,
"affected_packages": 5,
"assessed_packages": 1306,
"unassessed_packages": 156,
"affected_by_severity": "low 1, unknown 4",
"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": 1306,
"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": "moderate",
"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": 50,
"inputs": {
"meaning": "self-published location evidence; not nationality or citizenship",
"red_flag": true,
"exposures": [
{
"role": "top_contributor",
"count": 1,
"country": "Russia"
}
],
"policy_countries": [
"Russia",
"Iran",
"North Korea"
],
"review_only_matches": 0,
"assessed_self_published_locations": 6
},
"components": [
{
"key": "policy_exposure_multiplier",
"name": "Policy exposure multiplier",
"detail": "Russia: top_contributor (1)",
"points": 50,
"status": "partial",
"details": [
{
"code": "jurisdiction_exposure",
"params": {
"role": "top_contributor",
"count": 1,
"country": "Russia"
}
}
],
"max_points": 100
}
]
}
],
"description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
},
{
"key": "ai_readiness",
"band": "good",
"name": "AI Readiness",
"value": 79,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "excellent",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 85,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 1,
"agent_instruction_files": [
".cursorrules",
"AGENTS.md",
"CLAUDE.md",
"apps/viewer/AGENTS.md",
"packages/collab-server/AGENTS.md",
"packages/collab/AGENTS.md",
"packages/geometry/AGENTS.md",
"rust/AGENTS.md"
],
"agent_instruction_max_bytes": 19343
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": ".cursorrules, AGENTS.md, CLAUDE.md, apps/viewer/AGENTS.md, packages/collab-server/AGENTS.md, packages/collab/AGENTS.md, packages/geometry/AGENTS.md, rust/AGENTS.md",
"points": 45,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".cursorrules, AGENTS.md, CLAUDE.md, apps/viewer/AGENTS.md, packages/collab-server/AGENTS.md, packages/collab/AGENTS.md, packages/geometry/AGENTS.md, rust/AGENTS.md"
}
}
],
"max_points": 45
},
{
"key": "machine_readable_docs_llms_txt",
"name": "Machine-readable docs (llms.txt)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "legible_commit_history",
"name": "Legible commit history",
"detail": "90 of 90 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 90,
"sampled": 90
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "good",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 75,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"Cargo.lock",
"pnpm-lock.yaml"
],
"has_dockerfile": true,
"typed_language": true,
"bootstrap_files": [],
"has_devcontainer": false,
"has_linter_config": false,
"typecheck_configs": [
"apps/viewer-embed/tsconfig.json",
"apps/viewer/src/lib/scripts/templates/tsconfig.json",
"apps/viewer/tsconfig.json",
"examples/babylonjs-viewer/tsconfig.json",
"examples/collab-demo/tsconfig.json",
"examples/threejs-collab/tsconfig.json",
"examples/threejs-viewer/tsconfig.json",
"packages/bcf/tsconfig.json",
"packages/cache/tsconfig.json",
"packages/clash/tsconfig.json",
"packages/cli/tsconfig.json",
"packages/codegen/tsconfig.json",
"packages/collab-server/tsconfig.json",
"packages/collab/tsconfig.json",
"packages/create-ifc-lite/tsconfig.json",
"packages/create/tsconfig.json",
"packages/data/tsconfig.json",
"packages/diff/tsconfig.json",
"packages/drawing-2d/tsconfig.json",
"packages/embed-protocol/tsconfig.json",
"packages/embed-sdk/tsconfig.json",
"packages/encoding/tsconfig.json",
"packages/export/tsconfig.json",
"packages/extensions/tsconfig.json",
"packages/geometry/tsconfig.json",
"packages/ids/tsconfig.json",
"packages/ifcx/tsconfig.json",
"packages/lens/tsconfig.json",
"packages/lists/tsconfig.json",
"packages/mcp/tsconfig.json",
"packages/merge/tsconfig.json",
"packages/mutations/tsconfig.json",
"packages/parser/tsconfig.json",
"packages/pointcloud/tsconfig.json",
"packages/query/tsconfig.json",
"packages/renderer/tsconfig.json",
"packages/sandbox/tsconfig.json",
"packages/sdk/tsconfig.json",
"packages/server-bin/tsconfig.json",
"packages/server-client/tsconfig.json",
"packages/solar/tsconfig.json",
"packages/spatial/tsconfig.json",
"packages/viewer/tsconfig.json",
"tests/tsconfig.json",
"tools/demo-kit/tsconfig.json",
"tsconfig.json"
],
"agent_commit_share": 0.02,
"toolchain_manifests": [
"Cargo.toml",
"apps/server/Cargo.toml",
"rust/clash/Cargo.toml",
"rust/core/Cargo.toml",
"rust/core/fuzz/Cargo.toml",
"rust/csg-thread-bench/Cargo.toml",
"rust/export/Cargo.toml",
"rust/ffi/Cargo.toml",
"rust/geometry/Cargo.toml",
"rust/geometry/fuzz/Cargo.toml",
"rust/processing/Cargo.toml",
"rust/python/Cargo.toml",
"rust/wasm-bindings/Cargo.toml"
],
"dependency_bot_commit_share": 0.1
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "Cargo.toml, apps/server/Cargo.toml, rust/clash/Cargo.toml (toolchain convention, no task runner)",
"points": 12.6,
"status": "partial",
"details": [
{
"code": "toolchain_convention",
"params": {
"files": "Cargo.toml, apps/server/Cargo.toml, rust/clash/Cargo.toml"
}
}
],
"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": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "apps/viewer-embed/tsconfig.json, apps/viewer/src/lib/scripts/templates/tsconfig.json, apps/viewer/tsconfig.json, examples/babylonjs-viewer/tsconfig.json, examples/collab-demo/tsconfig.json, examples/threejs-collab/tsconfig.json, examples/threejs-viewer/tsconfig.json, packages/bcf/tsconfig.json, packages/cache/tsconfig.json, packages/clash/tsconfig.json, packages/cli/tsconfig.json, packages/codegen/tsconfig.json, packages/collab-server/tsconfig.json, packages/collab/tsconfig.json, packages/create-ifc-lite/tsconfig.json, packages/create/tsconfig.json, packages/data/tsconfig.json, packages/diff/tsconfig.json, packages/drawing-2d/tsconfig.json, packages/embed-protocol/tsconfig.json, packages/embed-sdk/tsconfig.json, packages/encoding/tsconfig.json, packages/export/tsconfig.json, packages/extensions/tsconfig.json, packages/geometry/tsconfig.json, packages/ids/tsconfig.json, packages/ifcx/tsconfig.json, packages/lens/tsconfig.json, packages/lists/tsconfig.json, packages/mcp/tsconfig.json, packages/merge/tsconfig.json, packages/mutations/tsconfig.json, packages/parser/tsconfig.json, packages/pointcloud/tsconfig.json, packages/query/tsconfig.json, packages/renderer/tsconfig.json, packages/sandbox/tsconfig.json, packages/sdk/tsconfig.json, packages/server-bin/tsconfig.json, packages/server-client/tsconfig.json, packages/solar/tsconfig.json, packages/spatial/tsconfig.json, packages/viewer/tsconfig.json, tests/tsconfig.json, tools/demo-kit/tsconfig.json, tsconfig.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "apps/viewer-embed/tsconfig.json, apps/viewer/src/lib/scripts/templates/tsconfig.json, apps/viewer/tsconfig.json, examples/babylonjs-viewer/tsconfig.json, examples/collab-demo/tsconfig.json, examples/threejs-collab/tsconfig.json, examples/threejs-viewer/tsconfig.json, packages/bcf/tsconfig.json, packages/cache/tsconfig.json, packages/clash/tsconfig.json, packages/cli/tsconfig.json, packages/codegen/tsconfig.json, packages/collab-server/tsconfig.json, packages/collab/tsconfig.json, packages/create-ifc-lite/tsconfig.json, packages/create/tsconfig.json, packages/data/tsconfig.json, packages/diff/tsconfig.json, packages/drawing-2d/tsconfig.json, packages/embed-protocol/tsconfig.json, packages/embed-sdk/tsconfig.json, packages/encoding/tsconfig.json, packages/export/tsconfig.json, packages/extensions/tsconfig.json, packages/geometry/tsconfig.json, packages/ids/tsconfig.json, packages/ifcx/tsconfig.json, packages/lens/tsconfig.json, packages/lists/tsconfig.json, packages/mcp/tsconfig.json, packages/merge/tsconfig.json, packages/mutations/tsconfig.json, packages/parser/tsconfig.json, packages/pointcloud/tsconfig.json, packages/query/tsconfig.json, packages/renderer/tsconfig.json, packages/sandbox/tsconfig.json, packages/sdk/tsconfig.json, packages/server-bin/tsconfig.json, packages/server-client/tsconfig.json, packages/solar/tsconfig.json, packages/spatial/tsconfig.json, packages/viewer/tsconfig.json, tests/tsconfig.json, tools/demo-kit/tsconfig.json, tsconfig.json"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "Dockerfile, lockfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "Dockerfile, lockfile"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "2 of the last 100 commits agent-authored or agent-credited",
"points": 4,
"status": "partial",
"details": [
{
"code": "agent_authored_commits",
"params": {
"count": 2,
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "10 of the last 100 commits are automated dependency updates",
"points": 8,
"status": "met",
"details": [
{
"code": "dependency_bot_commits",
"params": {
"count": 10,
"sampled": 100
}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 7",
"points": 7,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "excellent",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 99,
"inputs": {
"primary_language": "TypeScript",
"largest_source_bytes": 1948298,
"source_files_sampled": 2574,
"oversized_source_files": 33
},
"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": "33/2574 source files over 60KB",
"points": 54.3,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 2574,
"oversized": 33
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "moderate",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 60,
"inputs": {
"example_dirs": [
"examples",
"samples"
],
"has_mcp_signal": true,
"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": 20,
"status": "met",
"details": [],
"max_points": 20
},
{
"key": "runnable_examples",
"name": "Runnable examples",
"detail": "examples, samples",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "examples, samples"
}
}
],
"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": [
"Could not fetch crates package 'ifc-lite-server' from its registry",
"deps.dev does not index npm:@ifc-lite/bcf@1.16.3; advisories assessed against the repository dependency graph instead"
],
"report_type": "repository",
"generated_at": "2026-07-21T23:23:18.645472Z",
"schema_version": "0.26.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/l/LTplus-AG/ifc-lite.svg",
"full_name": "LTplus-AG/ifc-lite",
"license_state": "standard",
"license_spdx": "MPL-2.0"
}