Raw JSON report machine-readable
{
"data": {
"repo": {
"topics": [],
"is_fork": false,
"size_kb": 3207,
"has_wiki": false,
"homepage": null,
"languages": {
"HTML": 75,
"Shell": 135,
"JavaScript": 218855
},
"pushed_at": "2026-07-22T17:46:22Z",
"created_at": "2018-07-31T00:30:19Z",
"owner_type": "Organization",
"updated_at": "2026-07-22T17:46:44Z",
"description": "Miscellaneous browser utilities",
"is_archived": false,
"is_disabled": false,
"license_spdx": "Apache-2.0",
"default_branch": "main",
"license_spdx_raw": "Apache-2.0",
"primary_language": "JavaScript",
"significant_languages": [
"JavaScript"
]
},
"owner": {
"blog": "http://www.krakenjs.com",
"name": "The kraken.js team",
"type": "Organization",
"login": "krakenjs",
"company": null,
"location": null,
"followers": 61,
"avatar_url": "https://avatars.githubusercontent.com/u/7001600?v=4",
"created_at": "2014-03-19T17:43:57Z",
"is_verified": null,
"public_repos": 109,
"account_age_days": 4517
},
"license": {
"state": "standard",
"spdx_id": "Apache-2.0",
"raw_spdx": "Apache-2.0",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "v2.10.2",
"kind": "patch",
"published_at": "2026-07-22T17:46:18Z"
},
{
"tag": "v2.10.1",
"kind": "patch",
"published_at": "2026-07-06T16:05:47Z"
},
{
"tag": "v2.10.0",
"kind": "minor",
"published_at": "2026-07-06T15:24:10Z"
},
{
"tag": "v2.10.0-alpha.4",
"kind": "prerelease",
"published_at": "2026-04-01T18:33:16Z"
},
{
"tag": "v2.10.0-alpha.3",
"kind": "prerelease",
"published_at": "2026-02-20T19:13:34Z"
},
{
"tag": "v2.10.0-alpha.2",
"kind": "prerelease",
"published_at": "2026-01-07T16:04:18Z"
},
{
"tag": "v2.10.0-alpha.1",
"kind": "prerelease",
"published_at": "2026-01-07T15:50:07Z"
},
{
"tag": "v2.10.0-alpha.0",
"kind": "prerelease",
"published_at": "2026-01-06T21:02:32Z"
},
{
"tag": "v2.9.3",
"kind": "patch",
"published_at": "2026-01-07T20:49:04Z"
},
{
"tag": "v2.9.2",
"kind": "patch",
"published_at": "2025-07-10T21:09:31Z"
},
{
"tag": "v2.9.1",
"kind": "patch",
"published_at": "2025-06-27T17:20:27Z"
},
{
"tag": "v2.9.0",
"kind": "minor",
"published_at": "2025-06-13T14:14:28Z"
},
{
"tag": "v2.8.0",
"kind": "minor",
"published_at": "2025-02-13T16:31:22Z"
},
{
"tag": "v2.7.0",
"kind": "minor",
"published_at": "2025-02-12T21:55:29Z"
},
{
"tag": "v2.6.0",
"kind": "minor",
"published_at": "2024-08-01T17:16:22Z"
},
{
"tag": "v2.5.0",
"kind": "minor",
"published_at": "2024-02-14T22:41:02Z"
},
{
"tag": "v2.4.0",
"kind": "minor",
"published_at": "2023-12-07T17:42:23Z"
},
{
"tag": "v2.3.1",
"kind": "patch",
"published_at": "2023-12-04T23:10:13Z"
},
{
"tag": "v2.3.0",
"kind": "minor",
"published_at": "2023-10-26T17:39:14Z"
},
{
"tag": "v2.2.2",
"kind": "patch",
"published_at": "2022-10-27T21:30:06Z"
},
{
"tag": "v2.2.1",
"kind": "patch",
"published_at": "2022-10-26T14:43:59Z"
},
{
"tag": "v2.2.0",
"kind": "minor",
"published_at": "2022-10-13T21:14:51Z"
},
{
"tag": "v2.1.2",
"kind": "patch",
"published_at": "2022-05-24T22:47:46Z"
},
{
"tag": "v2.1.1",
"kind": "patch",
"published_at": "2022-05-24T22:07:19Z"
},
{
"tag": "v2.1.0",
"kind": "minor",
"published_at": "2022-05-24T21:54:53Z"
},
{
"tag": "v2.0.2",
"kind": "patch",
"published_at": "2022-04-09T22:46:21Z"
},
{
"tag": "v2.0.1",
"kind": "patch",
"published_at": "2022-03-01T15:01:19Z"
},
{
"tag": "v2.0.0",
"kind": "major",
"published_at": "2022-02-28T22:31:20Z"
},
{
"tag": "v1.0.190",
"kind": "patch",
"published_at": "2022-02-04T15:40:45Z"
},
{
"tag": "v1.0.189",
"kind": "patch",
"published_at": "2022-01-31T19:11:57Z"
},
{
"tag": "v1.0.188",
"kind": "patch",
"published_at": "2022-01-26T15:57:34Z"
},
{
"tag": "v1.0.187",
"kind": "patch",
"published_at": "2022-01-26T00:53:58Z"
},
{
"tag": "v1.0.186",
"kind": "patch",
"published_at": "2022-01-19T16:25:39Z"
},
{
"tag": "v1.0.185",
"kind": "patch",
"published_at": "2022-01-18T23:53:25Z"
},
{
"tag": "v1.0.184",
"kind": "patch",
"published_at": "2022-01-14T15:24:00Z"
},
{
"tag": "v1.0.183",
"kind": "patch",
"published_at": "2022-01-10T21:56:09Z"
},
{
"tag": "v1.0.182",
"kind": "patch",
"published_at": "2022-01-10T21:41:35Z"
},
{
"tag": "v1.0.181",
"kind": "patch",
"published_at": "2022-01-10T18:51:40Z"
},
{
"tag": "v1.0.180",
"kind": "patch",
"published_at": "2022-01-10T18:44:51Z"
},
{
"tag": "v1.0.179",
"kind": "patch",
"published_at": "2022-01-06T18:18:01Z"
},
{
"tag": "v1.0.178",
"kind": "patch",
"published_at": "2022-01-05T22:32:38Z"
},
{
"tag": "v1.0.177",
"kind": "patch",
"published_at": "2021-09-22T20:51:58Z"
},
{
"tag": "v1.0.176",
"kind": "patch",
"published_at": "2021-09-22T16:22:13Z"
},
{
"tag": "v1.0.175",
"kind": "patch",
"published_at": "2021-09-15T20:12:29Z"
},
{
"tag": "v1.0.174",
"kind": "patch",
"published_at": "2021-09-15T00:18:06Z"
},
{
"tag": "v1.0.173",
"kind": "patch",
"published_at": "2021-07-19T19:49:59Z"
},
{
"tag": "v1.0.172",
"kind": "patch",
"published_at": "2021-07-19T19:34:43Z"
},
{
"tag": "v1.0.171",
"kind": "patch",
"published_at": "2021-07-15T15:39:02Z"
},
{
"tag": "v1.0.170",
"kind": "patch",
"published_at": "2021-05-24T16:03:19Z"
},
{
"tag": "v1.0.169",
"kind": "patch",
"published_at": "2021-05-18T18:21:45Z"
},
{
"tag": "v1.0.168",
"kind": "patch",
"published_at": "2021-05-17T21:12:34Z"
},
{
"tag": "v1.0.167",
"kind": "patch",
"published_at": "2021-05-13T22:16:33Z"
},
{
"tag": "v1.0.166",
"kind": "patch",
"published_at": "2021-05-13T19:36:27Z"
},
{
"tag": "v1.0.165",
"kind": "patch",
"published_at": "2021-04-22T23:08:03Z"
},
{
"tag": "v1.0.164",
"kind": "patch",
"published_at": "2021-04-15T20:40:33Z"
},
{
"tag": "v1.0.163",
"kind": "patch",
"published_at": "2021-03-29T13:01:53Z"
},
{
"tag": "v1.0.162",
"kind": "patch",
"published_at": "2021-03-26T01:32:43Z"
},
{
"tag": "v1.0.161",
"kind": "patch",
"published_at": "2021-03-23T21:28:54Z"
},
{
"tag": "v1.0.160",
"kind": "patch",
"published_at": "2021-03-16T20:05:24Z"
},
{
"tag": "v1.0.159",
"kind": "patch",
"published_at": "2021-03-09T00:24:25Z"
},
{
"tag": "v1.0.158",
"kind": "patch",
"published_at": "2021-03-08T18:22:11Z"
},
{
"tag": "v1.0.157",
"kind": "patch",
"published_at": "2021-03-05T20:02:24Z"
},
{
"tag": "v1.0.156",
"kind": "patch",
"published_at": "2021-03-05T15:06:40Z"
},
{
"tag": "v1.0.155",
"kind": "patch",
"published_at": "2021-03-04T23:16:25Z"
},
{
"tag": "v1.0.154",
"kind": "patch",
"published_at": "2021-03-04T23:04:49Z"
},
{
"tag": "v1.0.153",
"kind": "patch",
"published_at": "2021-03-04T15:42:06Z"
},
{
"tag": "v1.0.152",
"kind": "patch",
"published_at": "2021-02-09T23:14:24Z"
},
{
"tag": "v1.0.151",
"kind": "patch",
"published_at": "2021-02-09T22:53:37Z"
},
{
"tag": "v1.0.150",
"kind": "patch",
"published_at": "2021-01-26T21:12:25Z"
},
{
"tag": "v1.0.149",
"kind": "patch",
"published_at": "2021-01-15T23:47:33Z"
},
{
"tag": "v1.0.148",
"kind": "patch",
"published_at": "2020-12-19T02:00:03Z"
},
{
"tag": "v1.0.147",
"kind": "patch",
"published_at": "2020-12-17T01:54:18Z"
},
{
"tag": "v1.0.146",
"kind": "patch",
"published_at": "2020-12-09T01:56:22Z"
},
{
"tag": "v1.0.145",
"kind": "patch",
"published_at": "2020-11-29T03:17:03Z"
},
{
"tag": "v1.0.144",
"kind": "patch",
"published_at": "2020-11-05T06:21:35Z"
},
{
"tag": "v1.0.143",
"kind": "patch",
"published_at": "2020-11-04T23:53:02Z"
},
{
"tag": "v1.0.142",
"kind": "patch",
"published_at": "2020-10-12T21:49:39Z"
},
{
"tag": "v1.0.141",
"kind": "patch",
"published_at": "2020-10-05T17:49:42Z"
},
{
"tag": "v1.0.140",
"kind": "patch",
"published_at": "2020-10-02T22:10:21Z"
},
{
"tag": "v1.0.139",
"kind": "patch",
"published_at": "2020-09-30T18:02:35Z"
},
{
"tag": "v1.0.138",
"kind": "patch",
"published_at": "2020-09-30T02:09:37Z"
},
{
"tag": "v1.0.137",
"kind": "patch",
"published_at": "2020-09-30T01:58:25Z"
},
{
"tag": "v1.0.136",
"kind": "patch",
"published_at": "2020-09-30T01:55:32Z"
},
{
"tag": "v1.0.135",
"kind": "patch",
"published_at": "2020-09-30T00:47:20Z"
},
{
"tag": "v1.0.134",
"kind": "patch",
"published_at": "2020-09-29T20:53:34Z"
},
{
"tag": "v1.0.133",
"kind": "patch",
"published_at": "2020-09-28T23:24:20Z"
},
{
"tag": "v1.0.132",
"kind": "patch",
"published_at": "2020-09-28T22:04:04Z"
},
{
"tag": "v1.0.131",
"kind": "patch",
"published_at": "2020-09-28T21:42:51Z"
},
{
"tag": "v1.0.130",
"kind": "patch",
"published_at": "2020-09-28T21:14:22Z"
},
{
"tag": "v1.0.129",
"kind": "patch",
"published_at": "2020-09-15T00:35:38Z"
},
{
"tag": "v1.0.128",
"kind": "patch",
"published_at": "2020-09-15T00:30:31Z"
},
{
"tag": "v1.0.127",
"kind": "patch",
"published_at": "2020-09-14T18:20:50Z"
},
{
"tag": "v1.0.126",
"kind": "patch",
"published_at": "2020-09-10T20:56:05Z"
},
{
"tag": "v1.0.125",
"kind": "patch",
"published_at": "2020-09-10T01:58:19Z"
},
{
"tag": "v1.0.124",
"kind": "patch",
"published_at": "2020-08-27T20:03:08Z"
},
{
"tag": "v1.0.123",
"kind": "patch",
"published_at": "2020-08-03T00:06:50Z"
},
{
"tag": "v1.0.122",
"kind": "patch",
"published_at": "2020-07-18T19:31:07Z"
},
{
"tag": "v1.0.121",
"kind": "patch",
"published_at": "2020-05-28T02:00:01Z"
},
{
"tag": "v1.0.120",
"kind": "patch",
"published_at": "2020-03-26T01:51:03Z"
},
{
"tag": "v1.0.119",
"kind": "patch",
"published_at": "2020-03-26T01:35:05Z"
}
],
"recent_commits": [
{
"oid": "5ab65f2394ff18e943e2cbada8add87eddab6289",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.10.2",
"author_name": "imbrian",
"author_login": "imbrian",
"committed_at": "2026-07-22T17:46:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "de3e164e3595d9d9d8974c3dfd90af39048c3f63",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "imbrian",
"author_login": "imbrian",
"committed_at": "2026-07-22T17:46:16Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a1e423e55e0eb3f9d2768f744cdfc2e69d4dfea0",
"body": "* fix: add access check for localstorage\n\n* fix: lint\n\n* fix: track fallback and allow recovery to localStorage",
"is_bot": false,
"headline": "fix: add access check for localstorage (#132)",
"author_name": "Brian Tedder",
"author_login": "imbrian",
"committed_at": "2026-07-22T17:40:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0bec322830c606fba73b4ac4f6e0b2e93feab8e4",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.10.1",
"author_name": "nikrom17",
"author_login": "nikrom17",
"committed_at": "2026-07-06T16:05:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5a7cb85bb2aa8d8357c81990e55d7f99dd5ceac7",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.10.0",
"author_name": "nikrom17",
"author_login": "nikrom17",
"committed_at": "2026-07-06T15:24:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "414cfc83a3b60d029d4117e0795b7de4a0f24bd0",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "nikrom17",
"author_login": "nikrom17",
"committed_at": "2026-07-06T15:24:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b5a22dca4e942bb6afeece89d71a812cde86c4fa",
"body": null,
"is_bot": false,
"headline": "feat: add optional isBfcacheEnabled flag to watchElementForClose (#131)",
"author_name": "Nikolaus Roman",
"author_login": "nikrom17",
"committed_at": "2026-07-06T15:16:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "efa7b4de80a501cad28aee591f196f69dc577aa1",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.9.3",
"author_name": "nikrom17",
"author_login": "nikrom17",
"committed_at": "2026-01-07T20:49:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5a618e1a6e4ec9327c8ee9b1ce29210f084dfb59",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "nikrom17",
"author_login": "nikrom17",
"committed_at": "2026-01-07T20:49:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "55e5fcb6c9ed8e8ea0aecd1c3f8190debab85d4f",
"body": null,
"is_bot": false,
"headline": "Conditionally add unload event listener (enable bfcache) (#127)",
"author_name": "Nikolaus Roman",
"author_login": "nikrom17",
"committed_at": "2026-01-07T20:40:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "157ac956ec50b49ef982ab1924dbaa4d209ab9d8",
"body": null,
"is_bot": false,
"headline": "fix: update npm token (#128)",
"author_name": "Greg Jopa",
"author_login": "gregjopa",
"committed_at": "2026-01-06T21:04:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0a66e82a13d9a66fdebfc45782766e7929d038e7",
"body": null,
"is_bot": false,
"headline": "add support for publishing alpha branches to npm (#126)",
"author_name": "Nikolaus Roman",
"author_login": "nikrom17",
"committed_at": "2026-01-06T19:33:35Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e8c640dfff53c40e89a93ed41f65196a593e7ecc",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.9.2",
"author_name": "imbrian",
"author_login": "imbrian",
"committed_at": "2025-07-10T21:09:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "803daeadb6e3a79b344fadfa339c725ecb8b9c16",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "imbrian",
"author_login": "imbrian",
"committed_at": "2025-07-10T21:09:29Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "20fba544dc99e43ca4066581a01c6681594ca709",
"body": "* fix: add pagehide listener to popup\n\n* fix: remove console logs\n\n* fix: include beforeunload listener\n\n* fix: typo",
"is_bot": false,
"headline": "fix: add pagehide listener to close popup (#123)",
"author_name": "Brian Tedder",
"author_login": "imbrian",
"committed_at": "2025-07-10T21:03:44Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0a6b775f89be07a8a27c18531b9525f5fa9a5d29",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.9.1",
"author_name": "nikrom17",
"author_login": "nikrom17",
"committed_at": "2025-06-27T17:20:27Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f83ced72d45eb8dd414ba1ea0413fd11ec8ac3af",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "nikrom17",
"author_login": "nikrom17",
"committed_at": "2025-06-27T17:20:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f42136c3e6d9746e6a21834fb28aace743d54779",
"body": "This reverts commit 0fb7ffa8adbfe9caa808afc712399512a57cb5e2.",
"is_bot": false,
"headline": "Revert \"feat(device): update webview detection (#121)\" (#122)",
"author_name": "Nikolaus Roman",
"author_login": "nikrom17",
"committed_at": "2025-06-27T17:15:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e3fd051f699a6c5aa90560480fc6f79bae9c2adf",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.9.0",
"author_name": "mnicpt",
"author_login": "mnicpt",
"committed_at": "2025-06-13T14:14:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bc8a2b6dc0cebfa5d606e0f3be6a9b510272585b",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "mnicpt",
"author_login": "mnicpt",
"committed_at": "2025-06-13T14:14:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0fb7ffa8adbfe9caa808afc712399512a57cb5e2",
"body": "* feat(device): update webview detection\n\n* fix(tests): webview detection\n\n* fix(tests): webview detection\n\n* fix(tests): webview detection\n\n* fix(lint): space",
"is_bot": false,
"headline": "feat(device): update webview detection (#121)",
"author_name": "Steven Mask",
"author_login": "mnicpt",
"committed_at": "2025-06-13T13:47:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "31d57820c8fc4bd7c26d6c76c4d741de1c30f93c",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.8.0",
"author_name": "ravishekhar",
"author_login": "ravishekhar",
"committed_at": "2025-02-13T16:31:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5eb5105fc8980fabe10298e84088b6449eac1ba0",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "ravishekhar",
"author_login": "ravishekhar",
"committed_at": "2025-02-13T16:31:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "48f5dc1aacc99edbabea4359fafdb93e6435fc0a",
"body": "* fix: disable popups for firefox on android\r\n\r\n* fix: ignore hermes parser from type check\r\n\r\n* ci: check in dist folder\r\n\r\n* chore(release): 2.7.0\r\n\r\n* Revert \"chore(release): 2.7.0\"\r\n\r\nThis reverts commit e31976a28332b023662fb334b15fc9e2be033b95.\r\n\r\n* Revert \"ci: check in dist folder\"\r\n\r\nThis reverts commit aec5c0104995762ed56921e0e8b06a3ecceca10f.\r\n\r\n* fix: update version to avoid conflicts with existing 2.7.0",
"is_bot": false,
"headline": "fix: disable popups for firefox on android (#120)",
"author_name": "Ravi Shekhar",
"author_login": "ravishekhar",
"committed_at": "2025-02-13T16:17:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0817042f9a46906227a34438b347de27ea1987fa",
"body": "…(#119)",
"is_bot": false,
"headline": "feat: update the meta webview detection logic to remove version info …",
"author_name": "Ravi Shekhar",
"author_login": "ravishekhar",
"committed_at": "2024-08-23T14:21:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a59d39d0d465bf34740230a3469c973ce1e5bf24",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.6.0",
"author_name": "ravishekhar",
"author_login": "ravishekhar",
"committed_at": "2024-08-01T17:16:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "39f3c4b5ce26391f95d540e88f2d6566d4786639",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "ravishekhar",
"author_login": "ravishekhar",
"committed_at": "2024-08-01T17:16:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d9c3900e2e8dc8870d6c6a36cbedf17985077577",
"body": null,
"is_bot": false,
"headline": "feat: add device detection for meta in app browser (#117)",
"author_name": "Ravi Shekhar",
"author_login": "ravishekhar",
"committed_at": "2024-08-01T17:12:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a802a6781a96dc9bc35bc5f4c8182d08142ae049",
"body": "…ype installation (#118)\n\n* fix: add flow types to repo\r\n\r\n* fix: remove flow type install step from build scripts",
"is_bot": false,
"headline": "Add flow type definitions to the repo to avoid failures during flow t…",
"author_name": "Ravi Shekhar",
"author_login": "ravishekhar",
"committed_at": "2024-08-01T16:59:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "449034e63bca445708b62d9e08f7190a44ba4169",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.5.0",
"author_name": "wsbrunson",
"author_login": "wsbrunson",
"committed_at": "2024-02-14T22:41:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6ab5b4485c89959c18a67ddcfd04d2ec3cb10586",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "wsbrunson",
"author_login": "wsbrunson",
"committed_at": "2024-02-14T22:41:00Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0033c211e16ecd5ea4b17861798da0a8f5475bcf",
"body": "* add isIpadOs device check\r\n\r\n* chore: add hermes-estree to .flowconfig\r\n\r\n* feat: add iPadOs device check",
"is_bot": false,
"headline": "feat: Add isIpadOs device check (#114)",
"author_name": "Mervin Choun",
"author_login": "mchoun",
"committed_at": "2024-02-08T17:03:15Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d0c0868c996aea92d1ad9a6c8662da7a2c200b5b",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.4.0",
"author_name": "wsbrunson",
"author_login": "wsbrunson",
"committed_at": "2023-12-07T17:42:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f9e3d511e46e504b685cf8ccaf20f18c93929ede",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "wsbrunson",
"author_login": "wsbrunson",
"committed_at": "2023-12-07T17:42:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "84a30ac9c6706980f8d4f121266e7d9f4605e6d3",
"body": null,
"is_bot": false,
"headline": "feat: add option to set session id (#113)",
"author_name": "Shane Brunson",
"author_login": "wsbrunson",
"committed_at": "2023-12-07T17:40:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b33668f226673a2c3d0abf65ffd47d0a20bba4b4",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.3.1",
"author_name": "wsbrunson",
"author_login": "wsbrunson",
"committed_at": "2023-12-04T23:10:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6ed54bdf9035606d4c42cca5fe5dc93582be195b",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.3.0",
"author_name": "ravishekhar",
"author_login": "ravishekhar",
"committed_at": "2023-10-26T17:39:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "016945523b77262d06ef597c261d7b076c328a47",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "ravishekhar",
"author_login": "ravishekhar",
"committed_at": "2023-10-26T17:39:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1de54bea5e66bb1fc4f6044f489d0ef0dcf25c7e",
"body": "* feat: add isWebView check to supportsPopups\r\n\r\n* feat: update test description",
"is_bot": false,
"headline": "[DTPPCPSDK-1334] feat: add isWebView check to supportsPopups (#112)",
"author_name": "xuanwan05",
"author_login": "xuanwan05",
"committed_at": "2023-10-26T17:28:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6dfe2134888682b745330887f03ae8504470e2e7",
"body": "* feat: added url-sanitization function\r\n\r\n* chore: fixed regex const\r\n\r\n* chore: added constants and updated code\r\n\r\n* chore: added tests, fixed build issues\r\n\r\n* chore: removed modified dist files",
"is_bot": false,
"headline": "feat: added url-sanitization function (#110)",
"author_name": "prashantjagasia",
"author_login": "prashantjagasia",
"committed_at": "2023-10-17T18:02:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6b054d83d2be457dd5c652549ee9f3c4a5a4b42d",
"body": null,
"is_bot": false,
"headline": "chore: remove token from publish action (#108)",
"author_name": "dtjones404",
"author_login": "dtjones404",
"committed_at": "2023-03-28T15:54:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "de56fb977468c09212dcacda936d453322b28e00",
"body": null,
"is_bot": false,
"headline": "chore(docs): update github actions badge url (#106)",
"author_name": "dtjones404",
"author_login": "dtjones404",
"committed_at": "2022-12-20T16:01:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4d3a9cc858ba1a245c6b473d5f0a5919a7f0f7ef",
"body": null,
"is_bot": false,
"headline": "ci: use node16 in actions",
"author_name": "Westin Wrzesinski",
"author_login": "westeezy",
"committed_at": "2022-11-23T18:42:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3724ba95101250e638d294ab2d95a8c4e442bf75",
"body": "Co-authored-by: dtjones404 <69579929+dtjones404@users.noreply.github.com>",
"is_bot": false,
"headline": "feat: upgrade to grumbler-scripts@8 (#105)",
"author_name": "Westin Wrzesinski",
"author_login": "westeezy",
"committed_at": "2022-11-17T21:19:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "139aec99650ece3d614e1c0d89f3be269b315e58",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.2.2",
"author_name": "gregjopa",
"author_login": "gregjopa",
"committed_at": "2022-10-27T21:30:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8f851339fbf3580908c50bff5e5bac67620fe876",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "gregjopa",
"author_login": "gregjopa",
"committed_at": "2022-10-27T21:30:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b25fd50220c2b3eb7047f7fe1d7347f159187102",
"body": "* chore: make device names comments\r\n\r\n* chore: fix test description",
"is_bot": false,
"headline": "chore: make device names comments (#104)",
"author_name": "Spencer Sablan",
"author_login": "spencersablan",
"committed_at": "2022-10-26T20:15:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8cb9d7d0a0e723fe0b2711a90e7be726c584c7b3",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.2.1",
"author_name": "remotevision",
"author_login": "remotevision",
"committed_at": "2022-10-26T14:43:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9df2e393da4b2e52b5832bfc58ddff1997cf5e73",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "remotevision",
"author_login": "remotevision",
"committed_at": "2022-10-26T14:43:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c051ee5138b57067f4f8e433111e865442ee3606",
"body": null,
"is_bot": false,
"headline": "perf: make 'touchstart' event listener passive (#103)",
"author_name": "Jesse Shawl",
"author_login": "jshawl",
"committed_at": "2022-10-26T14:37:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d263492e693073dd911ab89407d83346a5df6b43",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.2.0",
"author_name": "westeezy",
"author_login": "westeezy",
"committed_at": "2022-10-13T21:14:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b8db06a6ab3c3cf6d719c413bd93c3f770a8f206",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "westeezy",
"author_login": "westeezy",
"committed_at": "2022-10-13T21:14:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7a970972babdba385248eb4cdf1d36922f5d39dc",
"body": "* fix: add new iphone models to screenheights.js\n\n* fix: add iphone 14\n\nCo-authored-by: Steven Mask <mnicpt@gmail.com>\n\n* fix: add iphone 14 pro max to screenheights.js\n\n* fix: fix 1x safari browser overlap on iphone 14 pro\n\n* fix: add iphone 12 mini specs\n\n* fix: remove extra data for minis\n\nCo-authored-by: Steven Mask <mnicpt@gmail.com>",
"is_bot": false,
"headline": "feat: add new iPhone models to screenHeights.js (#102)",
"author_name": "Spencer Sablan",
"author_login": "spencersablan",
"committed_at": "2022-10-13T21:05:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c25579bd26ad7b80e064125277a67d1989bf429e",
"body": null,
"is_bot": false,
"headline": "chore: use prettier for code formatting (#99)",
"author_name": "Westin Wrzesinski",
"author_login": "westeezy",
"committed_at": "2022-06-27T20:48:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4dc8255dcbf3115ba5722879e055cc60c845757a",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.1.2",
"author_name": "mnicpt",
"author_login": "mnicpt",
"committed_at": "2022-05-24T22:47:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3c32145232b60c551e438569caf2a590fe947fc1",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "mnicpt",
"author_login": "mnicpt",
"committed_at": "2022-05-24T22:47:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1d4ef3c4887d36f141e5efda6d6b7fdf99e989ef",
"body": null,
"is_bot": false,
"headline": "fix: isCrossSiteTrackingEnabled",
"author_name": "Steve Mask",
"author_login": null,
"committed_at": "2022-05-24T22:40:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b5a8cf8aabe7e6c66ff3f922b0be65c3f8cb9e12",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.1.1",
"author_name": "mnicpt",
"author_login": "mnicpt",
"committed_at": "2022-05-24T22:07:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b6b3771022821e062d8cbdbe38eb4b93a9a1ae61",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "mnicpt",
"author_login": "mnicpt",
"committed_at": "2022-05-24T22:07:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "79a99f225574d64fe7fc7a0a449b8828bbf0fce3",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.1.0",
"author_name": "Steve Mask",
"author_login": null,
"committed_at": "2022-05-24T21:54:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d90aedde47178bb11427c5d91e4a3564b0c9a4f9",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "Steve Mask",
"author_login": null,
"committed_at": "2022-05-24T21:54:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2c9b08e89400316846c3c5c802268640ff483808",
"body": "* isCrossSiteTrackingEnabled\r\n\r\n* feat: isCrossSiteTrackingEnabled\r\n\r\n* feat: isCrossSiteTrackingEnabled\r\n\r\n* test: tracking test changes\r\n\r\nCo-authored-by: Steve Mask <smask@paypal.com>",
"is_bot": false,
"headline": "feat: isCrossSiteTrackingEnabled (#100)",
"author_name": "Steven Mask",
"author_login": "mnicpt",
"committed_at": "2022-05-24T21:53:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ba30237c1e5e041003ec17befbcf430559c30699",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.0.2",
"author_name": "westeezy",
"author_login": "westeezy",
"committed_at": "2022-04-09T22:46:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5136ba33601d6936cbc1290c2d7c5258972d0269",
"body": null,
"is_bot": false,
"headline": "chore: move devDependencies to @krakenjs scope (#97)",
"author_name": "Westin Wrzesinski",
"author_login": "westeezy",
"committed_at": "2022-04-09T22:43:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9face9e15a5d53cca5b588e1a35281b787549661",
"body": null,
"is_bot": false,
"headline": "ci: update codecov action to v2 (#96)",
"author_name": "Westin Wrzesinski",
"author_login": "westeezy",
"committed_at": "2022-03-30T16:40:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "679d32e66e3696cf84a5255263e76c85341f49e1",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.0.1",
"author_name": "westeezy",
"author_login": "westeezy",
"committed_at": "2022-03-01T15:01:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6e570e5388d6ad752f1ff88f0b3d6fb39f44f08d",
"body": null,
"is_bot": false,
"headline": "chore: update zalgo-promise to v2 (#90)",
"author_name": "Westin Wrzesinski",
"author_login": "westeezy",
"committed_at": "2022-03-01T14:53:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "62d1591b3e01df60185e01cebe008c0082ab72dd",
"body": null,
"is_bot": false,
"headline": "chore(release): 2.0.0",
"author_name": "westeezy",
"author_login": "westeezy",
"committed_at": "2022-02-28T22:31:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "812a43372db842b363b861a16495a4b637a710a9",
"body": null,
"is_bot": false,
"headline": "ci: check in dist folder",
"author_name": "westeezy",
"author_login": "westeezy",
"committed_at": "2022-02-28T22:31:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a52081f69610dd1251a8577ef15646e741efc14c",
"body": null,
"is_bot": false,
"headline": "chore!: move to krakenjs scope (#89)",
"author_name": "Westin Wrzesinski",
"author_login": "westeezy",
"committed_at": "2022-02-28T22:26:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2dd1f9ec794ed52877a7a06a6f6a3225a3ca9b85",
"body": null,
"is_bot": false,
"headline": "chore: update gh action to use main branch",
"author_name": "Westin Wrzesinski",
"author_login": "westeezy",
"committed_at": "2022-02-27T18:45:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "232385a3537d5d9fbb012cedd12d19f0d99a35f3",
"body": null,
"is_bot": false,
"headline": "chore: commitlint and standard version setup (#87)",
"author_name": "Westin Wrzesinski",
"author_login": "westeezy",
"committed_at": "2022-02-27T18:44:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ed260c68a6a0280bff829a2a231f614f25905e98",
"body": "…e-isElement",
"is_bot": false,
"headline": "Merge branch 'main' of https://github.com/krakenjs/belter into improv…",
"author_name": "Shane Brunson",
"author_login": "wsbrunson",
"committed_at": "2022-02-22T20:21:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6c2073f70edb2aa561cb07dcc98b46ee12ed8f92",
"body": "This reverts commit 186017361251760cd5f8e35016a64bf872de6d5a.",
"is_bot": false,
"headline": "Revert \"use new kraken org prefix for cross-domain-utils (#86)\" (#88)",
"author_name": "Shane Brunson",
"author_login": "wsbrunson",
"committed_at": "2022-02-22T19:45:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "186017361251760cd5f8e35016a64bf872de6d5a",
"body": null,
"is_bot": false,
"headline": "use new kraken org prefix for cross-domain-utils (#86)",
"author_name": "Shane Brunson",
"author_login": "wsbrunson",
"committed_at": "2022-02-18T21:32:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b5510c7cfb3f82ea9ee3de22816a413c7d39d3f8",
"body": null,
"is_bot": false,
"headline": "1.0.190",
"author_name": "Shane Brunson",
"author_login": "wsbrunson",
"committed_at": "2022-02-04T15:40:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a2679d99458b69dd8e4edd98c6db562b45e02dbe",
"body": null,
"is_bot": false,
"headline": "Dist",
"author_name": "Shane Brunson",
"author_login": "wsbrunson",
"committed_at": "2022-02-04T15:40:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1d3fcda179e7ce0bffa2a7b9b507727eed214f1e",
"body": "…e-isElement",
"is_bot": false,
"headline": "Merge branch 'main' of https://github.com/krakenjs/belter into improv…",
"author_name": "Shane Brunson",
"author_login": "wsbrunson",
"committed_at": "2022-02-04T15:37:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ea210995d604c94854889b1ff39bb8e357af1531",
"body": "…rializeArgs (#85)\n\nMoved isElement from dom.js -> utils.js to prevent a cyclical dependency\r\nExplored many other options to prevent this but unforunately none of\r\nthem were resonable without re-architecting most of belter",
"is_bot": false,
"headline": "move isElement to utils.js; improve isElement checking; use it for se…",
"author_name": "Shane Brunson",
"author_login": "wsbrunson",
"committed_at": "2022-02-04T15:32:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a3e1b440ab2b761f9f291204e76f2842a85033fc",
"body": "…rializeArgs\n\nMoved isElement from dom.js -> utils.js to prevent a cyclical dependency\nExplored many other options to prevent this but unforunately none of\nthem were resonable without re-architecting most of belter",
"is_bot": false,
"headline": "move isElement to utils.js; improve isElement checking; use it for se…",
"author_name": "Shane Brunson",
"author_login": "wsbrunson",
"committed_at": "2022-02-03T22:32:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4aed2b24c4e30abf340f3de9d1026bbabbdccf5f",
"body": null,
"is_bot": false,
"headline": "1.0.189",
"author_name": "Steve Mask",
"author_login": null,
"committed_at": "2022-01-31T19:11:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1eaa072c31988f2dd693c1c2d0e968213b3ad6c4",
"body": null,
"is_bot": false,
"headline": "Dist",
"author_name": "Steve Mask",
"author_login": null,
"committed_at": "2022-01-31T19:11:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7b1b78ae426bc78f8fff1690058d4d2aa11fcda6",
"body": "Co-authored-by: Steve Mask <smask@paypal.com>",
"is_bot": false,
"headline": "Add Use Cases for SFVC (#84)",
"author_name": "Steven Mask",
"author_login": "mnicpt",
"committed_at": "2022-01-31T19:08:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fca05539fae73a466af1d013c551931c8a9dcec0",
"body": null,
"is_bot": false,
"headline": "1.0.188",
"author_name": "Liz Martinez",
"author_login": "elizabethmv",
"committed_at": "2022-01-26T15:57:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ecbc8c359d70ae72d0356f09782b8a7113374a1b",
"body": null,
"is_bot": false,
"headline": "Dist",
"author_name": "Liz Martinez",
"author_login": "elizabethmv",
"committed_at": "2022-01-26T15:57:34Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7c7b9a2fe1f11d47735d08b7ab26e52f536a531e",
"body": null,
"is_bot": false,
"headline": "Remove pageYOffset check (#83)",
"author_name": "Liz",
"author_login": "elizabethmv",
"committed_at": "2022-01-26T15:23:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4dc28fa804ed2241eb4ab671f6c66d49e9c27b05",
"body": null,
"is_bot": false,
"headline": "1.0.187",
"author_name": "Greg Jopa",
"author_login": "gregjopa",
"committed_at": "2022-01-26T00:53:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "37b0306dd498f64225812aea1f2d5c8a99ed0c0c",
"body": null,
"is_bot": false,
"headline": "Dist",
"author_name": "Greg Jopa",
"author_login": "gregjopa",
"committed_at": "2022-01-26T00:53:58Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d62a4ad14e854e12eb2e487cd33b8614ad307d47",
"body": null,
"is_bot": false,
"headline": "rename master to main (#82)",
"author_name": "Westin Wrzesinski",
"author_login": "westeezy",
"committed_at": "2022-01-25T00:13:40Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9b2c26a90489797e92999fcfff845507b21c4702",
"body": null,
"is_bot": false,
"headline": "iOS Offset for SFVC",
"author_name": "Steve Mask",
"author_login": null,
"committed_at": "2022-01-21T18:25:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "33ed0a27cd7312ea917ab4da2fcd81bbb454a372",
"body": "Co-authored-by: Steve Mask <smask@paypal.com>",
"is_bot": false,
"headline": "fix screen detection (#81)",
"author_name": "Steven Mask",
"author_login": "mnicpt",
"committed_at": "2022-01-21T15:33:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "7dff372c18ed5131257e82080c32adbfc1b631bc",
"body": null,
"is_bot": false,
"headline": "1.0.186",
"author_name": "Greg Jopa",
"author_login": "gregjopa",
"committed_at": "2022-01-19T16:25:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "36865505765baaec72f5db2eb21adf38d0ee19ef",
"body": null,
"is_bot": false,
"headline": "Dist",
"author_name": "Greg Jopa",
"author_login": "gregjopa",
"committed_at": "2022-01-19T16:25:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "10055210a79437bc7a412e30f22524ab53d83b93",
"body": null,
"is_bot": false,
"headline": "Update memoize to support server-side rendering (#80)",
"author_name": "Greg Jopa",
"author_login": "gregjopa",
"committed_at": "2022-01-19T16:17:48Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d8da948c0e3b0ff62aa895c546fb29744cf84538",
"body": null,
"is_bot": false,
"headline": "1.0.185",
"author_name": "Daniel Brain",
"author_login": "bluepnume",
"committed_at": "2022-01-18T23:53:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ae13280ce57eb47a16a55c878ac7006810fc2c3b",
"body": null,
"is_bot": false,
"headline": "Dist",
"author_name": "Daniel Brain",
"author_login": "bluepnume",
"committed_at": "2022-01-18T23:53:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8cdce06ae79653264c47ae63d3412854bad6c56f",
"body": "* fix tests\r\n\r\n* fix merge\r\n\r\n* remove only\r\n\r\nCo-authored-by: Steve Mask <smask@paypal.com>",
"is_bot": false,
"headline": "Fix SFVC Tests (#79)",
"author_name": "Steven Mask",
"author_login": "mnicpt",
"committed_at": "2022-01-18T23:51:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "be060c9c375f84ab2768053ba668eafc776f2e45",
"body": null,
"is_bot": false,
"headline": "Allow memoize calls to go through for unserializable args (#78)",
"author_name": "Daniel Brain",
"author_login": null,
"committed_at": "2022-01-18T23:51:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b6a2b490af0be05210124fc0baf6a9618c476e8a",
"body": "This reverts commit 8478818208f6eac74cb535adff17880d197e85fe.",
"is_bot": false,
"headline": "Revert \"isSFVC Fix (#77)\"",
"author_name": "Daniel Brain",
"author_login": "bluepnume",
"committed_at": "2022-01-18T20:36:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8bf26b7ab94cd97a3724d65ace72aebbbab195b7",
"body": null,
"is_bot": false,
"headline": "1.0.184",
"author_name": "Steve Mask",
"author_login": null,
"committed_at": "2022-01-14T15:24:00Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 100,
"commits_last_year": 12,
"latest_release_at": "2026-07-22T17:46:18Z",
"latest_release_tag": "v2.10.2",
"releases_from_tags": true,
"days_since_last_push": 9,
"active_weeks_last_year": 3,
"days_since_latest_release": 9,
"mean_days_between_releases": 41.9
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": true,
"health_percentage": 75,
"has_issue_template": false,
"has_code_of_conduct": true,
"has_pull_request_template": false
},
"ecosystem": {
"packages": [
{
"name": "@krakenjs/belter",
"exists": true,
"license": "Apache-2.0",
"keywords": [
"browser",
"utilities",
"tools"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/@krakenjs/belter",
"is_deprecated": false,
"latest_version": "2.10.2",
"repository_url": "https://github.com/krakenjs/belter",
"versions_count": 28,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 8,
"monthly_downloads": 44597,
"first_published_at": "2022-02-28T22:27:29.836000Z",
"latest_published_at": "2026-07-22T17:46:27.762000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 9
}
]
},
"popularity": {
"forks": 33,
"stars": 17,
"watchers": 9,
"fork_history": {
"days": [
{
"date": "2018-10-03",
"count": 1
},
{
"date": "2019-01-17",
"count": 1
},
{
"date": "2019-05-15",
"count": 1
},
{
"date": "2019-09-03",
"count": 1
},
{
"date": "2020-01-08",
"count": 1
},
{
"date": "2020-04-06",
"count": 1
},
{
"date": "2020-08-18",
"count": 1
},
{
"date": "2020-10-03",
"count": 1
},
{
"date": "2020-10-06",
"count": 1
},
{
"date": "2020-10-08",
"count": 1
},
{
"date": "2020-10-12",
"count": 1
},
{
"date": "2020-10-15",
"count": 2
},
{
"date": "2020-11-16",
"count": 1
},
{
"date": "2021-04-29",
"count": 1
},
{
"date": "2021-05-10",
"count": 1
},
{
"date": "2021-05-13",
"count": 1
},
{
"date": "2021-05-25",
"count": 1
},
{
"date": "2021-05-26",
"count": 1
},
{
"date": "2021-08-09",
"count": 1
},
{
"date": "2021-08-25",
"count": 1
},
{
"date": "2021-09-15",
"count": 1
},
{
"date": "2021-11-03",
"count": 1
},
{
"date": "2022-01-06",
"count": 1
},
{
"date": "2022-03-10",
"count": 1
},
{
"date": "2022-09-27",
"count": 1
},
{
"date": "2022-09-29",
"count": 1
},
{
"date": "2023-08-21",
"count": 1
},
{
"date": "2023-10-23",
"count": 1
},
{
"date": "2024-01-24",
"count": 1
},
{
"date": "2024-04-19",
"count": 1
},
{
"date": "2025-08-22",
"count": 1
},
{
"date": "2025-11-17",
"count": 1
}
],
"complete": true,
"collected": 33,
"total_forks": 33
},
"star_history": null,
"open_issues_and_prs": 0
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [],
"has_llms_txt": false,
"has_dockerfile": false,
"has_mcp_signal": false,
"bootstrap_files": [],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [],
"toolchain_manifests": [],
"largest_source_bytes": 123920,
"source_files_sampled": 120,
"oversized_source_files": 1,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [
"package.json"
],
"advisories": {
"error": null,
"scope": "published_package",
"source": "osv",
"findings": [],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {},
"advisory_count": 0,
"affected_count": 0,
"assessed_count": 3,
"malicious_count": 0,
"assessed_package": "npm:@krakenjs/belter@2.10.2",
"unassessed_count": 0,
"direct_affected_count": 0
},
"ecosystems": [
"npm"
],
"dependencies": [
{
"name": "@krakenjs/cross-domain-safe-weakmap",
"manifest": "package.json",
"ecosystem": "npm",
"version_constraint": "^2.0.2"
},
{
"name": "@krakenjs/cross-domain-utils",
"manifest": "package.json",
"ecosystem": "npm",
"version_constraint": "^3.0.2"
},
{
"name": "@krakenjs/zalgo-promise",
"manifest": "package.json",
"ecosystem": "npm",
"version_constraint": "^2.0.0"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "@krakenjs/cross-domain-safe-weakmap",
"direct": true,
"version": "^2.0.2",
"ecosystem": "npm"
},
{
"name": "@krakenjs/cross-domain-utils",
"direct": true,
"version": "^3.0.2",
"ecosystem": "npm"
},
{
"name": "@krakenjs/zalgo-promise",
"direct": true,
"version": "^2.0.0",
"ecosystem": "npm"
},
{
"name": "@bunchtogether/vite-plugin-flow",
"direct": false,
"version": "^1.0.2",
"ecosystem": "npm"
},
{
"name": "@commitlint/cli",
"direct": false,
"version": "^16.2.1",
"ecosystem": "npm"
},
{
"name": "@commitlint/config-conventional",
"direct": false,
"version": "^16.2.1",
"ecosystem": "npm"
},
{
"name": "@krakenjs/grumbler-scripts",
"direct": false,
"version": "^8.0.5",
"ecosystem": "npm"
},
{
"name": "babel-plugin-transform-es2015-modules-commonjs",
"direct": false,
"version": "6.26.2",
"ecosystem": "npm"
},
{
"name": "cross-env",
"direct": false,
"version": "^7.0.3",
"ecosystem": "npm"
},
{
"name": "flow-bin",
"direct": false,
"version": "0.155.0",
"ecosystem": "npm"
},
{
"name": "flow-typed",
"direct": false,
"version": "^3.8.0",
"ecosystem": "npm"
},
{
"name": "husky",
"direct": false,
"version": "^7.0.4",
"ecosystem": "npm"
},
{
"name": "jsdom",
"direct": false,
"version": "^22.1.0",
"ecosystem": "npm"
},
{
"name": "lint-staged",
"direct": false,
"version": "^12.4.0",
"ecosystem": "npm"
},
{
"name": "mocha",
"direct": false,
"version": "^4.1.0",
"ecosystem": "npm"
},
{
"name": "prettier",
"direct": false,
"version": "^2.6.2",
"ecosystem": "npm"
},
{
"name": "standard-version",
"direct": false,
"version": "^9.3.2",
"ecosystem": "npm"
},
{
"name": "vite",
"direct": false,
"version": "^4.5.0",
"ecosystem": "npm"
},
{
"name": "vitest",
"direct": false,
"version": "^0.34.6",
"ecosystem": "npm"
}
],
"collected": true,
"truncated": false,
"total_count": 19,
"direct_count": 3,
"indirect_count": 16
}
},
"maintainership": {
"issues": {
"open_prs": 0,
"merged_prs": 91,
"open_issues": 0,
"closed_ratio": null,
"closed_issues": 0,
"closed_unmerged_prs": 30
},
"bus_factor": 3,
"bot_contributors": 0,
"top_contributors": [
{
"type": "User",
"login": "bluepnume",
"commits": 90,
"avatar_url": "https://avatars.githubusercontent.com/u/1219075?v=4"
},
{
"type": "User",
"login": "mnicpt",
"commits": 26,
"avatar_url": "https://avatars.githubusercontent.com/u/1324812?v=4"
},
{
"type": "User",
"login": "gregjopa",
"commits": 18,
"avatar_url": "https://avatars.githubusercontent.com/u/534034?v=4"
},
{
"type": "User",
"login": "westeezy",
"commits": 17,
"avatar_url": "https://avatars.githubusercontent.com/u/802901?v=4"
},
{
"type": "User",
"login": "wsbrunson",
"commits": 14,
"avatar_url": "https://avatars.githubusercontent.com/u/3527966?v=4"
},
{
"type": "User",
"login": "nikrom17",
"commits": 11,
"avatar_url": "https://avatars.githubusercontent.com/u/32575209?v=4"
},
{
"type": "User",
"login": "ravishekhar",
"commits": 10,
"avatar_url": "https://avatars.githubusercontent.com/u/5966302?v=4"
},
{
"type": "User",
"login": "anthonykhoa",
"commits": 7,
"avatar_url": "https://avatars.githubusercontent.com/u/45890848?v=4"
},
{
"type": "User",
"login": "imbrian",
"commits": 6,
"avatar_url": "https://avatars.githubusercontent.com/u/6571474?v=4"
},
{
"type": "User",
"login": "leogedler",
"commits": 3,
"avatar_url": "https://avatars.githubusercontent.com/u/5726810?v=4"
}
],
"contributors_sampled": 31,
"top_contributor_share": 0.386
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"main.yml",
"publish.yml"
],
"has_docs_dir": false,
"linter_configs": [
".eslintrc.js"
],
"has_editorconfig": true,
"has_linter_config": true,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [],
"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": 0,
"reason": "branch protection not enabled on development/release branches",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 5,
"reason": "7 out of 12 merged PRs checked by a CI test -- score normalized to 5",
"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": 3,
"reason": "Found 11/30 approved changesets -- score normalized to 3",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 10,
"reason": "project has 5 contributing companies or organizations",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
},
{
"name": "Dangerous-Workflow",
"score": 10,
"reason": "no dangerous workflow patterns detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
},
{
"name": "Dependency-Update-Tool",
"score": 0,
"reason": "no update tool detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
},
{
"name": "Fuzzing",
"score": 0,
"reason": "project is not fuzzed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
},
{
"name": "License",
"score": 10,
"reason": "license file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
},
{
"name": "Maintained",
"score": 5,
"reason": "7 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 5",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#maintained"
},
{
"name": "Packaging",
"score": null,
"reason": "packaging workflow not detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
},
{
"name": "Pinned-Dependencies",
"score": 0,
"reason": "dependency not pinned by hash detected -- score normalized to 0",
"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": 10,
"reason": "security policy file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
},
{
"name": "Signed-Releases",
"score": null,
"reason": "no releases found",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
},
{
"name": "Token-Permissions",
"score": 0,
"reason": "detected GitHub workflow tokens with excessive permissions",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 10,
"reason": "0 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "5ab65f2394ff18e943e2cbada8add87eddab6289",
"ran_at": "2026-08-01T03:56:58Z",
"aggregate_score": 4.6,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": true,
"has_dependabot_config": false
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-23T00:03:27Z",
"oldest_open_prs": [],
"last_merged_pr_at": "2026-07-22T17:40:55Z",
"ci_last_conclusion": "FAILURE",
"oldest_open_issues": []
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/krakenjs/belter",
"host": "github.com",
"name": "belter",
"owner": "krakenjs"
},
"metrics": {
"overall": {
"key": "overall",
"band": "good",
"name": "Overall health",
"note": "The weighted overall 64 is calibrated to 73 on the published index scale (record calibration 2026-08-02).",
"notes": [
{
"code": "overall_calibration",
"params": {
"raw": 64,
"calibrated": 73,
"calibration": "2026-08-02"
}
}
],
"value": 73,
"inputs": {
"security": 57,
"vitality": 63,
"community": 64,
"governance": 74,
"calibration": "2026-08-02",
"engineering": 64,
"ai_readiness": 39,
"weighted_overall_raw": 64
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "moderate",
"name": "Vitality",
"value": 63,
"weight": 0.21,
"metrics": [
{
"key": "development_activity",
"band": "weak",
"name": "Development activity",
"note": null,
"notes": [],
"value": 46,
"inputs": {
"commits_last_year": 12,
"human_commit_share": 1,
"days_since_last_push": 9,
"active_weeks_last_year": 3
},
"components": [
{
"key": "push_recency",
"name": "Push recency",
"detail": "last push 9 days ago",
"points": 28.8,
"status": "partial",
"details": [
{
"code": "push_recency",
"params": {
"days": 9
}
}
],
"max_points": 36
},
{
"key": "commit_cadence",
"name": "Commit cadence",
"detail": "3/52 weeks with commits",
"points": 2.1,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 3
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "12 commits in the last year",
"points": 10,
"status": "partial",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 12
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "7 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 5",
"points": 5,
"status": "partial",
"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": 88,
"inputs": {
"releases_count": 100,
"latest_release_tag": "v2.10.2",
"releases_from_tags": true,
"days_since_latest_release": 9,
"mean_days_between_releases": 41.9
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "100 version tags (no GitHub releases)",
"points": 16.2,
"status": "partial",
"details": [
{
"code": "version_tags_no_releases",
"params": {
"count": 100
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 9 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 9
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~41.9 days",
"points": 27,
"status": "met",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 41.9
}
}
],
"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": "exceptional",
"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": 11,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 11 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 11
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "moderate",
"name": "Community & Adoption",
"value": 64,
"weight": 0.17,
"metrics": [
{
"key": "popularity",
"band": "weak",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 37,
"inputs": {
"forks": 33,
"stars": 17,
"watchers": 9,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "17 stars",
"points": 19.5,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 17
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "33 forks",
"points": 12.5,
"status": "partial",
"details": [
{
"code": "forks",
"params": {
"count": 33
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "9 watchers",
"points": 5,
"status": "partial",
"details": [
{
"code": "watchers",
"params": {
"count": 9
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "excellent",
"name": "Community health",
"note": null,
"notes": [],
"value": 85,
"inputs": {
"has_readme": true,
"has_license": true,
"readme_badges": null,
"has_contributing": true,
"has_issue_template": false,
"has_code_of_conduct": true,
"readme_badge_services": [],
"has_pull_request_template": false
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 22.5,
"status": "met",
"details": [],
"max_points": 22.5
},
{
"key": "license",
"name": "License",
"detail": "recognized license (Apache-2.0)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "Apache-2.0"
}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 18,
"status": "met",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 13.5,
"status": "met",
"details": [],
"max_points": 13.5
},
{
"key": "issue_template",
"name": "Issue template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.2
},
{
"key": "pr_template",
"name": "PR template",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.3
}
]
},
{
"key": "ecosystem_adoption",
"band": "good",
"name": "Ecosystem adoption (downloads)",
"note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"registry_dependents"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 78,
"inputs": {
"packages": [
"@krakenjs/belter"
],
"dependents": null,
"ecosystems": "npm",
"total_downloads": null,
"monthly_downloads": 44597
},
"components": [
{
"key": "monthly_downloads",
"name": "Monthly downloads",
"detail": "44,597 downloads/month across npm",
"points": 62,
"status": "partial",
"details": [
{
"code": "downloads_monthly",
"params": {
"count": 44597,
"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": "good",
"name": "Sustainability & Governance",
"value": 74,
"weight": 0.23,
"metrics": [
{
"key": "maintainer_resilience",
"band": "good",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 73,
"inputs": {
"bus_factor": 3,
"contributors_sampled": 31,
"top_contributor_share": 0.386
},
"components": [
{
"key": "bus_factor",
"name": "Bus factor",
"detail": "3 contributor(s) cover half of all commits",
"points": 36,
"status": "partial",
"details": [
{
"code": "bus_factor",
"params": {
"count": 3
}
}
],
"max_points": 54
},
{
"key": "commit_distribution",
"name": "Commit distribution",
"detail": "top contributor authored 39% of commits",
"points": 13.8,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 39
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "31 contributors",
"points": 13.5,
"status": "met",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 31
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 5 contributing companies or organizations",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "moderate",
"name": "Issue & PR responsiveness",
"note": "Excluded from scoring (no data or not applicable): Issue resolution, Newcomer PR acceptance. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"issue_resolution",
"newcomer_pr_acceptance"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 60,
"inputs": {
"merged_prs": 91,
"open_issues": 0,
"closed_issues": 0,
"prs_merged_7d": null,
"prs_decided_7d": null,
"prs_merged_30d": null,
"prs_decided_30d": null,
"issue_closed_ratio": null,
"closed_unmerged_prs": 30,
"first_time_authors_30d": null,
"first_time_prs_merged_30d": null,
"first_time_prs_decided_30d": null
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "no issues or no data",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_issues_or_data",
"params": {}
}
],
"max_points": 42
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "91/121 decided PRs merged",
"points": 22.6,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 91,
"decided": 121
}
}
],
"max_points": 30
},
{
"key": "newcomer_pr_acceptance",
"name": "Newcomer PR acceptance",
"detail": "no first-time contributor's PR decided in 30d",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_newcomer_prs",
"params": {
"days": 30
}
}
],
"max_points": 13
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 11/30 approved changesets -- score normalized to 3",
"points": 4.5,
"status": "partial",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "good",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 68,
"inputs": {
"followers": 61,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "krakenjs",
"public_repos": 109,
"account_age_days": 4517
},
"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": "61 followers of krakenjs",
"points": 12.9,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 61,
"login": "krakenjs"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "109 public repos, account ~12 yr old",
"points": 25,
"status": "met",
"details": [
{
"code": "public_repos",
"params": {
"count": 109
}
},
{
"code": "account_age_years",
"params": {
"years": 12
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "exceptional",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"@krakenjs/belter"
],
"ecosystems": "npm",
"any_deprecated": false,
"min_days_since_publish": 9
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "1 package(s) on npm",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 1,
"ecosystems": "npm"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 9 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 9
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "28 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 28
}
}
],
"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": "moderate",
"name": "Engineering Quality",
"value": 64,
"weight": 0.19,
"metrics": [
{
"key": "engineering_practices",
"band": "excellent",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 80,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": true,
"has_linter_config": true,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "2 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 2
}
}
],
"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": ".eslintrc.js",
"points": 16,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".eslintrc.js"
}
}
],
"max_points": 16
},
{
"key": "pre_commit_hooks",
"name": "Pre-commit hooks",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 9.6
},
{
"key": "editorconfig",
"name": ".editorconfig",
"detail": null,
"points": 6.4,
"status": "met",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "7 out of 12 merged PRs checked by a CI test -- score normalized to 5",
"points": 10,
"status": "partial",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "weak",
"name": "Documentation",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"topics": [],
"has_wiki": false,
"homepage": null,
"has_readme": true,
"has_docs_dir": false,
"has_description": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 30,
"status": "met",
"details": [],
"max_points": 30
},
{
"key": "documentation_directory",
"name": "Documentation directory",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": null,
"points": 0,
"status": "missed",
"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": null,
"points": 0,
"status": "missed",
"details": [],
"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": 57,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "weak",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): Packaging, Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"packaging",
"signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 46,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 16,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 2,
"scorecard_aggregate": 4.6
},
"components": [
{
"key": "binary_artifacts",
"name": "Binary-Artifacts",
"detail": "no binaries found in the repo",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "branch_protection",
"name": "Branch-Protection",
"detail": "branch protection not enabled on development/release branches",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "7 out of 12 merged PRs checked by a CI test -- score normalized to 5",
"points": 1.2,
"status": "partial",
"details": [],
"max_points": 2.5
},
{
"key": "cii_best_practices",
"name": "CII-Best-Practices",
"detail": "no effort to earn an OpenSSF best practices badge detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 2.5
},
{
"key": "code_review",
"name": "Code-Review",
"detail": "Found 11/30 approved changesets -- score normalized to 3",
"points": 2.2,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 5 contributing companies or organizations",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "dangerous_workflow",
"name": "Dangerous-Workflow",
"detail": "no dangerous workflow patterns detected",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "dependency_update_tool",
"name": "Dependency-Update-Tool",
"detail": "no update tool detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "fuzzing",
"name": "Fuzzing",
"detail": "project is not fuzzed",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "license",
"name": "License",
"detail": "license file detected",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "7 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 5",
"points": 3.8,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "packaging",
"name": "Packaging",
"detail": "packaging workflow not detected",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 5
},
{
"key": "pinned_dependencies",
"name": "Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 0",
"points": 0,
"status": "missed",
"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": 5,
"status": "met",
"details": [],
"max_points": 5
},
{
"key": "signed_releases",
"name": "Signed-Releases",
"detail": "no releases found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 7.5
},
{
"key": "token_permissions",
"name": "Token-Permissions",
"detail": "detected GitHub workflow tokens with excessive permissions",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "vulnerabilities",
"name": "Vulnerabilities",
"detail": "0 existing vulnerabilities detected",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "exceptional",
"name": "Dependency advisories",
"note": "Excluded from scoring (no data or not applicable): No advisories left outstanding. Remaining weights renormalized. Matched the npm:@krakenjs/belter@2.10.2 runtime dependency closure — what installing the published package pulls in — 3 packages. Reachability is not analyzed.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"no_advisories_left_outstanding"
]
}
},
{
"code": "weights_renormalized",
"params": {}
},
{
"code": "advisories_scope_published",
"params": {
"package": "npm:@krakenjs/belter@2.10.2",
"assessed": 3
}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 100,
"inputs": {
"source": "osv",
"advisories": 0,
"affected_packages": 0,
"assessed_packages": 3,
"unassessed_packages": 0,
"affected_by_severity": "none",
"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": "no indirect dependency carries a known advisory",
"points": 25,
"status": "met",
"details": [
{
"code": "no_indirect_advisories",
"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": "exceptional",
"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": 3,
"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": "exceptional",
"name": "High-Risk Jurisdiction Exposure",
"note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
"notes": [
{
"code": "jurisdiction_evidence_limits",
"params": {}
}
],
"value": 100,
"inputs": {
"meaning": "self-published location evidence; not nationality or citizenship",
"red_flag": false,
"exposures": [],
"policy_countries": [
"Russia",
"Iran",
"North Korea"
],
"commit_weight_rule": {
"min_commits": 50,
"min_commit_share": 0.1
},
"review_only_matches": 0,
"below_threshold_exposures": [],
"assessed_self_published_locations": 9
},
"components": [
{
"key": "policy_exposure_multiplier",
"name": "Policy exposure multiplier",
"detail": "no confirmed policy-scope location match",
"points": 100,
"status": "met",
"details": [
{
"code": "jurisdiction_no_match",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
},
{
"key": "ai_readiness",
"band": "weak",
"name": "AI Readiness",
"value": 39,
"weight": 0.04,
"metrics": [
{
"key": "ai_agent_context",
"band": "weak",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 0.84,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "no CLAUDE.md / AGENTS.md / editor rules",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_instructions",
"params": {}
}
],
"max_points": 45
},
{
"key": "machine_readable_docs_llms_txt",
"name": "Machine-readable docs (llms.txt)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "legible_commit_history",
"name": "Legible commit history",
"detail": "84 of 100 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 84,
"sampled": 100
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "at_risk",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 33,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [],
"has_dockerfile": false,
"typed_language": false,
"bootstrap_files": [],
"has_devcontainer": false,
"has_linter_config": true,
"typecheck_configs": [],
"agent_commit_share": 0,
"toolchain_manifests": [],
"dependency_bot_commit_share": 0
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 18
},
{
"key": "automated_tests",
"name": "Automated tests",
"detail": null,
"points": 22,
"status": "met",
"details": [],
"max_points": 22
},
{
"key": "lint_format_config",
"name": "Lint / format config",
"detail": ".eslintrc.js",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": ".eslintrc.js"
}
}
],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "no agent-authored commits among the last 100",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_authored_commits",
"params": {
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "no automated dependency updates observed",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_dependency_automation",
"params": {}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "dependency not pinned by hash detected -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "moderate",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 54,
"inputs": {
"primary_language": "JavaScript",
"largest_source_bytes": 123920,
"source_files_sampled": 120,
"oversized_source_files": 1
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "JavaScript without a type-check config",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_typecheck_config_language",
"params": {
"language": "JavaScript"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "1/120 source files over 60KB",
"points": 54.5,
"status": "partial",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 120,
"oversized": 1
}
}
],
"max_points": 55
}
]
}
],
"description": "How well is the repo equipped to be developed and maintained with AI coding agents? Carries a deliberately small weight: agent tooling is a real maintenance signal, but its absence must never gate the top of the scale (calibration saturates at raw 91, so 100/100 remains reachable with AI Readiness at zero)."
}
],
"classification": {
"labels": [
"library"
],
"scores": {
"library": 6
},
"primary": "library",
"evidence": [
{
"tier": "distribution",
"label": "library",
"source": "registry:npm",
"weight": 6
}
],
"artifacts": [],
"confidence": "medium",
"host_extension": false,
"runs_as_process": false,
"consumed_by_code": true
},
"metrics_version": "2.3.1"
},
"warnings": [
"Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
],
"report_type": "repository",
"generated_at": "2026-08-01T03:57:18.678159Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/k/krakenjs/belter.svg",
"full_name": "krakenjs/belter",
"license_state": "standard",
"license_spdx": "Apache-2.0"
}