原始 JSON 报告 机器可读
{
"data": {
"repo": {
"topics": [
"redux",
"kotlin",
"kotlin-multiplatform",
"android",
"ios",
"kotlin-native"
],
"is_fork": false,
"size_kb": 6634,
"has_wiki": true,
"homepage": "https://reduxkotlin.org",
"languages": {
"CSS": 11000,
"Shell": 6715,
"Swift": 11572,
"Kotlin": 871171,
"JavaScript": 3501,
"TypeScript": 12366,
"Go Template": 3138
},
"pushed_at": "2026-07-25T10:37:30Z",
"created_at": "2019-05-24T18:53:36Z",
"owner_type": "Organization",
"updated_at": "2026-07-24T14:30:36Z",
"description": "Redux implementation for Kotlin (supports multiplatform JVM, native, JS, WASM)",
"is_archived": false,
"is_disabled": false,
"license_spdx": "MIT",
"default_branch": "master",
"license_spdx_raw": "MIT",
"primary_language": "Kotlin",
"significant_languages": [
"Kotlin"
]
},
"owner": {
"blog": "https://www.reduxkotlin.org",
"name": "Redux-Kotlin",
"type": "Organization",
"login": "reduxkotlin",
"company": null,
"location": null,
"followers": 20,
"avatar_url": "https://avatars.githubusercontent.com/u/50994890?v=4",
"created_at": "2019-05-24T14:39:31Z",
"is_verified": null,
"public_repos": 12,
"account_age_days": 2619
},
"license": {
"state": "standard",
"spdx_id": "MIT",
"raw_spdx": "MIT",
"file_present": true,
"scorecard_found": true,
"profile_has_license": true
},
"activity": {
"releases": [
{
"tag": "1.0.0-alpha06",
"kind": "prerelease",
"published_at": "2026-07-18T00:05:12Z"
},
{
"tag": "1.0.0-alpha05",
"kind": "prerelease",
"published_at": "2026-07-16T04:38:33Z"
},
{
"tag": "1.0.0-alpha04",
"kind": "prerelease",
"published_at": "2026-07-02T14:58:49Z"
},
{
"tag": "1.0.0-alpha03",
"kind": "prerelease",
"published_at": "2026-07-01T14:19:03Z"
},
{
"tag": "1.0.0-alpha02",
"kind": "prerelease",
"published_at": "2026-06-19T23:28:14Z"
},
{
"tag": "1.0.0-alpha01",
"kind": "prerelease",
"published_at": "2026-06-17T08:46:28Z"
},
{
"tag": "0.6.1",
"kind": "patch",
"published_at": "2023-01-29T22:37:17Z"
},
{
"tag": "0.6.0",
"kind": "minor",
"published_at": "2023-01-29T21:55:16Z"
},
{
"tag": "v0.5.5",
"kind": "patch",
"published_at": "2020-08-17T18:03:06Z"
},
{
"tag": "v0.5.3",
"kind": "patch",
"published_at": "2020-07-06T14:31:35Z"
},
{
"tag": "v0.5.1",
"kind": "patch",
"published_at": "2020-06-13T21:43:18Z"
}
],
"recent_commits": [
{
"oid": "db403ea8100cbc9f210346029652944907346ad6",
"body": null,
"is_bot": false,
"headline": "feat(compose): narrow SelectorStore to selection and dispatch",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-18T00:01:22Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ad1a978c7eb6b7d322ab9623819ac7bc0dd4f5a3",
"body": null,
"is_bot": false,
"headline": "docs(compose): recommend selector store bindings",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-16T04:18:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2ddef69083599d08727413b2f65a699f964a2f35",
"body": null,
"is_bot": false,
"headline": "docs(agent): sync module map fragments",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-16T04:18:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5fb7b72bcf28785f7cd3b3a37c4047f986173c43",
"body": null,
"is_bot": false,
"headline": "feat(compose): add root-scoped selector facade",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-16T04:18:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "03f967a2e723f2988f35bcc63307fa1610deca2e",
"body": null,
"is_bot": false,
"headline": "docs(agent): map selector subscription APIs",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-16T04:18:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b128dbb5167d014c652675fa790d62aea7a377e1",
"body": null,
"is_bot": false,
"headline": "feat(granular): share selector subscriptions",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-16T04:18:33Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0cc3c9704ba2f9f94b6f530528d52bd8f8b7c598",
"body": null,
"is_bot": false,
"headline": "docs: remove notification context design record",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-15T20:12:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "185a9f9e56376bb6431ee89d07394678a0315b58",
"body": null,
"is_bot": false,
"headline": "fix(concurrent): preserve FIFO notification delivery",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-15T20:12:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4ddcc8ae8bec8177eff6101166aae0ab1d766706",
"body": null,
"is_bot": true,
"headline": "fix(deps): update docusaurus monorepo to v3.10.2",
"author_name": "renovate[bot]",
"author_login": "renovate[bot]",
"committed_at": "2026-07-15T15:13:45Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9c5fcd18ae8e5f5fb35597c1df1186700b8ec731",
"body": "`rk devtools serve --ui` on a clean Ubuntu box printed a 40-line\nUnsatisfiedLinkError ending in \"libXtst.so.6: cannot open shared object file\".\nThe app-image bundles a JRE but cannot bundle X11 client libraries — AWT loads\nthose by SONAME through the system linker — so the bundled-runtime promise\nco\n[…]\ne.\n\nVerified on a bare Ubuntu 24.04 host: with libXtst.so.6 hidden the message\nappears (exit 1); with it installed the GUI starts.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(devtools-cli): tell the user which X11 libs the GUI needs on Linux",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-13T20:32:48Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "43a5740cb1a348cf1ecf7df735bb1a5d699d9a89",
"body": "`rk devtools serve` on a taken port printed a stack trace ending in\n\"IllegalStateException: Can't overwrite cause\", never the intended\n\"port N already in use\" message.\n\nTwo faults in the same catch. Ktor CIO reports a failed bind by cancelling the\nengine job, so start() throws a CancellationExceptio\n[…]\nsame way.\n\nScan the cause chain for BindException first, and only treat a non-cancellation\nIllegalStateException as a usage error.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(devtools-cli): report a port conflict instead of crashing in serve",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-13T20:32:48Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "c78380af2b07f9efb13e71b87d292c25b5f55c83",
"body": "`rk devtools serve --ui` from a Homebrew install died in dlopen:\n\n Library not loaded: @rpath/libjvm.dylib\n Referenced from: .../runtime/Contents/Home/lib/libjawt.dylib\n Reason: tried: '.../Home/lib/./libjvm.dylib' (no such file)\n\nHomebrew's Keg#fix_dynamic_linkage rewrites every dylib'\n[…]\nned app-image launches the GUI; and a real `brew reinstall` of alpha04 with\nthe patched formula now runs `rk devtools serve --ui`.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(cli): make the bundled JRE survive Homebrew's dylib relocation",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-13T20:32:48Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "d68b6d50f9962442ffbd9ac4f0f4bd2367191357",
"body": "…eady released)\n\n1.0.0-alpha03 was released 2026-06-23 (already on Maven Central) before this\nsemantics work existed, so consumers must pin 1.0.0-alpha04+ to get the\nsemantics dump / golden gate. Correct the coordinate in README, api-map, the\nsnapshot reference doc, and the design spec/plan.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(snapshot): pin consumer coordinate to 1.0.0-alpha04 (alpha03 alr…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "de8d62adb58467a2f666d1c5c27c5225a85f9c4a",
"body": "…reference\n\nPublic API of redux-kotlin-snapshot changed (SemanticsDump node tree +\ntoText/toCanonicalJson; SemanticsDiffer internal). Update the api-map surface\nsummary and the snapshot reference doc (flags table + semantics dump/golden\nsection) so agent knowledge tracks the new capability. Acknowledges the\nAPI-change tripwire.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(agent): record snapshot semantics surface in api-map + snapshot …",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "ba2d0398f50bfe75b1fab60d23e3700900876079",
"body": "…nternalize SemanticsDiffer; test gaps\n\nBatch --update-semantics required --golden-dir, which also switched on the\npixel verify and could hit the final mismatch gate, contradicting the spec\n(exit 0, no gating) and diverging from the single-shot path. Skip verify and\nthe failure gate when updateSeman\n[…]\ntch --update-semantics without --golden-dir exits 2,\nbatch --update-semantics exits 0 and writes the semantics golden, and a real\naggregation check for renderMsTotal instead of a >= 0 smoke assertion.",
"is_bot": false,
"headline": "fix(snapshot): batch --update-semantics exits 0 without pixel gate; i…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "13769664ad89e6d452e6346ea73293d69c12ad8a",
"body": null,
"is_bot": false,
"headline": "docs(snapshot): fix semantics-sidecar trigger + gate example in README",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b988e3f029eb1d2f6c480b3998196229dec54384",
"body": "…coordinate; apiDump",
"is_bot": false,
"headline": "docs(snapshot): document semantics flags, schemas, and Maven Central …",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cbdd2aa1aa3643a06ade42926ed3bd111fa25ce7",
"body": null,
"is_bot": false,
"headline": "style: drop trailing semicolons flagged by ktlint",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "eed166a5c61b97f2a6ac1fbee83f88e19aa6cfc5",
"body": null,
"is_bot": false,
"headline": "style: apply ktlint formatting to DashboardGeneratorTest",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "403efa48bded826a71d1f521c1b2f71f808dd78c",
"body": null,
"is_bot": false,
"headline": "feat(snapshot): surface semantics verdict in the dashboard",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "81e048447a2e0f7913170047723b396c6ca80cbd",
"body": null,
"is_bot": false,
"headline": "feat(snapshot): batch semantics gate + terse drift-only output",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9a0da61fd6b308d886038610816879905598c54b",
"body": "…st.kt",
"is_bot": false,
"headline": "style(snapshot): apply detekt auto-format to Semantics.kt/SemanticsTe…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f63846695f2c036b3e9d71c88f6fd1ea143e91cb",
"body": "…cs sidecar write",
"is_bot": false,
"headline": "test(snapshot): cover single-shot missing-golden exit 2 and --semanti…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "abd68e9ee90a77cfcd82093eb17f6ff26eacd5b7",
"body": "…-update-semantics",
"is_bot": false,
"headline": "feat(snapshot): single-shot --semantics / --verify-semantics-file / -…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e30840cc78a760b24ac15fb0aac9d66d10533e41",
"body": "… complexity threshold",
"is_bot": false,
"headline": "refactor(snapshot): extract BatchRunner helpers to drop runShot below…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c2d9331bae05bdddb6764041a26dec2b08b4d6cb",
"body": null,
"is_bot": false,
"headline": "feat(snapshot): batch semantics sidecars, golden verify, and totals",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3af823d94a2d777522a6333f095b00dd45754cbc",
"body": null,
"is_bot": false,
"headline": "feat(snapshot): report v2 with semantics verdict + measurement fields",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d391af60f812bd56e23b8b910836c2bbd631e3f6",
"body": null,
"is_bot": false,
"headline": "feat(snapshot): semantics comparator with capped line-diff delta",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fb1e2ca59180103670bbff7891ff5accead888db",
"body": "…ractionTest",
"is_bot": false,
"headline": "style(snapshot): apply detekt auto-correct formatting to SemanticsExt…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "02befcaef1e299b6757f5753eaf1592c4d814c96",
"body": null,
"is_bot": false,
"headline": "feat(snapshot): extract merged semantics tree from the rendered scene",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d3f7c8c43c3e380ce07cf3cb45116bb1e3ca28eb",
"body": null,
"is_bot": false,
"headline": "feat(snapshot): semantics data model with text + canonical JSON forms",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "61a73843aca6fc7a18e1d8b60dd7f84ddf8f368d",
"body": "9 TDD tasks: semantics model, scene extraction, comparator, report v2,\nbatch wiring, CLI single + batch, dashboard, docs/apiDump/publish-verify.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs: implementation plan for snapshot semantics + publish",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "8a5eeb51f27bee0cae3c6fd65353b244d0d9744c",
"body": "Fold in review findings: fix CLI option arity (distinct declared options,\nno Clikt optional-value), drop bounds entirely (one serialization form,\nno cross-arch determinism footgun), multi-owner roots: List<Node>,\nnon-fatal semantics-extraction error handling, explicitApi/KDoc/apiDump\nrequirement, ad\n[…]\ntput + measurement fields. Cut the live-view seam (events.ndjson) and\nthe structured path-walk differ (line diff v1) as premature.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs: revise snapshot semantics/publish design after multi-lens review",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "3689ada2f17c81b2b6fd841106b5aed0f3dc8699",
"body": "Spec for redux-kotlin-snapshot agent-loop capabilities: real semantics\nextraction (populating the SemanticsDump scaffold), canonical form +\nstructural diff, CLI/batch surface, batch report v2, Maven Central version\nreconcile, and a live-view emission seam (events.ndjson) for a future\nlive web view.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs: design for snapshot semantics dump, semantics-golden, publish",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-02T14:54:20Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "13112d5c53d81e1200f004814a44d2f09954cbd4",
"body": "The rk CLI publish never worked from the `release: [created]` trigger: that\npath checks out the release tag in detached-HEAD state, and JReleaser's\nfullRelease needs a named branch for its git ops, so it failed with\n\"Could not checkout branch main / Nothing to push\". Every successful CLI\npublish so \n[…]\nSSETS } instead of overwrite=true, so\n publishing appends assets to the existing release without wiping its\n hand-written notes.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "ci(cli-release): keep rk CLI in sync with library releases",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-07-01T14:57:08Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "b27ee8928ad33fffdcbb2ede4fdb3bc4fb279616",
"body": "API-change tripwire: the new public ReduxDevToolsPanel surface is now reflected\nin every doc surface.\n- docs/agent/api-map.md: inapp + noop rows note the embeddable panel.\n- website/docs/advanced/DevTools.md (Docusaurus): artifacts row + new\n \"Embedding the inspector (ReduxDevToolsPanel)\" section.\n\n[…]\n/devtools.md: entry-points table row + noop mirror list.\n(README \"Embedding the inspector\" section shipped in the feature commit.)\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs: document ReduxDevToolsPanel across guide, website, agent api-map",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-23T11:58:49Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "14ebfafc4a7b600006e1ea5a7d6edc2bc8a2110a",
"body": "Adds a public `ReduxDevToolsPanel(instanceId, startTab, theme)` composable to\nredux-kotlin-devtools-inapp — the DevTools inspector body (Actions/State/Diff/\nPipeline/Outputs tabs) with no bubble, scrim, or overlay drawer — for mounting\ninside another app's own UI (e.g. a host debug drawer).\n\n- Extra\n[…]\nmTest both modules green; compiles on jvm/iosSimulatorArm64/js/\nwasmJs (inapp) and linuxX64/mingwX64 (noop); checkKotlinAbi green.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(devtools-inapp): embeddable ReduxDevToolsPanel",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-23T11:58:49Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "2a084ad14987fd45d012cb730a72fb9d3cc66fb5",
"body": "…imental)\n\nPromotes redux-kotlin-snapshot from an in-repo-only tool to a published,\nBOM-aligned module — exempt from semver like the DevTools family — so external\napps can depend on the scene DSL (`snapshotApp { }`) to define their own scenes.\n\nInfra:\n- New `convention.publishing-jvm` — the repo's f\n[…]\n publishToMavenLocal\nproduces a clean host-agnostic POM (sources + dokka javadoc jars); website builds\nunder onBrokenLinks: throw.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(snapshot): publish redux-kotlin-snapshot to Maven Central (exper…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-22T15:40:15Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "39ce5f2c1228aafc23fe37f717dcbce899206d81",
"body": "…t docs\n\nAudit of the unified `rk` CLI surface, its JReleaser/brew/scoop publication, and\nevery doc that references it. Fixes:\n\n- CHANGELOG: stale `rk-devtools` binary name/path → unified `rk devtools` +\n brew/scoop install (the standalone `rk-devtools` binary no longer exists).\n- README: KMP targe\n[…]\n alongside from-source.\n\nVerified `rk` command surface against the Clikt sources; website builds clean\nunder onBrokenLinks: throw.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(rk): accuracy pass on rk CLI + publication, install, and AI-agen…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-21T15:54:04Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "f7802d552c687cc4e0ccb91840c7995f7c3449f0",
"body": "The CLI is only obtainable by building from this repo (installDist), but the\nfile users drop in their own repo (AGENTS-external.md) never mentioned it, so\nagents working in a consumer project had no way to find or obtain rk-devtools.\nAdd a DevTools CLI section with clone + installDist instructions (and a pointer\nto rk-snapshot); re-assembled into AGENTS.md and the website AI-agents page.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(devtools): make the rk-devtools CLI discoverable to agents",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-21T14:34:36Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "d232c4824e7b10a621c58356a1da053481638c9d",
"body": "The 1.0.0-alpha01 release is live on Maven Central (all 21 modules incl. the\nsix DevTools libraries), and master now publishes 1.0.0-SNAPSHOT to the Central\nPortal snapshots repo. Update the docs to match:\n\n- GettingStarted / README: name the current release (1.0.0-alpha01, pre-release)\n and docume\n[…]\ndevtools libs are on Maven\n Central (1.0.0-alpha01) and as 1.0.0-SNAPSHOT; there is no umbrella\n redux-kotlin-devtools artifact.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(release): document 1.0.0-alpha01 artifacts + snapshots",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-21T14:34:36Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ba00552d37b3276521c4e8f72648fe4e4530e112",
"body": "Bumps [joi](https://github.com/hapijs/joi) from 17.13.3 to 17.13.4.\n- [Commits](https://github.com/hapijs/joi/compare/v17.13.3...v17.13.4)\n\n---\nupdated-dependencies:\n- dependency-name: joi\n dependency-version: 17.13.4\n dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>",
"is_bot": true,
"headline": "build(deps): bump joi from 17.13.3 to 17.13.4 in /website",
"author_name": "dependabot[bot]",
"author_login": "dependabot[bot]",
"committed_at": "2026-06-21T10:41:26Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "09da46344ebe57ea015d032421fbd3179203c1c6",
"body": "…, not a symlink\n\nThe bin.install_symlink approach left a broken rk: Homebrew's relative double-symlink\n(HOMEBREW/bin/rk -> ../Cellar/.../bin/rk -> libexec/Contents/MacOS/rk) makes the jpackage\nlauncher mis-resolve its app dir (Error opening .../Cellar/rk/Contents/app/rk.cfg). Ship a\nbin/rk wrapper that exec's the launcher by absolute libexec path instead — verified end to\nend via a real brew install (rk --version, --help, snapshot render-to-PNG from any CWD).",
"is_bot": false,
"headline": "fix(cli-release): brew formula ships a bin/rk wrapper (absolute exec)…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T23:20:38Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "dc96e8d7ea2fbc01434a7df36e7660621224a53a",
"body": "…CLAUDE.md, AGENTS, Ecosystem, KDoc)\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(rk): fix stale binary refs + complete rk CLI docs (devtools.md, …",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T22:57:56Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "b837a4b0ef415bf9cd3de980d354c014e1e2ea1a",
"body": "…/MacOS/rk + chmod\n\nVerified by a real local brew install: Homebrew strips the single top-level dir, so\nthe macOS launcher lands at #{libexec}/Contents/MacOS/rk (not rk.app/...), and the\nGradle Zip drops its exec bit. Symlink the stripped path and chmod 0755 it. Linux\nkeeps #{libexec}/bin/rk (its rk/ wrapper is likewise stripped). Confirmed end-to-end:\nrk --version, rk --help, and rk snapshot render (Skiko/Compose) all work from the\nbrew-installed bundled JRE.",
"is_bot": false,
"headline": "fix(cli-release): brew formula — Homebrew strips rk.app; use Contents…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T22:41:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6ed1cf128f0202c287f6fca364d79ed0ada64ec3",
"body": "…prefix\n\nThe generated Homebrew formula symlinked #{libexec}/bin/rk, but our archives are\njpackage app-images with a top-level wrapper dir (macOS rk.app, others rk/), so that\npath doesn't exist and brew install produced a broken rk. Ship a custom JReleaser\nformula-multi.rb.tpl that symlinks the laun\n[…]\nost_install (the .app is already jpackage-signed). Also set release tagName to\n{{projectVersion}} so JReleaser reuses the existing 1.0.0-alpha02 release instead of\ncreating a duplicate v-prefixed one.",
"is_bot": false,
"headline": "fix(cli-release): custom brew formula for jpackage .app + drop v-tag …",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T22:17:30Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "bafed8f2c349e250f0584960536a93f36c37962e",
"body": "Intel macOS CI runners were backlogged, stalling the release. Ship arm64-mac +\nlinux + windows now; Apple Silicon covers ~all Mac users and Intel-Mac users can\nbuild from source. Re-add macos-13 + the osx-x86_64 artifact when capacity allows.",
"is_bot": false,
"headline": "build(cli-release): drop Intel macOS (macos-13/osx-x86_64) for alpha02",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T21:44:57Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c1b3e2c06c084fb8c36f82ac2f8c3eeeffd030a9",
"body": "…on=1.0.0-... into '1')\n\nThe Windows runner's default PowerShell split the -Pversion=1.0.0-alpha02 arg on the\ndots, so Gradle saw -Pversion=1 (version '1') plus a phantom task '.0.0-alpha02'.\nThat '1' is what tripped the standalone MSI validation earlier. Force shell: bash on\nthe gradle steps so the arg parses identically on all OSes (matches ci.yml/check.yml).",
"is_bot": false,
"headline": "fix(cli-release): shell: bash for gradle steps (Windows split -Pversi…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T20:19:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "349aad8e50aaaa8cd9e0a9218a0b5b88512f376f",
"body": "…patch version input\n\nThe rk CLI Release Windows build failed configuring :redux-kotlin-devtools-standalone\n(a transitive dep via 'rk devtools serve --ui'): Compose validates every declared\ntargetFormat eagerly, and the MSI version resolved to '1' (invalid MAJOR.MINOR.BUILD).\nNormalize the standalon\n[…]\n.\n\nAlso add a 'version' input to cli-release.yml's workflow_dispatch so the CLI can be\n(re)published for an existing release (e.g. 1.0.0-alpha02) without re-running the\nMaven Central release workflow.",
"is_bot": false,
"headline": "fix(cli-release): normalize standalone MSI version + add workflow_dis…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T19:58:56Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "e5c67870e0cbf515b950401ab4f961f8acb1a97e",
"body": "Present Homebrew/Scoop (bundled JRE, no Java required) as the primary\ninstall method for rk in all relevant docs; from-source remains the\nfallback. Updates redux-kotlin-cli/README.md, README.md,\nwebsite/docs/advanced/DevTools.md, docs/agent/AGENTS-external.md,\nand the assembled website AI page.\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(cli): brew + scoop as primary rk install (bundled JRE); closes #367",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T19:30:17Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "0db0f4ea0ceac8dde72066cb5dd95aa0f39faf3a",
"body": null,
"is_bot": false,
"headline": "ci(cli): per-OS matrix build + JReleaser publish for rk",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T19:30:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "174b23c30192ceecbbf62c26922838f2ffb62b95",
"body": null,
"is_bot": false,
"headline": "docs(plan): add permissions:contents:write to Phase 2 publish job",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T19:30:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f82b7bb725dcef35b075e43fdf35cb54c7ba4aa0",
"body": "…gitignore .infisical.json",
"is_bot": false,
"headline": "chore(plan): Task 0 done — GH_PUBLISH_TOKEN mirrored from Infisical; …",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T19:30:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cd3e7be01fc0f12e43f09bc9099b93583bd28a0c",
"body": "Adds org.jreleaser 1.24.0 plugin to the catalog and a jreleaser {} block\nto :redux-kotlin-cli-dist that publishes the four per-OS archives as a\nGitHub Release + Homebrew formula (reduxkotlin/homebrew-tap) + Scoop\nmanifest (reduxkotlin/scoop-bucket). jreleaserConfig dry run: BUILD\nSUCCESSFUL with JLINK distribution, 4 artifacts, brew+scoop resolved.\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
"is_bot": false,
"headline": "build(cli): JReleaser JLINK config for brew + scoop publishing",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T18:40:52Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "42eb9d1c3b6536c66caf18bf400964ab56095d36",
"body": "…terfaces",
"is_bot": false,
"headline": "docs(plan): fix stale 'stripped version' wording in Phase 2 Task 2 in…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T18:40:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "9793837f9a937d653314686fc0478bb337c3365c",
"body": null,
"is_bot": false,
"headline": "build(cli): package rk app-image into per-OS JReleaser-named archive",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T18:40:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "70a6d14930b8c8fe1b92e63f9d38e6c7e9ced9e6",
"body": null,
"is_bot": false,
"headline": "build(cli-dist): Compose app-image packaging module (bundled JRE) for rk",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T18:40:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "617c5e386a140c833379749d570a50af2834b4d3",
"body": "…ature)\n\nThe committed form violated detekt's FunctionSignature rule and failed\nci/Validate(JDK 21) on PR #388; local hooks had masked it via an uncommitted\nauto-correct. Apply the auto-corrected single-expression form.",
"is_bot": false,
"headline": "fix(cli): single-expression rkCommand formatting (detekt FunctionSign…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T18:40:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c579d59e11ee6108daaa6e6f2522e566e9798cbe",
"body": "…cation+compose run-task clash)",
"is_bot": false,
"headline": "fix(plan): Phase 2 uses separate :redux-kotlin-cli-dist module (appli…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T18:40:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a83da69d478f147d81d4fdb93adedc1bbd2a9110",
"body": "…ew, ad-hoc mac)",
"is_bot": false,
"headline": "docs(plan): record Phase 2 decisions (defer linux-arm64, alphas-to-br…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T18:40:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "530100ca1bf0dc4143b074f8c52b86a84acab1a5",
"body": "…igning/decisions\n\nReview found blocking bugs: archives named with stripped version but JReleaser\nexpected full {{projectVersion}}; -Pversion never passed; {{template}} inside\nfile() won't resolve; gitRootSearch basedir ambiguity. Fixed: full version in\narchive name, -Pversion in both CI jobs, absol\n[…]\nne/signing reality, JDK/jpackage + no-ProGuard constraints,\nand open decisions (linux-arm64, prerelease publishing, notarization).\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(plan): correct Phase 2 version flow + JReleaser paths; document s…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T18:40:52Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "09165468b779fce51b814f6958a826e2e65a5044",
"body": "…g research\n\nRoute II (Compose jpackage app-image, bundled JRE) → JReleaser JLINK → Homebrew\ntap + Scoop bucket. Tasks 1-3 verifiable now; 4-6 validated on first tagged\nrelease after the tap/bucket repos + PAT exist. Closes #367 when shipped.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(plan): Phase 2 (packaging + brew/scoop publishing) plan + toolin…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T18:40:52Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "06fe5e182816a30b7c988550bd0ac5d71ece75e0",
"body": "…k devtools/rk snapshot\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(cli): replace remaining rk-devtools/rk-snapshot references with r…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T18:40:52Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "8c4344d93df3583a1606d956faf3fe683fe111d5",
"body": "Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(cli): point CI smoke test + docs at the unified rk binary",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T18:40:52Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "7d43a697830dbda659e3c812eb4d1b07a449d4ae",
"body": null,
"is_bot": false,
"headline": "feat(cli): unified rk binary wiring devtools + snapshot groups",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T18:40:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "685c383bb6570fc04b9090893b2edf06eefe33bd",
"body": "…snapshot'",
"is_bot": false,
"headline": "refactor(snapshot): library exposing public snapshotCommand() named '…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T18:40:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b532193bed825351a28e2471f803b637a5f84a30",
"body": null,
"is_bot": false,
"headline": "refactor(devtools-cli): library exposing devToolsCommand() group",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T18:40:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "07e2285b19225ec99efc5019ac4ab62d960fab5f",
"body": "Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(plan): Phase 1 implementation plan for unified rk CLI",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T18:40:52Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "250f17e6cb4d2d73839c3e66627b3e5b6d8acc24",
"body": "Merge rk-devtools and rk-snapshot into one `rk` binary (rk devtools … /\nrk snapshot …), then publish per-OS self-contained builds (bundled JRE) via\nJReleaser to Homebrew + Scoop. Phased: unify first, publish second.\n\nCo-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(spec): design for unified rk CLI (devtools + snapshot)",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-19T18:40:52Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "a04045870154309418486aaa0bf7a35abbafeeb0",
"body": "… deploy\n\n- publishToMavenCentral(automaticRelease = true): the Central Portal deployment\n publishes automatically once validation passes, instead of waiting for a manual\n Drop/Publish in the Portal UI.\n- Remove the GitHub Packages release matrix entry: it rejects the Compose Android\n AAR publica\n[…]\n strips the common ancestor), so 'cp build/dokka/html/' failed. Locate the html\n dir that contains index.html instead of hardcoding the path.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "build: auto-release to Maven Central, drop GitHub Packages, fix Dokka…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-17T14:49:08Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "4b6616b05bb584110f07dbe7367a5f067871f409",
"body": "Compose's iOS UI test binary can't link on the CI Xcode toolchain: compose\nui-uikit auto-links Apple's private 'UIUtilities' framework, which the linker\ncan't find ('Undefined symbols for architecture arm64'). This failed\nlinkDebugTestIosSimulatorArm64 for every module that renders Compose UI in tes\n[…]\nxist). The Compose UI tests run on\nthe JVM and the iOS *main* targets still compile and publish; non-Compose modules'\niOS tests are unaffected.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(build): disable iOS test binaries for all Compose modules",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-17T08:46:01Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "098748eabf41b624a47ca539177a1b2ae3baefe0",
"body": "redux-kotlin-devtools-inapp-noop and -ui render Compose UI in their tests, which\npull compose ui-uikit. On the CI Xcode 16.4 toolchain its auto-linked private\n'UIUtilities' framework isn't found, so linkDebugTestIosSimulatorArm64 fails with\n'Undefined symbols for architecture arm64' (the macOS check\n[…]\ne two modules. The iOS *main* targets still\ncompile and publish. Verified: the iOS test link/run tasks are SKIPPED and iOS\nmain still compiles.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(devtools): disable iOS test binaries for Compose-UI modules",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-17T08:46:01Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "306b1c99c8c13e920f6c34ebc6248ae481c534ee",
"body": "The commonMain marker (#382) made bundle-compose emit native klibs, so it now\nhas a (header-only) klib ABI dump where the committed reference was empty.\ncheckKotlinAbi runs only on the main host (macOS), so this surfaced on the macOS\ncheck lane after ubuntu/windows were green. Regenerated via updateKotlinAbi.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "build(bundle-compose): refresh klib ABI dump after adding marker source",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-17T04:30:03Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "a264813595614ff7f9ca78505e37e70636afad5c",
"body": "CliTest's single_render/unknown_scene/both_inputs cases passed the --out path via\nclikt's string .test() overload, which shell-tokenizes and strips the backslashes\nin a Windows path (D:\\a\\...), mangling --out so the PNG was never written ->\nAssertionError at CliTest.kt:27 on the windows check lane. Switch to the list-argv\noverload (already used by the other tests) so paths are passed verbatim.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(snapshot): use list-argv in CliTest so Windows --out paths survive",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-17T03:32:36Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "769f60302f1f449770225d9ac42bf4bc05a50def",
"body": "redux-kotlin-bundle-compose is a dependency-only aggregator with no commonMain\nsource, so its compileKotlin<Native> tasks were NO-SOURCE and produced no klib.\ngenerateMetadataFileFor<Target>Publication then failed with FileNotFoundException\non the missing klib (all 5 native targets), blocking publis\n[…]\nto commonMain so every target\nhas a real compilation and emits a klib. Verified: full ./gradlew publishToLocal\n--continue now BUILD SUCCESSFUL.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(bundle-compose): add commonMain marker so native targets emit klibs",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-17T03:32:36Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "154b0a62ba0a7dc15a18da1cfe7903864df43a3b",
"body": "publishToLocal builds and publishes every multiplatform target, but only the\nmain host (macOS) builds the apple/native klibs. On ubuntu/windows the step\nfailed generating publication metadata for unbuilt targets\n(FileNotFoundException: redux-kotlin-iosArm64Main-*.klib). The real release\npublishes from a single macOS host, so gate this smoke test to macOS too.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "ci(check): run publishToLocal smoke test on macOS only",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-17T02:20:43Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "80804a522495bd67563b813b3e007128ea869c7a",
"body": "skiko.wasm can't be fetched under Node, so compose-dependent modules'\nwasmJsNodeTest aborts with 'both async and sync fetching of the wasm failed'\n(redux-kotlin-devtools-inapp-noop, -ui), failing the check matrix. Compose wasm\ntests are browser-only; disable the Node variant wherever the Compose plu\n[…]\nn both KMP conventions. wasmJsBrowserTest keeps the coverage. Verified:\nboth tasks now SKIPPED, wasmJsBrowserTest still runs, BUILD SUCCESSFUL.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(build): disable wasmJsNodeTest for Compose modules",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-17T02:20:43Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ab28911975e0e746863a2d8cb9258c7c177db9ff",
"body": "examples/counter, examples/todos (js) and examples/taskflow (wasmJs) declare\ntheir own browser() outside the library conventions, so they still launched the\ndefault ChromiumHeadless and failed on CI. Point each at the shared\nkarma.config.d. Verified: full-project jsBrowserTest + wasmJsBrowserTest sweep\n(--continue) BUILD SUCCESSFUL locally.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(build): no-sandbox Karma config for example apps' browser tests",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-17T01:25:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "602b8564d8e77f87fe090bf2386c34ceba3cf6c3",
"body": "The js-target karma.config.d fix didn't cover the wasmJs target, whose\nbrowser() test task still launched the default ChromiumHeadless and failed\n:redux-kotlin / :redux-kotlin-bundle allTests on CI (no sandbox on Ubuntu 24.04,\nabsent on Windows). Point wasmJs's Karma test task at the same shared\nkarma.config.d. Verified: wasmJsBrowserTest passes locally for core + bundle.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(build): apply no-sandbox Karma config to wasmJsBrowserTest",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-17T01:25:09Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "1d3679272540f7bbcf5bebeffb12120c766238c5",
"body": "The earlier useChromeHeadlessNoSandbox() switch only APPENDED to Karma's default\nChromiumHeadless, leaving the browser list [ChromiumHeadless, ChromeHeadlessNoSandbox].\nKarma launches every listed browser, so the still-present ChromiumHeadless failed\njsBrowserTest on CI (absent on Windows; no sandbo\n[…]\nconfig.set OVERWRITES the browser list to a single Chrome-headless\n--no-sandbox launcher. Verified: :redux-kotlin:jsBrowserTest passes locally.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(build): force single Chrome --no-sandbox Karma browser",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-17T00:45:12Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "38d15dee9246d70bcd9beb9e4047a6e45daae9aa",
"body": "The previous keepUnsupportedTargets attempt did not work: ubuntu/windows still\nfailed checkKotlinAbi on the Targets: header diff, because they build only a\nsubset of native targets while the committed reference covers all of them (CI\nbuilds every target only on the main host, macOS, per convention.c\n[…]\nation.enabled to (!CI || isMainHost) so ABI is validated locally and on\nthe macOS lane, and skipped on the reduced-target ubuntu/windows lanes.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(build): run klib ABI check only on the main host",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-17T00:45:12Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "6eb382f56e75710e8d32131c8cd309dbc8cc259e",
"body": "checkKotlinAbi failed on the ubuntu/windows check lanes with a spurious\n'<<<ABI has changed>>>' whose only diff was the dump's Targets: header: CI builds\nevery native target only on the main host (macOS, per convention.control), so\nubuntu/windows produce a klib dump missing apple/mingw targets and m\n[…]\n. Set abiValidation.klib.keepUnsupportedTargets so\nhost-unbuildable targets are inferred from the reference, making the check\nhost-independent.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(build): keep unsupported targets in klib ABI check",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-17T00:11:14Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "a32efd2e664e88238249ac1beb321fe6fcaf40e4",
"body": "The default Karma launcher is ChromiumHeadless, which broke the check matrix on\nevery OS: the Windows runner has no Chromium binary (CHROMIUM_BIN unset) and on\nUbuntu 24.04 ChromiumHeadless can't start its sandbox (AppArmor disables\nunprivileged user namespaces -> 'No usable sandbox'). Switch both K\n[…]\ns\nto useChromeHeadlessNoSandbox(): Chrome ships on all GitHub runners and\n--no-sandbox clears the Ubuntu restriction. jsNodeTest is unaffected.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(build): run jsBrowserTest on Chrome headless --no-sandbox",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T23:33:39Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "3f238f5b6d041b9b31e70842ccf31e3a8c736d6c",
"body": "`convention.library-mpp-loved` wires androidMain to inherit jvmCommonMain\nsources via `kotlin.srcDir(jvmCommonMain.kotlin)`, so the byte-identical\nandroidMain/HostFrame.kt actual (added in 7816af21) collided with the inherited\njvmCommonMain one — `compileAndroidMain` failed with 'Conflicting overloa\n[…]\nbreaking the check matrix on every OS and blocking releases. androidMain already\ngets the actual from jvmCommonMain; delete the redundant copy.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(devtools-inapp-noop): drop duplicate androidMain HostFrame actual",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T22:37:50Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "c4de6fc514174e840ea0f071eb1f7069bfe92489",
"body": "…all.sarif)\n\nThe detekt 1.23.8 → 2.0.0-alpha.3 migration renamed report files: detekt 2.0\nbases the output filename on the task name minus its `detekt` prefix, so the\nroot `detektAll` task now emits build/reports/detekt/all.sarif (was\ndetekt.sarif). The lint job still copied detekt.sarif; the cp fai\n[…]\nly\n(continue-on-error) and upload-sarif then aborted the job on the missing file,\nwhich blocked every downstream publish job via needs:[check].\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "ci(check): fix detekt SARIF path after 2.0 migration (detekt.sarif → …",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T22:05:42Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "66b75949a645c05bdbb0c51158c3d010f4fdd569",
"body": "Snapshot shipped with zero user-facing or agent-facing docs. Add:\n\nUser docs:\n- redux-kotlin-snapshot/README.md (mirrors devtools-cli: what-it-is, install\n via installDist, Java 17, rk-snapshot flags, golden + batch/dashboard loops).\n- website/docs/advanced/Snapshot.md (id: snapshot-testing) + side\n[…]\nscripts/check-agent-refs.sh: allow the snapshotUi gradle task.\n\nVerified: ANCHOR CHECK OK + ASSEMBLE CHECK OK. Docusaurus link gate left to CI.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(snapshot): document the module for users + AI agents",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T21:41:38Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "ba60c322e3c8b9684b67becf4cea10f6c7b14d50",
"body": "- snapshotCommand -> internal (runCli stays the public entry; keeps the Clikt\n dependency off the module public API, as its KDoc already claimed).\n- CounterState/counterReducer -> internal (CI self-test fixtures, not consumer API).\n- Centralize diff thresholds in DiffDefaults (TOLERANCE + strict/ba\n[…]\n0.1/0.5/1.0) so the same\n images verified differently across test/batch/CLI. Tolerance unified to 4;\n CLI --verify aligned to the batch gate.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "refactor(snapshot): tighten public surface + unify diff thresholds",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T21:41:38Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "b19d676f3dafc789c168340482e725da8f3b0aaf",
"body": "The documented snapshotUi command referenced a bare 'shots.json' that did not\nexist, so a fresh checkout hit FileNotFoundException. Commit a sample manifest\nat examples/taskflow/composeApp/snapshots/shots.json (all board/settings\nscenes+presets) and point the command at it with a repo-root-relative path and\na build/ output dir, so it is copy-paste runnable.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(taskflow): ship a ready-to-run snapshot manifest + fix doc command",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T21:41:38Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "d58e1aae7623f4d3a32bfe29e6ca0dbd05c3fa57",
"body": "…ling out of prod app)\n\nTaskFlowSnapshots.kt + SnapshotMain.kt lived in jvmMain and redux-kotlin-snapshot\nwas a jvmMain implementation dep, so the Skiko render backend + Clikt CLI + the\nsnapshot harness leaked onto the runnable desktop app's runtime classpath and any\npackaged distributable (compose.\n[…]\nngsScreen live).\nNo production code referenced the harness; the module is convention.control\n(unpublished) so there is no Maven surface change.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "refactor(taskflow): move snapshot harness to jvmTest (keep render too…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T21:41:38Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "9b42df4cd4b56eeb9fb9b4ece63a25c2e29f6d77",
"body": "…rify golden\n\nA missing --batch file surfaced a raw java.io.FileNotFoundException with no\nhint that the path resolves against the JVM working dir (rarely where the user\ntyped the command). Replace with a CliktError (exit 2) that names the resolved\nabsolute path, prints the working dir, and shows a c\n[…]\nt plus a --list hint.\n\nSame treatment for a missing --verify golden: name the path and show how to\ngenerate it (--out <path> without --verify).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(snapshot): actionable errors for missing --batch manifest / --ve…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T21:41:38Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "cf4d81cb4c3a136e121d495b73f843ee1d59a707",
"body": "Thumbnails used image-rendering:pixelated, nearest-neighbour downscaling\nthe 2x render PNGs into jagged thumbnails. Switch to image-rendering:auto\nfor smooth downscale.\n\nAdd a click-to-zoom lightbox: click any thumbnail (golden/actual/diff) to\nopen a fullscreen overlay with a fit/1:1 toggle (1:1 use\n[…]\nl diff inspection) and Escape-to-close. CSS + lightbox markup/JS\nextracted into STYLE/LIGHTBOX consts to keep page() under the LongMethod gate.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(snapshot): crisp dashboard thumbnails + click-to-zoom lightbox",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T21:41:38Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "0cf61f649bc04696a4ff6f84329658bd94f1d75b",
"body": "…shot scenes\n\nWires the TaskFlow sample as the first consumer of redux-kotlin-snapshot,\nproving the external-consumer path (an MPP app's jvmMain depending on the JVM\nsnapshot lib) the review flagged as unproven.\n\n- lib: add `SnapshotApp.runCli(args)` so a consumer's main needs no Clikt types.\n- task\n[…]\n — text screens are cross-OS-flaky until the\nbundled-font harness): board/settings render non-empty at 822×1782. detekt\nclean. Stacked on #372.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(snapshot): TaskFlow reference integration — real screens as snap…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T21:41:38Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "16a75c7b53fc012cb26373fd0829f9b2bac6066a",
"body": "Completes the dashboard's regression-review surface:\n- Differ.diffImage(golden, actual, tolerance): renders a diff PNG — changed\n pixels (per-channel delta > tolerance) painted magenta over a dimmed copy of\n actual; null on dimension mismatch. (In-house; the Roborazzi comparator can\n replace it l\n[…]\n+ report.diffImage; dashboard includes the diff ref. Suite green;\ndetekt clean (verifyShot→2 returns, card→imgsFor extracted). Stacked on #371.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(snapshot): diff-image triptych (golden|actual|diff) in dashboard",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T21:41:38Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "55ce0cab502391f84031e67bf6d12941d9ee41d1",
"body": "Adds DashboardGenerator: a pure function of SnapshotReport (+ images) that\nwrites a self-contained index.html — inline CSS, relative image refs, no\nserver. Summary bar (runId + totals), a gallery card per shot (golden|actual\nside-by-side, status pill, diffPercent, size, renderMs, the input that prod\n[…]\nked onto #370 (chain into #369).\n\n(Diff-image triptych comes with the Roborazzi comparator in 2.3; per-run\nhistory/trend is a later increment.)\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(snapshot): static HTML dashboard over report.json (Plan 3)",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T21:41:38Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "48d45d1a6e70752393e99d1f36d64a07f04cf24f",
"body": "…on (Plan 2)\n\nPlan 2, increment 1 — the multi-state/report scope and the backbone the HTML\ndashboard (Plan 3) renders over:\n- BatchManifest (shots + manifest defaults) + canonical SnapshotReport\n (runId, outDir, totals, per-shot {input, sizePx, out, bytes, renderMs,\n status, verify{golden,result,d\n[…]\nrt+failure-isolation, verify\nmatch/missing-golden, CLI --batch happy path + failure->exit 1. Full suite\ngreen; detekt clean. Stacked onto #369.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(snapshot): batch runner + report.json + rk-snapshot --batch/--js…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T21:41:38Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "f81ed96869eaf1e0daabe80067e5a75e8a0031b0",
"body": "…, test gaps\n\nFrom the independent multi-agent review of the PR:\n- [MAJOR] Expose `public SnapshotApp.render(...): RenderResult` and carry\n RenderResult through the internal path (was internal renderPng -> ByteArray,\n which dropped semantics and gave external consumers no way to render the\n f(sta\n[…]\n.\n\n27 tests pass; detekt clean. Cross-OS golden confirmed stable (reviewer\npixel-analyzed: 0 anti-aliased pixels, integer-aligned, CPU raster).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "fix(snapshot): apply review findings — public render, never-crash CLI…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T21:41:38Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "b0e96f3c755d1744f60cd97aac6111eab0724e1d",
"body": "…n diff, CLI\n\nPlan 1 (core slice) of the state-driven headless UI snapshot library:\n- ImageComposeScene render backend (RenderResult{png, semantics-stub} so the\n Plan 2 semantic dump won't break the seam).\n- snapshotApp { scene { render { args -> @Composable } } } registry + resolve\n (global/scene\n[…]\non-text golden for cross-OS determinism; BOM entry deferred (module is an\nunpublished tool like devtools-cli — publishing is a Plan 3 concern).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "feat(snapshot): redux-kotlin-snapshot core — engine, scene DSL, golde…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T21:41:38Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "6708a1fc4ff9e8d868243eff1fc8b248b92764e6",
"body": "…+ CLI)\n\nEnd-to-end implementable slice: module scaffold, ImageComposeScene render\nbackend (from the spike), snapshotApp scene DSL, per-pixel Differ, GoldenStore,\nbuilt-in demo self-test (render smoke + determinism + golden), single-shot CLI\n(--scene/--preset/--state-json/--verify/--list), assertGol\n[…]\n helper, BOM+ABI.\nTDD, bite-sized steps. Plans 2 (batch/report/semantic/diff-upgrade) and 3\n(dashboard/consumer/determinism) scoped at the end.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(plan): redux-kotlin-snapshot Plan 1 (core engine + DSL + golden …",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T21:41:38Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "53c282a9bd9b298bfa1bd661cd7bdf494c40e341",
"body": "…ndering)\n\nGeneralizes the TaskFlow render spike into a published library: f(state)->UI\nheadless Compose rendering with a CLI agent loop, golden-image regression, a\nsemantic/text dump for agents, and a static HTML dashboard.\n\nIncorporates a four-lens review: lean into the redux/agent/devtools wedge \n[…]\ned font;\ncatch-per-shot (not a settle-timeout) for the engine path; external-consumer CI\ngate; semantic dump and HTML dashboard elevated to v1.\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "docs(spec): redux-kotlin-snapshot design (state-driven headless UI re…",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T21:41:38Z",
"body_truncated": true,
"is_coding_agent": true
},
{
"oid": "580cc61fb2c772830cc20be3e0fd1ca69502f259",
"body": "CI fix for the CLI's jvmToolchain(17): the CLI test JVM is now 17, but\n:redux-kotlin-devtools-standalone (convention.control, no jvmTarget) compiled\nto the daemon JDK's level — Java 21 on the JDK-21 CI leg — so its classes\n(MonitorIngest, used by EndToEndTest/CaptureFlusherTest) failed to load with\n\n[…]\nedClassVersionError.\n\nPin its jvm target to 17 like the other devtools modules (verified: the\nemitted MonitorIngest.class is major version 61).\n\nCo-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>",
"is_bot": false,
"headline": "build(devtools-standalone): pin jvm bytecode to 17",
"author_name": "patjackson52",
"author_login": "patjackson52",
"committed_at": "2026-06-16T15:25:57Z",
"body_truncated": true,
"is_coding_agent": true
}
],
"releases_count": 11,
"commits_last_year": 611,
"latest_release_at": "2026-07-18T00:05:12Z",
"latest_release_tag": "1.0.0-alpha06",
"releases_from_tags": false,
"days_since_last_push": 0,
"active_weeks_last_year": 13,
"days_since_latest_release": 7,
"mean_days_between_releases": 244.7
},
"community": {
"has_readme": true,
"has_license": true,
"has_description": true,
"has_contributing": false,
"health_percentage": 37,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"ecosystem": {
"packages": []
},
"popularity": {
"forks": 37,
"stars": 508,
"watchers": 7,
"fork_history": {
"days": [
{
"date": "2020-05-22",
"count": 1
},
{
"date": "2020-05-31",
"count": 1
},
{
"date": "2020-08-17",
"count": 1
},
{
"date": "2020-10-14",
"count": 1
},
{
"date": "2020-10-25",
"count": 1
},
{
"date": "2020-11-14",
"count": 1
},
{
"date": "2021-05-02",
"count": 1
},
{
"date": "2021-06-30",
"count": 1
},
{
"date": "2021-09-21",
"count": 1
},
{
"date": "2021-10-23",
"count": 1
},
{
"date": "2021-11-18",
"count": 2
},
{
"date": "2021-12-14",
"count": 1
},
{
"date": "2022-02-01",
"count": 1
},
{
"date": "2022-03-01",
"count": 1
},
{
"date": "2022-03-03",
"count": 1
},
{
"date": "2022-03-22",
"count": 1
},
{
"date": "2022-04-05",
"count": 1
},
{
"date": "2022-05-16",
"count": 1
},
{
"date": "2022-07-05",
"count": 1
},
{
"date": "2022-07-18",
"count": 1
},
{
"date": "2022-08-11",
"count": 1
},
{
"date": "2022-08-13",
"count": 1
},
{
"date": "2022-12-09",
"count": 1
},
{
"date": "2022-12-14",
"count": 1
},
{
"date": "2023-01-10",
"count": 1
},
{
"date": "2023-08-15",
"count": 1
},
{
"date": "2024-03-15",
"count": 1
},
{
"date": "2024-06-28",
"count": 1
},
{
"date": "2024-10-29",
"count": 1
},
{
"date": "2025-01-04",
"count": 1
},
{
"date": "2025-04-24",
"count": 1
},
{
"date": "2025-09-12",
"count": 1
},
{
"date": "2026-02-25",
"count": 1
},
{
"date": "2026-04-08",
"count": 1
},
{
"date": "2026-06-25",
"count": 1
}
],
"complete": true,
"collected": 36,
"total_forks": 37
},
"star_history": null,
"open_issues_and_prs": 17
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [
"example",
"examples",
"sample"
],
"has_llms_txt": false,
"has_dockerfile": false,
"has_mcp_signal": false,
"bootstrap_files": [],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [
"website/tsconfig.json"
],
"toolchain_manifests": [
"build-conventions/build.gradle.kts",
"build.gradle.kts",
"examples/counter/android/build.gradle.kts",
"examples/counter/common/build.gradle.kts",
"examples/taskflow/androidApp/build.gradle.kts",
"examples/taskflow/composeApp/build.gradle.kts",
"examples/todos/android/build.gradle.kts",
"examples/todos/common/build.gradle.kts",
"redux-kotlin-bom/build.gradle.kts",
"redux-kotlin-bundle-compose/build.gradle.kts",
"redux-kotlin-bundle/build.gradle.kts",
"redux-kotlin-cli-dist/build.gradle.kts",
"redux-kotlin-cli/build.gradle.kts",
"redux-kotlin-compose-multimodel/build.gradle.kts",
"redux-kotlin-compose-saveable/build.gradle.kts",
"redux-kotlin-compose/build.gradle.kts",
"redux-kotlin-concurrent/build.gradle.kts",
"redux-kotlin-devtools-bridge/build.gradle.kts",
"redux-kotlin-devtools-cli/build.gradle.kts",
"redux-kotlin-devtools-core/build.gradle.kts",
"redux-kotlin-devtools-inapp-noop/build.gradle.kts",
"redux-kotlin-devtools-inapp/build.gradle.kts",
"redux-kotlin-devtools-remote/build.gradle.kts",
"redux-kotlin-devtools-standalone/build.gradle.kts",
"redux-kotlin-devtools-ui/build.gradle.kts",
"redux-kotlin-granular/build.gradle.kts",
"redux-kotlin-multimodel-granular/build.gradle.kts",
"redux-kotlin-multimodel/build.gradle.kts",
"redux-kotlin-registry/build.gradle.kts",
"redux-kotlin-routing-codegen-sample/build.gradle.kts",
"redux-kotlin-routing-codegen/build.gradle.kts",
"redux-kotlin-routing/build.gradle.kts",
"redux-kotlin-snapshot/build.gradle.kts",
"redux-kotlin-threadsafe/build.gradle.kts",
"redux-kotlin-thunk/build.gradle.kts",
"redux-kotlin/build.gradle.kts"
],
"largest_source_bytes": 26373,
"source_files_sampled": 565,
"oversized_source_files": 0,
"agent_instruction_files": [
"AGENTS.md",
"CLAUDE.md"
],
"agent_instruction_max_bytes": 9036
},
"dependencies": {
"manifests": [
"build-conventions/build.gradle.kts",
"build.gradle.kts",
"redux-kotlin-bom/build.gradle.kts",
"redux-kotlin-bundle-compose/build.gradle.kts",
"redux-kotlin-bundle/build.gradle.kts",
"redux-kotlin-cli-dist/build.gradle.kts",
"redux-kotlin-cli/build.gradle.kts",
"redux-kotlin-compose-multimodel/build.gradle.kts",
"redux-kotlin-compose-saveable/build.gradle.kts",
"redux-kotlin-compose/build.gradle.kts",
"redux-kotlin-concurrent/build.gradle.kts",
"redux-kotlin-devtools-bridge/build.gradle.kts",
"redux-kotlin-devtools-cli/build.gradle.kts",
"redux-kotlin-devtools-core/build.gradle.kts",
"redux-kotlin-devtools-inapp-noop/build.gradle.kts",
"redux-kotlin-devtools-inapp/build.gradle.kts",
"redux-kotlin-devtools-remote/build.gradle.kts",
"redux-kotlin-devtools-standalone/build.gradle.kts",
"redux-kotlin-devtools-ui/build.gradle.kts",
"redux-kotlin-granular/build.gradle.kts",
"redux-kotlin-multimodel-granular/build.gradle.kts",
"redux-kotlin-multimodel/build.gradle.kts",
"redux-kotlin-registry/build.gradle.kts",
"redux-kotlin-routing-codegen-sample/build.gradle.kts",
"redux-kotlin-routing-codegen/build.gradle.kts",
"redux-kotlin-routing/build.gradle.kts",
"redux-kotlin-snapshot/build.gradle.kts",
"redux-kotlin-threadsafe/build.gradle.kts",
"redux-kotlin-thunk/build.gradle.kts",
"redux-kotlin/build.gradle.kts",
"website/package.json"
],
"advisories": {
"error": null,
"scope": "repository_graph",
"source": "osv",
"findings": [
{
"name": "flatted",
"direct": false,
"version": "3.2.7",
"severity": "critical",
"ecosystem": "npm",
"cvss_score": 9.8,
"advisory_ids": [
"GHSA-25h7-pfq9-p65f",
"GHSA-rf6f-7fwh-wjgh"
],
"fixed_version": "3.4.2",
"advisory_count": 2,
"oldest_advisory_days": 134
},
{
"name": "brace-expansion",
"direct": false,
"version": "1.1.11",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3jxr-9vmj-r5cp",
"GHSA-f886-m6hf-6m8v",
"GHSA-mh99-v99m-4gvg",
"GHSA-v6h2-p8h4-qcjw"
],
"fixed_version": "5.0.8",
"advisory_count": 4,
"oldest_advisory_days": 410
},
{
"name": "brace-expansion",
"direct": false,
"version": "1.1.15",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3jxr-9vmj-r5cp",
"GHSA-mh99-v99m-4gvg"
],
"fixed_version": "5.0.8",
"advisory_count": 2,
"oldest_advisory_days": 4
},
{
"name": "brace-expansion",
"direct": false,
"version": "2.1.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3jxr-9vmj-r5cp",
"GHSA-mh99-v99m-4gvg"
],
"fixed_version": "5.0.8",
"advisory_count": 2,
"oldest_advisory_days": 4
},
{
"name": "braces",
"direct": false,
"version": "3.0.2",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-grv7-fg5c-xmjg"
],
"fixed_version": "3.0.3",
"advisory_count": 1,
"oldest_advisory_days": 801
},
{
"name": "cross-spawn",
"direct": false,
"version": "7.0.3",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3xgq-45jj-v275"
],
"fixed_version": "7.0.5",
"advisory_count": 1,
"oldest_advisory_days": 624
},
{
"name": "fast-uri",
"direct": false,
"version": "3.1.2",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-4c8g-83qw-93j6",
"GHSA-v2hh-gcrm-f6hx"
],
"fixed_version": "4.1.1",
"advisory_count": 2,
"oldest_advisory_days": 3
},
{
"name": "js-yaml",
"direct": false,
"version": "3.14.2",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-52cp-r559-cp3m",
"GHSA-h67p-54hq-rp68"
],
"fixed_version": "4.3.0",
"advisory_count": 2,
"oldest_advisory_days": 40
},
{
"name": "js-yaml",
"direct": false,
"version": "4.1.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-52cp-r559-cp3m",
"GHSA-h67p-54hq-rp68"
],
"fixed_version": "4.3.0",
"advisory_count": 2,
"oldest_advisory_days": 40
},
{
"name": "lodash",
"direct": false,
"version": "4.17.21",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 8.1,
"advisory_ids": [
"GHSA-f23m-r3pf-42rh",
"GHSA-r5fr-rjxr-66jc",
"GHSA-xxjr-mmjv-4gpg"
],
"fixed_version": "4.18.0",
"advisory_count": 3,
"oldest_advisory_days": 184
},
{
"name": "minimatch",
"direct": false,
"version": "3.1.2",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-23c5-xmqv-rm74",
"GHSA-3ppc-4f35-3m26",
"GHSA-7r86-cg39-jmmj"
],
"fixed_version": "10.2.3",
"advisory_count": 3,
"oldest_advisory_days": 156
},
{
"name": "picomatch",
"direct": false,
"version": "2.3.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3v7f-55p6-f55p",
"GHSA-c2c7-rcm5-vvqj"
],
"fixed_version": "4.0.4",
"advisory_count": 2,
"oldest_advisory_days": 121
},
{
"name": "postcss",
"direct": false,
"version": "8.5.15",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-r28c-9q8g-f849"
],
"fixed_version": "8.5.18",
"advisory_count": 1,
"oldest_advisory_days": 1
},
{
"name": "serialize-javascript",
"direct": false,
"version": "6.0.2",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 8.1,
"advisory_ids": [
"GHSA-5c6j-r48x-rmvq",
"GHSA-qj8w-gfj5-8c6v"
],
"fixed_version": "7.0.5",
"advisory_count": 2,
"oldest_advisory_days": 147
},
{
"name": "shell-quote",
"direct": false,
"version": "1.8.4",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-395f-4hp3-45gv"
],
"fixed_version": "1.9.0",
"advisory_count": 1,
"oldest_advisory_days": 4
},
{
"name": "svgo",
"direct": false,
"version": "3.3.3",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 8.2,
"advisory_ids": [
"GHSA-2p49-hgcm-8545"
],
"fixed_version": "4.0.2",
"advisory_count": 1,
"oldest_advisory_days": 3
},
{
"name": "tmp",
"direct": false,
"version": "0.2.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-52f5-9888-hmc6",
"GHSA-ph9p-34f9-6g65"
],
"fixed_version": "0.2.6",
"advisory_count": 2,
"oldest_advisory_days": 353
},
{
"name": "ua-parser-js",
"direct": false,
"version": "0.7.32",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-fhg7-m89q-25r3"
],
"fixed_version": "1.0.33",
"advisory_count": 1,
"oldest_advisory_days": 1278
},
{
"name": "undici",
"direct": false,
"version": "7.26.0",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-35p6-xmwp-9g52",
"GHSA-g8m3-5g58-fq7m",
"GHSA-hm92-r4w5-c3mj",
"GHSA-p88m-4jfj-68fv",
"GHSA-pr7r-676h-xcf6",
"GHSA-vmh5-mc38-953g",
"GHSA-vxpw-j846-p89q"
],
"fixed_version": "8.5.0",
"advisory_count": 7,
"oldest_advisory_days": 37
},
{
"name": "uuid",
"direct": false,
"version": "8.3.2",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-w5hq-g745-h8pq"
],
"fixed_version": "13.0.1",
"advisory_count": 1,
"oldest_advisory_days": 93
},
{
"name": "websocket-driver",
"direct": false,
"version": "0.7.4",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-mp7j-qc5w-4988",
"GHSA-xv26-6w52-cph6"
],
"fixed_version": "0.7.5",
"advisory_count": 2,
"oldest_advisory_days": 9
},
{
"name": "ws",
"direct": false,
"version": "8.18.0",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-58qx-3vcg-4xpx",
"GHSA-96hv-2xvq-fx4p"
],
"fixed_version": "8.21.0",
"advisory_count": 2,
"oldest_advisory_days": 67
},
{
"name": "ws",
"direct": false,
"version": "8.20.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-96hv-2xvq-fx4p"
],
"fixed_version": "8.21.0",
"advisory_count": 1,
"oldest_advisory_days": 40
},
{
"name": "diff",
"direct": false,
"version": "7.0.0",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 5.3,
"advisory_ids": [
"GHSA-73rr-hh4g-fpgx"
],
"fixed_version": "8.0.3",
"advisory_count": 1,
"oldest_advisory_days": 191
},
{
"name": "follow-redirects",
"direct": false,
"version": "1.15.2",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 6.5,
"advisory_ids": [
"GHSA-cxjh-pqwp-8mfp",
"GHSA-jchw-25xp-jwwc",
"GHSA-r4q5-vmmm-2653"
],
"fixed_version": "1.16.0",
"advisory_count": 3,
"oldest_advisory_days": 935
},
{
"name": "http-proxy-middleware",
"direct": false,
"version": "2.0.9",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 5.3,
"advisory_ids": [
"GHSA-64mm-vxmg-q3vj"
],
"fixed_version": "4.1.0",
"advisory_count": 1,
"oldest_advisory_days": 37
},
{
"name": "qs",
"direct": false,
"version": "6.13.0",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 5.3,
"advisory_ids": [
"GHSA-6rw7-vpxm-498p",
"GHSA-q8mj-m7cp-5q26",
"GHSA-w7fw-mjwx-w883"
],
"fixed_version": "6.15.2",
"advisory_count": 3,
"oldest_advisory_days": 206
},
{
"name": "webpack-dev-server",
"direct": false,
"version": "5.2.3",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 5.3,
"advisory_ids": [
"GHSA-79cf-xcqc-c78w",
"GHSA-f5vj-f2hx-8m93",
"GHSA-m28w-2pqf-7qgj",
"GHSA-mx8g-39q3-5c79"
],
"fixed_version": "5.2.6",
"advisory_count": 4,
"oldest_advisory_days": 68
},
{
"name": "webpack-dev-server",
"direct": false,
"version": "5.2.4",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 5.3,
"advisory_ids": [
"GHSA-f5vj-f2hx-8m93",
"GHSA-m28w-2pqf-7qgj",
"GHSA-mx8g-39q3-5c79"
],
"fixed_version": "5.2.6",
"advisory_count": 3,
"oldest_advisory_days": 37
},
{
"name": "body-parser",
"direct": false,
"version": "1.20.3",
"severity": "low",
"ecosystem": "npm",
"cvss_score": 3.7,
"advisory_ids": [
"GHSA-v422-hmwv-36x6"
],
"fixed_version": "2.3.0",
"advisory_count": 1,
"oldest_advisory_days": 4
},
{
"name": "body-parser",
"direct": false,
"version": "1.20.5",
"severity": "low",
"ecosystem": "npm",
"cvss_score": 3.7,
"advisory_ids": [
"GHSA-v422-hmwv-36x6"
],
"fixed_version": "2.3.0",
"advisory_count": 1,
"oldest_advisory_days": 4
},
{
"name": "launch-editor",
"direct": false,
"version": "2.13.2",
"severity": "low",
"ecosystem": "npm",
"cvss_score": 0,
"advisory_ids": [
"GHSA-v6wh-96g9-6wx3"
],
"fixed_version": "8.0.16",
"advisory_count": 1,
"oldest_advisory_days": 40
},
{
"name": "webpack",
"direct": false,
"version": "5.101.3",
"severity": "low",
"ecosystem": "npm",
"cvss_score": 3.7,
"advisory_ids": [
"GHSA-38r7-794h-5758",
"GHSA-8fgc-7cc6-rx7x"
],
"fixed_version": "5.104.1",
"advisory_count": 2,
"oldest_advisory_days": 169
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"low": 4,
"high": 22,
"critical": 1,
"moderate": 6
},
"advisory_count": 67,
"affected_count": 33,
"assessed_count": 1429,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 0,
"direct_affected_count": 0
},
"ecosystems": [
"maven",
"npm"
],
"dependencies": [
{
"name": "@docusaurus/core",
"manifest": "website/package.json",
"ecosystem": "npm",
"version_constraint": "3.10.2"
},
{
"name": "@docusaurus/faster",
"manifest": "website/package.json",
"ecosystem": "npm",
"version_constraint": "3.10.2"
},
{
"name": "@docusaurus/preset-classic",
"manifest": "website/package.json",
"ecosystem": "npm",
"version_constraint": "3.10.2"
},
{
"name": "@easyops-cn/docusaurus-search-local",
"manifest": "website/package.json",
"ecosystem": "npm",
"version_constraint": "^0.46.1"
},
{
"name": "@mdx-js/react",
"manifest": "website/package.json",
"ecosystem": "npm",
"version_constraint": "^3.0.0"
},
{
"name": "clsx",
"manifest": "website/package.json",
"ecosystem": "npm",
"version_constraint": "^2.0.0"
},
{
"name": "prism-react-renderer",
"manifest": "website/package.json",
"ecosystem": "npm",
"version_constraint": "^2.3.0"
},
{
"name": "react",
"manifest": "website/package.json",
"ecosystem": "npm",
"version_constraint": "^19.0.0"
},
{
"name": "react-dom",
"manifest": "website/package.json",
"ecosystem": "npm",
"version_constraint": "^19.0.0"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "@docusaurus/core",
"direct": true,
"version": "3.10.1",
"ecosystem": "npm"
},
{
"name": "@docusaurus/core",
"direct": true,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/faster",
"direct": true,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/preset-classic",
"direct": true,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@easyops-cn/docusaurus-search-local",
"direct": true,
"version": "0.46.1",
"ecosystem": "npm"
},
{
"name": "@mdx-js/react",
"direct": true,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "clsx",
"direct": true,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "clsx",
"direct": true,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "prism-react-renderer",
"direct": true,
"version": "2.4.1",
"ecosystem": "npm"
},
{
"name": "react",
"direct": true,
"version": "19.2.6",
"ecosystem": "npm"
},
{
"name": "react-dom",
"direct": true,
"version": "19.2.6",
"ecosystem": "npm"
},
{
"name": "@11ty/gray-matter",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@algolia/abtesting",
"direct": false,
"version": "1.18.1",
"ecosystem": "npm"
},
{
"name": "@algolia/autocomplete-core",
"direct": false,
"version": "1.19.2",
"ecosystem": "npm"
},
{
"name": "@algolia/autocomplete-core",
"direct": false,
"version": "1.19.8",
"ecosystem": "npm"
},
{
"name": "@algolia/autocomplete-plugin-algolia-insights",
"direct": false,
"version": "1.19.2",
"ecosystem": "npm"
},
{
"name": "@algolia/autocomplete-plugin-algolia-insights",
"direct": false,
"version": "1.19.8",
"ecosystem": "npm"
},
{
"name": "@algolia/autocomplete-shared",
"direct": false,
"version": "1.19.2",
"ecosystem": "npm"
},
{
"name": "@algolia/autocomplete-shared",
"direct": false,
"version": "1.19.8",
"ecosystem": "npm"
},
{
"name": "@algolia/client-abtesting",
"direct": false,
"version": "5.52.1",
"ecosystem": "npm"
},
{
"name": "@algolia/client-analytics",
"direct": false,
"version": "5.52.1",
"ecosystem": "npm"
},
{
"name": "@algolia/client-common",
"direct": false,
"version": "5.52.1",
"ecosystem": "npm"
},
{
"name": "@algolia/client-insights",
"direct": false,
"version": "5.52.1",
"ecosystem": "npm"
},
{
"name": "@algolia/client-personalization",
"direct": false,
"version": "5.52.1",
"ecosystem": "npm"
},
{
"name": "@algolia/client-query-suggestions",
"direct": false,
"version": "5.52.1",
"ecosystem": "npm"
},
{
"name": "@algolia/client-search",
"direct": false,
"version": "5.52.1",
"ecosystem": "npm"
},
{
"name": "@algolia/events",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "@algolia/ingestion",
"direct": false,
"version": "1.52.1",
"ecosystem": "npm"
},
{
"name": "@algolia/monitoring",
"direct": false,
"version": "1.52.1",
"ecosystem": "npm"
},
{
"name": "@algolia/recommend",
"direct": false,
"version": "5.52.1",
"ecosystem": "npm"
},
{
"name": "@algolia/requester-browser-xhr",
"direct": false,
"version": "5.52.1",
"ecosystem": "npm"
},
{
"name": "@algolia/requester-fetch",
"direct": false,
"version": "5.52.1",
"ecosystem": "npm"
},
{
"name": "@algolia/requester-node-http",
"direct": false,
"version": "5.52.1",
"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-annotate-as-pure",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-compilation-targets",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-create-class-features-plugin",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-create-regexp-features-plugin",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-define-polyfill-provider",
"direct": false,
"version": "0.6.8",
"ecosystem": "npm"
},
{
"name": "@babel/helper-globals",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-member-expression-to-functions",
"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-optimise-call-expression",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-plugin-utils",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-remap-async-to-generator",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-replace-supers",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/helper-skip-transparent-expression-wrappers",
"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/helper-wrap-function",
"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/plugin-bugfix-firefox-class-in-computed-class-key",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-bugfix-safari-class-field-initializer-scope",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-bugfix-safari-rest-destructuring-rhs-array",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-proposal-private-property-in-object",
"direct": false,
"version": "7.21.0-placeholder-for-preset-env.2",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-syntax-dynamic-import",
"direct": false,
"version": "7.8.3",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-syntax-import-assertions",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-syntax-import-attributes",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-syntax-jsx",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-syntax-typescript",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-syntax-unicode-sets-regex",
"direct": false,
"version": "7.18.6",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-arrow-functions",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-async-generator-functions",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-async-to-generator",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-block-scoped-functions",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-block-scoping",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-class-properties",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-class-static-block",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-classes",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-computed-properties",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-destructuring",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-dotall-regex",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-duplicate-keys",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-duplicate-named-capturing-groups-regex",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-dynamic-import",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-explicit-resource-management",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-exponentiation-operator",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-export-namespace-from",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-for-of",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-function-name",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-json-strings",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-literals",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-logical-assignment-operators",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-member-expression-literals",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-modules-amd",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-modules-commonjs",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-modules-systemjs",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-modules-umd",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-named-capturing-groups-regex",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-new-target",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-nullish-coalescing-operator",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-numeric-separator",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-object-rest-spread",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-object-super",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-optional-catch-binding",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-optional-chaining",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-parameters",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-private-methods",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-private-property-in-object",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-property-literals",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-react-constant-elements",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-react-display-name",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-react-jsx",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-react-jsx-development",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-react-pure-annotations",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-regenerator",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-regexp-modifiers",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-reserved-words",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-runtime",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-shorthand-properties",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-spread",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-sticky-regex",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-template-literals",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-typeof-symbol",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-typescript",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-unicode-escapes",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-unicode-property-regex",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-unicode-regex",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/plugin-transform-unicode-sets-regex",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/preset-env",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/preset-modules",
"direct": false,
"version": "0.1.6-no-external-plugins",
"ecosystem": "npm"
},
{
"name": "@babel/preset-react",
"direct": false,
"version": "7.29.7",
"ecosystem": "npm"
},
{
"name": "@babel/preset-typescript",
"direct": false,
"version": "7.29.7",
"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": "@cashapp/sqldelight-sqljs-worker",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "@colors/colors",
"direct": false,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "@csstools/cascade-layer-name-parser",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "@csstools/color-helpers",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "@csstools/css-calc",
"direct": false,
"version": "2.1.4",
"ecosystem": "npm"
},
{
"name": "@csstools/css-color-parser",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "@csstools/css-parser-algorithms",
"direct": false,
"version": "3.0.5",
"ecosystem": "npm"
},
{
"name": "@csstools/css-tokenizer",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "@csstools/media-query-list-parser",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-alpha-function",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-cascade-layers",
"direct": false,
"version": "5.0.2",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-color-function",
"direct": false,
"version": "4.0.12",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-color-function-display-p3-linear",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-color-mix-function",
"direct": false,
"version": "3.0.12",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-color-mix-variadic-function-arguments",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-content-alt-text",
"direct": false,
"version": "2.0.8",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-contrast-color-function",
"direct": false,
"version": "2.0.12",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-exponential-functions",
"direct": false,
"version": "2.0.9",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-font-format-keywords",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-gamut-mapping",
"direct": false,
"version": "2.0.11",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-gradients-interpolation-method",
"direct": false,
"version": "5.0.12",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-hwb-function",
"direct": false,
"version": "4.0.12",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-ic-unit",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-initial",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-is-pseudo-class",
"direct": false,
"version": "5.0.3",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-light-dark-function",
"direct": false,
"version": "2.0.11",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-logical-float-and-clear",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-logical-overflow",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-logical-overscroll-behavior",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-logical-resize",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-logical-viewport-units",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-media-minmax",
"direct": false,
"version": "2.0.9",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-media-queries-aspect-ratio-number-values",
"direct": false,
"version": "3.0.5",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-nested-calc",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-normalize-display-values",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-oklab-function",
"direct": false,
"version": "4.0.12",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-position-area-property",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-progressive-custom-properties",
"direct": false,
"version": "4.2.1",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-property-rule-prelude-list",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-random-function",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-relative-color-syntax",
"direct": false,
"version": "3.0.12",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-scope-pseudo-class",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-sign-functions",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-stepped-value-functions",
"direct": false,
"version": "4.0.9",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-syntax-descriptor-syntax-production",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-system-ui-font-family",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-text-decoration-shorthand",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-trigonometric-functions",
"direct": false,
"version": "4.0.9",
"ecosystem": "npm"
},
{
"name": "@csstools/postcss-unset-value",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "@csstools/selector-resolve-nested",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "@csstools/selector-specificity",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "@csstools/utilities",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "@discoveryjs/json-ext",
"direct": false,
"version": "0.5.7",
"ecosystem": "npm"
},
{
"name": "@discoveryjs/json-ext",
"direct": false,
"version": "0.6.3",
"ecosystem": "npm"
},
{
"name": "@docsearch/core",
"direct": false,
"version": "4.6.3",
"ecosystem": "npm"
},
{
"name": "@docsearch/css",
"direct": false,
"version": "4.6.3",
"ecosystem": "npm"
},
{
"name": "@docsearch/react",
"direct": false,
"version": "4.6.3",
"ecosystem": "npm"
},
{
"name": "@docusaurus/babel",
"direct": false,
"version": "3.10.1",
"ecosystem": "npm"
},
{
"name": "@docusaurus/babel",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/bundler",
"direct": false,
"version": "3.10.1",
"ecosystem": "npm"
},
{
"name": "@docusaurus/bundler",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/cssnano-preset",
"direct": false,
"version": "3.10.1",
"ecosystem": "npm"
},
{
"name": "@docusaurus/cssnano-preset",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/logger",
"direct": false,
"version": "3.10.1",
"ecosystem": "npm"
},
{
"name": "@docusaurus/logger",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/mdx-loader",
"direct": false,
"version": "3.10.1",
"ecosystem": "npm"
},
{
"name": "@docusaurus/mdx-loader",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/module-type-aliases",
"direct": false,
"version": "3.10.1",
"ecosystem": "npm"
},
{
"name": "@docusaurus/module-type-aliases",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/plugin-content-blog",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/plugin-content-docs",
"direct": false,
"version": "3.10.1",
"ecosystem": "npm"
},
{
"name": "@docusaurus/plugin-content-docs",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/plugin-content-pages",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/plugin-css-cascade-layers",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/plugin-debug",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/plugin-google-analytics",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/plugin-google-gtag",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/plugin-google-tag-manager",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/plugin-sitemap",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/plugin-svgr",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/theme-classic",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/theme-common",
"direct": false,
"version": "3.10.1",
"ecosystem": "npm"
},
{
"name": "@docusaurus/theme-common",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/theme-search-algolia",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/theme-translations",
"direct": false,
"version": "3.10.1",
"ecosystem": "npm"
},
{
"name": "@docusaurus/theme-translations",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/tsconfig",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/types",
"direct": false,
"version": "3.10.1",
"ecosystem": "npm"
},
{
"name": "@docusaurus/types",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/utils",
"direct": false,
"version": "3.10.1",
"ecosystem": "npm"
},
{
"name": "@docusaurus/utils",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/utils-common",
"direct": false,
"version": "3.10.1",
"ecosystem": "npm"
},
{
"name": "@docusaurus/utils-common",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/utils-validation",
"direct": false,
"version": "3.10.1",
"ecosystem": "npm"
},
{
"name": "@docusaurus/utils-validation",
"direct": false,
"version": "3.10.2",
"ecosystem": "npm"
},
{
"name": "@easyops-cn/autocomplete.js",
"direct": false,
"version": "0.38.1",
"ecosystem": "npm"
},
{
"name": "@emnapi/core",
"direct": false,
"version": "1.10.0",
"ecosystem": "npm"
},
{
"name": "@emnapi/runtime",
"direct": false,
"version": "1.10.0",
"ecosystem": "npm"
},
{
"name": "@emnapi/wasi-threads",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "@hapi/hoek",
"direct": false,
"version": "9.3.0",
"ecosystem": "npm"
},
{
"name": "@hapi/topo",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "@isaacs/cliui",
"direct": false,
"version": "8.0.2",
"ecosystem": "npm"
},
{
"name": "@jest/schemas",
"direct": false,
"version": "29.6.3",
"ecosystem": "npm"
},
{
"name": "@jest/types",
"direct": false,
"version": "29.6.3",
"ecosystem": "npm"
},
{
"name": "@jridgewell/gen-mapping",
"direct": false,
"version": "0.3.13",
"ecosystem": "npm"
},
{
"name": "@jridgewell/remapping",
"direct": false,
"version": "2.3.5",
"ecosystem": "npm"
},
{
"name": "@jridgewell/resolve-uri",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "@jridgewell/source-map",
"direct": false,
"version": "0.3.11",
"ecosystem": "npm"
},
{
"name": "@jridgewell/sourcemap-codec",
"direct": false,
"version": "1.5.5",
"ecosystem": "npm"
},
{
"name": "@jridgewell/trace-mapping",
"direct": false,
"version": "0.3.31",
"ecosystem": "npm"
},
{
"name": "@js-joda/core",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/base64",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/base64",
"direct": false,
"version": "17.67.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/buffers",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/buffers",
"direct": false,
"version": "17.67.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/codegen",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/codegen",
"direct": false,
"version": "17.67.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/fs-core",
"direct": false,
"version": "4.57.2",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/fs-fsa",
"direct": false,
"version": "4.57.2",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/fs-node",
"direct": false,
"version": "4.57.2",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/fs-node-builtins",
"direct": false,
"version": "4.57.2",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/fs-node-to-fsa",
"direct": false,
"version": "4.57.2",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/fs-node-utils",
"direct": false,
"version": "4.57.2",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/fs-print",
"direct": false,
"version": "4.57.2",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/fs-snapshot",
"direct": false,
"version": "4.57.2",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/json-pack",
"direct": false,
"version": "1.21.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/json-pack",
"direct": false,
"version": "17.67.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/json-pointer",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/json-pointer",
"direct": false,
"version": "17.67.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/util",
"direct": false,
"version": "1.9.0",
"ecosystem": "npm"
},
{
"name": "@jsonjoy.com/util",
"direct": false,
"version": "17.67.0",
"ecosystem": "npm"
},
{
"name": "@leichtgewicht/ip-codec",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "@mdx-js/mdx",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "@module-federation/error-codes",
"direct": false,
"version": "0.22.0",
"ecosystem": "npm"
},
{
"name": "@module-federation/runtime",
"direct": false,
"version": "0.22.0",
"ecosystem": "npm"
},
{
"name": "@module-federation/runtime-core",
"direct": false,
"version": "0.22.0",
"ecosystem": "npm"
},
{
"name": "@module-federation/runtime-tools",
"direct": false,
"version": "0.22.0",
"ecosystem": "npm"
},
{
"name": "@module-federation/sdk",
"direct": false,
"version": "0.22.0",
"ecosystem": "npm"
},
{
"name": "@module-federation/webpack-bundler-runtime",
"direct": false,
"version": "0.22.0",
"ecosystem": "npm"
},
{
"name": "@napi-rs/wasm-runtime",
"direct": false,
"version": "0.2.12",
"ecosystem": "npm"
},
{
"name": "@napi-rs/wasm-runtime",
"direct": false,
"version": "1.0.7",
"ecosystem": "npm"
},
{
"name": "@noble/hashes",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "@node-rs/jieba",
"direct": false,
"version": "1.10.4",
"ecosystem": "npm"
},
{
"name": "@node-rs/jieba-android-arm-eabi",
"direct": false,
"version": "1.10.4",
"ecosystem": "npm"
},
{
"name": "@node-rs/jieba-android-arm64",
"direct": false,
"version": "1.10.4",
"ecosystem": "npm"
},
{
"name": "@node-rs/jieba-darwin-arm64",
"direct": false,
"version": "1.10.4",
"ecosystem": "npm"
},
{
"name": "@node-rs/jieba-darwin-x64",
"direct": false,
"version": "1.10.4",
"ecosystem": "npm"
},
{
"name": "@node-rs/jieba-freebsd-x64",
"direct": false,
"version": "1.10.4",
"ecosystem": "npm"
},
{
"name": "@node-rs/jieba-linux-arm-gnueabihf",
"direct": false,
"version": "1.10.4",
"ecosystem": "npm"
},
{
"name": "@node-rs/jieba-linux-arm64-gnu",
"direct": false,
"version": "1.10.4",
"ecosystem": "npm"
},
{
"name": "@node-rs/jieba-linux-arm64-musl",
"direct": false,
"version": "1.10.4",
"ecosystem": "npm"
},
{
"name": "@node-rs/jieba-linux-x64-gnu",
"direct": false,
"version": "1.10.4",
"ecosystem": "npm"
},
{
"name": "@node-rs/jieba-linux-x64-musl",
"direct": false,
"version": "1.10.4",
"ecosystem": "npm"
},
{
"name": "@node-rs/jieba-wasm32-wasi",
"direct": false,
"version": "1.10.4",
"ecosystem": "npm"
},
{
"name": "@node-rs/jieba-win32-arm64-msvc",
"direct": false,
"version": "1.10.4",
"ecosystem": "npm"
},
{
"name": "@node-rs/jieba-win32-ia32-msvc",
"direct": false,
"version": "1.10.4",
"ecosystem": "npm"
},
{
"name": "@node-rs/jieba-win32-x64-msvc",
"direct": false,
"version": "1.10.4",
"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": "@peculiar/asn1-cms",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-csr",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-ecc",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-pfx",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-pkcs8",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-pkcs9",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-rsa",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-schema",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-x509",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/asn1-x509-attr",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "@peculiar/utils",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "@peculiar/x509",
"direct": false,
"version": "1.14.3",
"ecosystem": "npm"
},
{
"name": "@pkgjs/parseargs",
"direct": false,
"version": "0.11.0",
"ecosystem": "npm"
},
{
"name": "@pnpm/config.env-replace",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@pnpm/network.ca-file",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "@pnpm/npm-conf",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "@polka/url",
"direct": false,
"version": "1.0.0-next.29",
"ecosystem": "npm"
},
{
"name": "@rspack/binding",
"direct": false,
"version": "1.7.11",
"ecosystem": "npm"
},
{
"name": "@rspack/binding-darwin-arm64",
"direct": false,
"version": "1.7.11",
"ecosystem": "npm"
},
{
"name": "@rspack/binding-darwin-x64",
"direct": false,
"version": "1.7.11",
"ecosystem": "npm"
},
{
"name": "@rspack/binding-linux-arm64-gnu",
"direct": false,
"version": "1.7.11",
"ecosystem": "npm"
},
{
"name": "@rspack/binding-linux-arm64-musl",
"direct": false,
"version": "1.7.11",
"ecosystem": "npm"
},
{
"name": "@rspack/binding-linux-x64-gnu",
"direct": false,
"version": "1.7.11",
"ecosystem": "npm"
},
{
"name": "@rspack/binding-linux-x64-musl",
"direct": false,
"version": "1.7.11",
"ecosystem": "npm"
},
{
"name": "@rspack/binding-wasm32-wasi",
"direct": false,
"version": "1.7.11",
"ecosystem": "npm"
},
{
"name": "@rspack/binding-win32-arm64-msvc",
"direct": false,
"version": "1.7.11",
"ecosystem": "npm"
},
{
"name": "@rspack/binding-win32-ia32-msvc",
"direct": false,
"version": "1.7.11",
"ecosystem": "npm"
},
{
"name": "@rspack/binding-win32-x64-msvc",
"direct": false,
"version": "1.7.11",
"ecosystem": "npm"
},
{
"name": "@rspack/core",
"direct": false,
"version": "1.7.11",
"ecosystem": "npm"
},
{
"name": "@rspack/lite-tapable",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "@sideway/address",
"direct": false,
"version": "4.1.5",
"ecosystem": "npm"
},
{
"name": "@sideway/formula",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "@sideway/pinpoint",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "@sinclair/typebox",
"direct": false,
"version": "0.27.10",
"ecosystem": "npm"
},
{
"name": "@sindresorhus/is",
"direct": false,
"version": "4.6.0",
"ecosystem": "npm"
},
{
"name": "@sindresorhus/is",
"direct": false,
"version": "5.6.0",
"ecosystem": "npm"
},
{
"name": "@slorber/remark-comment",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "@socket.io/component-emitter",
"direct": false,
"version": "3.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/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-svgo",
"direct": false,
"version": "8.1.0",
"ecosystem": "npm"
},
{
"name": "@svgr/webpack",
"direct": false,
"version": "8.1.0",
"ecosystem": "npm"
},
{
"name": "@swc/core",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/core-darwin-arm64",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/core-darwin-x64",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/core-linux-arm-gnueabihf",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/core-linux-arm64-gnu",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/core-linux-arm64-musl",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/core-linux-ppc64-gnu",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/core-linux-s390x-gnu",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/core-linux-x64-gnu",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/core-linux-x64-musl",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/core-win32-arm64-msvc",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/core-win32-ia32-msvc",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/core-win32-x64-msvc",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/counter",
"direct": false,
"version": "0.1.3",
"ecosystem": "npm"
},
{
"name": "@swc/html",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/html-darwin-arm64",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/html-darwin-x64",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/html-linux-arm-gnueabihf",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/html-linux-arm64-gnu",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/html-linux-arm64-musl",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/html-linux-ppc64-gnu",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/html-linux-s390x-gnu",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/html-linux-x64-gnu",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/html-linux-x64-musl",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/html-win32-arm64-msvc",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/html-win32-ia32-msvc",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/html-win32-x64-msvc",
"direct": false,
"version": "1.15.43",
"ecosystem": "npm"
},
{
"name": "@swc/types",
"direct": false,
"version": "0.1.27",
"ecosystem": "npm"
},
{
"name": "@szmarczak/http-timer",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "@tybys/wasm-util",
"direct": false,
"version": "0.10.2",
"ecosystem": "npm"
},
{
"name": "@types/body-parser",
"direct": false,
"version": "1.19.6",
"ecosystem": "npm"
},
{
"name": "@types/bonjour",
"direct": false,
"version": "3.5.13",
"ecosystem": "npm"
},
{
"name": "@types/connect",
"direct": false,
"version": "3.4.38",
"ecosystem": "npm"
},
{
"name": "@types/connect-history-api-fallback",
"direct": false,
"version": "1.5.4",
"ecosystem": "npm"
},
{
"name": "@types/cors",
"direct": false,
"version": "2.8.13",
"ecosystem": "npm"
},
{
"name": "@types/debug",
"direct": false,
"version": "4.1.13",
"ecosystem": "npm"
},
{
"name": "@types/eslint",
"direct": false,
"version": "8.4.10",
"ecosystem": "npm"
},
{
"name": "@types/eslint-scope",
"direct": false,
"version": "3.7.7",
"ecosystem": "npm"
},
{
"name": "@types/estree",
"direct": false,
"version": "1.0.0",
"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/express",
"direct": false,
"version": "4.17.25",
"ecosystem": "npm"
},
{
"name": "@types/express",
"direct": false,
"version": "5.0.6",
"ecosystem": "npm"
},
{
"name": "@types/express-serve-static-core",
"direct": false,
"version": "4.19.8",
"ecosystem": "npm"
},
{
"name": "@types/express-serve-static-core",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "@types/hast",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "@types/history",
"direct": false,
"version": "4.7.11",
"ecosystem": "npm"
},
{
"name": "@types/html-minifier-terser",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "@types/http-cache-semantics",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "@types/http-errors",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "@types/http-proxy",
"direct": false,
"version": "1.17.17",
"ecosystem": "npm"
},
{
"name": "@types/istanbul-lib-coverage",
"direct": false,
"version": "2.0.6",
"ecosystem": "npm"
},
{
"name": "@types/istanbul-lib-report",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "@types/istanbul-reports",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "@types/json-schema",
"direct": false,
"version": "7.0.11",
"ecosystem": "npm"
},
{
"name": "@types/json-schema",
"direct": false,
"version": "7.0.15",
"ecosystem": "npm"
},
{
"name": "@types/mdast",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "@types/mdx",
"direct": false,
"version": "2.0.13",
"ecosystem": "npm"
},
{
"name": "@types/mime",
"direct": false,
"version": "1.3.5",
"ecosystem": "npm"
},
{
"name": "@types/ms",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "17.0.45",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "18.11.18",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "25.9.1",
"ecosystem": "npm"
},
{
"name": "@types/prismjs",
"direct": false,
"version": "1.26.6",
"ecosystem": "npm"
},
{
"name": "@types/qs",
"direct": false,
"version": "6.15.1",
"ecosystem": "npm"
},
{
"name": "@types/range-parser",
"direct": false,
"version": "1.2.7",
"ecosystem": "npm"
},
{
"name": "@types/react",
"direct": false,
"version": "19.2.15",
"ecosystem": "npm"
},
{
"name": "@types/react-router",
"direct": false,
"version": "5.1.20",
"ecosystem": "npm"
},
{
"name": "@types/react-router-config",
"direct": false,
"version": "5.0.11",
"ecosystem": "npm"
},
{
"name": "@types/react-router-dom",
"direct": false,
"version": "5.3.3",
"ecosystem": "npm"
},
{
"name": "@types/retry",
"direct": false,
"version": "0.12.2",
"ecosystem": "npm"
},
{
"name": "@types/sax",
"direct": false,
"version": "1.2.7",
"ecosystem": "npm"
},
{
"name": "@types/send",
"direct": false,
"version": "0.17.6",
"ecosystem": "npm"
},
{
"name": "@types/send",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "@types/serve-index",
"direct": false,
"version": "1.9.4",
"ecosystem": "npm"
},
{
"name": "@types/serve-static",
"direct": false,
"version": "1.15.10",
"ecosystem": "npm"
},
{
"name": "@types/serve-static",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "@types/sockjs",
"direct": false,
"version": "0.3.36",
"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/ws",
"direct": false,
"version": "8.18.1",
"ecosystem": "npm"
},
{
"name": "@types/yargs",
"direct": false,
"version": "17.0.35",
"ecosystem": "npm"
},
{
"name": "@types/yargs-parser",
"direct": false,
"version": "21.0.3",
"ecosystem": "npm"
},
{
"name": "@ungap/structured-clone",
"direct": false,
"version": "1.3.1",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/ast",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/floating-point-hex-parser",
"direct": false,
"version": "1.13.2",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/helper-api-error",
"direct": false,
"version": "1.13.2",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/helper-buffer",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/helper-numbers",
"direct": false,
"version": "1.13.2",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/helper-wasm-bytecode",
"direct": false,
"version": "1.13.2",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/helper-wasm-section",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/ieee754",
"direct": false,
"version": "1.13.2",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/leb128",
"direct": false,
"version": "1.13.2",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/utf8",
"direct": false,
"version": "1.13.2",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/wasm-edit",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/wasm-gen",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/wasm-opt",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/wasm-parser",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "@webassemblyjs/wast-printer",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "@webpack-cli/configtest",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "@webpack-cli/info",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "@webpack-cli/serve",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "@xtuc/ieee754",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "@xtuc/long",
"direct": false,
"version": "4.2.2",
"ecosystem": "npm"
},
{
"name": "accepts",
"direct": false,
"version": "1.3.8",
"ecosystem": "npm"
},
{
"name": "acorn",
"direct": false,
"version": "8.16.0",
"ecosystem": "npm"
},
{
"name": "acorn-import-phases",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "acorn-jsx",
"direct": false,
"version": "5.3.2",
"ecosystem": "npm"
},
{
"name": "acorn-walk",
"direct": false,
"version": "8.3.5",
"ecosystem": "npm"
},
{
"name": "address",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "address",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "aggregate-error",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "ajv",
"direct": false,
"version": "6.15.0",
"ecosystem": "npm"
},
{
"name": "ajv",
"direct": false,
"version": "8.20.0",
"ecosystem": "npm"
},
{
"name": "ajv-formats",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "ajv-keywords",
"direct": false,
"version": "3.5.2",
"ecosystem": "npm"
},
{
"name": "ajv-keywords",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "algoliasearch",
"direct": false,
"version": "5.52.1",
"ecosystem": "npm"
},
{
"name": "algoliasearch-helper",
"direct": false,
"version": "3.29.1",
"ecosystem": "npm"
},
{
"name": "ansi-align",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "ansi-html-community",
"direct": false,
"version": "0.0.8",
"ecosystem": "npm"
},
{
"name": "ansi-regex",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "ansi-regex",
"direct": false,
"version": "6.2.2",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "6.2.3",
"ecosystem": "npm"
},
{
"name": "ansis",
"direct": false,
"version": "3.17.0",
"ecosystem": "npm"
},
{
"name": "anymatch",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "arg",
"direct": false,
"version": "5.0.2",
"ecosystem": "npm"
},
{
"name": "argparse",
"direct": false,
"version": "1.0.10",
"ecosystem": "npm"
},
{
"name": "argparse",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "array-flatten",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "array-union",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "asn1js",
"direct": false,
"version": "3.0.10",
"ecosystem": "npm"
},
{
"name": "astring",
"direct": false,
"version": "1.9.0",
"ecosystem": "npm"
},
{
"name": "autoprefixer",
"direct": false,
"version": "10.5.0",
"ecosystem": "npm"
},
{
"name": "babel-loader",
"direct": false,
"version": "9.2.1",
"ecosystem": "npm"
},
{
"name": "babel-plugin-dynamic-import-node",
"direct": false,
"version": "2.3.3",
"ecosystem": "npm"
},
{
"name": "babel-plugin-polyfill-corejs2",
"direct": false,
"version": "0.4.17",
"ecosystem": "npm"
},
{
"name": "babel-plugin-polyfill-corejs3",
"direct": false,
"version": "0.13.0",
"ecosystem": "npm"
},
{
"name": "babel-plugin-polyfill-corejs3",
"direct": false,
"version": "0.14.2",
"ecosystem": "npm"
},
{
"name": "babel-plugin-polyfill-regenerator",
"direct": false,
"version": "0.6.8",
"ecosystem": "npm"
},
{
"name": "bail",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "balanced-match",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "base64id",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "baseline-browser-mapping",
"direct": false,
"version": "2.10.32",
"ecosystem": "npm"
},
{
"name": "batch",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "big.js",
"direct": false,
"version": "5.2.2",
"ecosystem": "npm"
},
{
"name": "binary-extensions",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "binary-extensions",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "body-parser",
"direct": false,
"version": "1.20.3",
"ecosystem": "npm"
},
{
"name": "body-parser",
"direct": false,
"version": "1.20.5",
"ecosystem": "npm"
},
{
"name": "bonjour-service",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "boolbase",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "boxen",
"direct": false,
"version": "6.2.1",
"ecosystem": "npm"
},
{
"name": "boxen",
"direct": false,
"version": "7.1.1",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "1.1.11",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "1.1.15",
"ecosystem": "npm"
},
{
"name": "brace-expansion",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "braces",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "braces",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "browser-stdout",
"direct": false,
"version": "1.3.1",
"ecosystem": "npm"
},
{
"name": "browserslist",
"direct": false,
"version": "4.28.2",
"ecosystem": "npm"
},
{
"name": "buffer-from",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "bundle-name",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "bytes",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "bytes",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "bytestreamjs",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "cacheable-lookup",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "cacheable-request",
"direct": false,
"version": "10.2.14",
"ecosystem": "npm"
},
{
"name": "call-bind",
"direct": false,
"version": "1.0.9",
"ecosystem": "npm"
},
{
"name": "call-bind-apply-helpers",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "call-bound",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "callsites",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "camel-case",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "camelcase",
"direct": false,
"version": "6.3.0",
"ecosystem": "npm"
},
{
"name": "camelcase",
"direct": false,
"version": "7.0.1",
"ecosystem": "npm"
},
{
"name": "caniuse-api",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "caniuse-lite",
"direct": false,
"version": "1.0.30001793",
"ecosystem": "npm"
},
{
"name": "ccount",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "chalk",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "chalk",
"direct": false,
"version": "5.6.2",
"ecosystem": "npm"
},
{
"name": "char-regex",
"direct": false,
"version": "1.0.2",
"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": "cheerio",
"direct": false,
"version": "1.0.0-rc.12",
"ecosystem": "npm"
},
{
"name": "cheerio",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "cheerio-select",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "chokidar",
"direct": false,
"version": "3.5.3",
"ecosystem": "npm"
},
{
"name": "chokidar",
"direct": false,
"version": "3.6.0",
"ecosystem": "npm"
},
{
"name": "chokidar",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "chrome-trace-event",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "chrome-trace-event",
"direct": false,
"version": "1.0.4",
"ecosystem": "npm"
},
{
"name": "ci-info",
"direct": false,
"version": "3.9.0",
"ecosystem": "npm"
},
{
"name": "clean-css",
"direct": false,
"version": "5.3.3",
"ecosystem": "npm"
},
{
"name": "clean-stack",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "cli-boxes",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "cli-table3",
"direct": false,
"version": "0.6.5",
"ecosystem": "npm"
},
{
"name": "cliui",
"direct": false,
"version": "7.0.4",
"ecosystem": "npm"
},
{
"name": "cliui",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "clone-deep",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "collapse-white-space",
"direct": false,
"version": "2.1.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": "colord",
"direct": false,
"version": "2.9.3",
"ecosystem": "npm"
},
{
"name": "colorette",
"direct": false,
"version": "2.0.19",
"ecosystem": "npm"
},
{
"name": "colorette",
"direct": false,
"version": "2.0.20",
"ecosystem": "npm"
},
{
"name": "combine-promises",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "comlink",
"direct": false,
"version": "4.4.2",
"ecosystem": "npm"
},
{
"name": "comma-separated-tokens",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "10.0.1",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "12.1.0",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "2.20.3",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "commander",
"direct": false,
"version": "8.3.0",
"ecosystem": "npm"
},
{
"name": "common-path-prefix",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "compressible",
"direct": false,
"version": "2.0.18",
"ecosystem": "npm"
},
{
"name": "compression",
"direct": false,
"version": "1.8.1",
"ecosystem": "npm"
},
{
"name": "concat-map",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "config-chain",
"direct": false,
"version": "1.1.13",
"ecosystem": "npm"
},
{
"name": "configstore",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "connect",
"direct": false,
"version": "3.7.0",
"ecosystem": "npm"
},
{
"name": "connect-history-api-fallback",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "consola",
"direct": false,
"version": "3.4.2",
"ecosystem": "npm"
},
{
"name": "content-disposition",
"direct": false,
"version": "0.5.2",
"ecosystem": "npm"
},
{
"name": "content-disposition",
"direct": false,
"version": "0.5.4",
"ecosystem": "npm"
},
{
"name": "content-type",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "convert-source-map",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "cookie",
"direct": false,
"version": "0.7.2",
"ecosystem": "npm"
},
{
"name": "cookie-signature",
"direct": false,
"version": "1.0.7",
"ecosystem": "npm"
},
{
"name": "copy-text-to-clipboard",
"direct": false,
"version": "3.2.2",
"ecosystem": "npm"
},
{
"name": "copy-webpack-plugin",
"direct": false,
"version": "11.0.0",
"ecosystem": "npm"
},
{
"name": "copy-webpack-plugin",
"direct": false,
"version": "9.1.0",
"ecosystem": "npm"
},
{
"name": "core-js",
"direct": false,
"version": "3.49.0",
"ecosystem": "npm"
},
{
"name": "core-js-compat",
"direct": false,
"version": "3.49.0",
"ecosystem": "npm"
},
{
"name": "core-util-is",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "cors",
"direct": false,
"version": "2.8.5",
"ecosystem": "npm"
},
{
"name": "cosmiconfig",
"direct": false,
"version": "8.3.6",
"ecosystem": "npm"
},
{
"name": "cross-spawn",
"direct": false,
"version": "7.0.3",
"ecosystem": "npm"
},
{
"name": "cross-spawn",
"direct": false,
"version": "7.0.6",
"ecosystem": "npm"
},
{
"name": "crypto-random-string",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "css-blank-pseudo",
"direct": false,
"version": "7.0.1",
"ecosystem": "npm"
},
{
"name": "css-declaration-sorter",
"direct": false,
"version": "7.4.0",
"ecosystem": "npm"
},
{
"name": "css-has-pseudo",
"direct": false,
"version": "7.0.3",
"ecosystem": "npm"
},
{
"name": "css-loader",
"direct": false,
"version": "6.11.0",
"ecosystem": "npm"
},
{
"name": "css-minimizer-webpack-plugin",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "css-prefers-color-scheme",
"direct": false,
"version": "10.0.0",
"ecosystem": "npm"
},
{
"name": "css-select",
"direct": false,
"version": "4.3.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": "2.3.1",
"ecosystem": "npm"
},
{
"name": "css-what",
"direct": false,
"version": "6.2.2",
"ecosystem": "npm"
},
{
"name": "cssdb",
"direct": false,
"version": "8.9.0",
"ecosystem": "npm"
},
{
"name": "cssesc",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "cssnano",
"direct": false,
"version": "6.1.2",
"ecosystem": "npm"
},
{
"name": "cssnano-preset-advanced",
"direct": false,
"version": "6.1.2",
"ecosystem": "npm"
},
{
"name": "cssnano-preset-default",
"direct": false,
"version": "6.1.2",
"ecosystem": "npm"
},
{
"name": "cssnano-utils",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "csso",
"direct": false,
"version": "5.0.5",
"ecosystem": "npm"
},
{
"name": "csstype",
"direct": false,
"version": "3.2.3",
"ecosystem": "npm"
},
{
"name": "custom-event",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "date-format",
"direct": false,
"version": "4.0.14",
"ecosystem": "npm"
},
{
"name": "debounce",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "2.6.9",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "4.3.4",
"ecosystem": "npm"
},
{
"name": "debug",
"direct": false,
"version": "4.4.3",
"ecosystem": "npm"
},
{
"name": "decamelize",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "decode-named-character-reference",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "decompress-response",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "deep-extend",
"direct": false,
"version": "0.6.0",
"ecosystem": "npm"
},
{
"name": "deepmerge",
"direct": false,
"version": "4.3.1",
"ecosystem": "npm"
},
{
"name": "default-browser",
"direct": false,
"version": "5.5.0",
"ecosystem": "npm"
},
{
"name": "default-browser-id",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "defer-to-connect",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "define-data-property",
"direct": false,
"version": "1.1.4",
"ecosystem": "npm"
},
{
"name": "define-lazy-prop",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "define-lazy-prop",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "define-properties",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "depd",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "depd",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "dequal",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "destroy",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "detect-libc",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "detect-node",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "detect-port",
"direct": false,
"version": "1.6.1",
"ecosystem": "npm"
},
{
"name": "detect-port",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "devlop",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "di",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "diff",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "dir-glob",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "dns-packet",
"direct": false,
"version": "5.6.1",
"ecosystem": "npm"
},
{
"name": "dom-converter",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "dom-serialize",
"direct": false,
"version": "2.2.1",
"ecosystem": "npm"
},
{
"name": "dom-serializer",
"direct": false,
"version": "1.4.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": "4.3.1",
"ecosystem": "npm"
},
{
"name": "domhandler",
"direct": false,
"version": "5.0.3",
"ecosystem": "npm"
},
{
"name": "domutils",
"direct": false,
"version": "2.8.0",
"ecosystem": "npm"
},
{
"name": "domutils",
"direct": false,
"version": "3.2.2",
"ecosystem": "npm"
},
{
"name": "dot-case",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "dot-prop",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "dunder-proto",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "duplexer",
"direct": false,
"version": "0.1.2",
"ecosystem": "npm"
},
{
"name": "eastasianwidth",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "ee-first",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "electron-to-chromium",
"direct": false,
"version": "1.5.361",
"ecosystem": "npm"
},
{
"name": "electron-to-chromium",
"direct": false,
"version": "1.5.362",
"ecosystem": "npm"
},
{
"name": "emoji-regex",
"direct": false,
"version": "8.0.0",
"ecosystem": "npm"
},
{
"name": "emoji-regex",
"direct": false,
"version": "9.2.2",
"ecosystem": "npm"
},
{
"name": "emojilib",
"direct": false,
"version": "2.4.0",
"ecosystem": "npm"
},
{
"name": "emojis-list",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "emoticon",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "encodeurl",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "encodeurl",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "encoding-sniffer",
"direct": false,
"version": "0.2.1",
"ecosystem": "npm"
},
{
"name": "engine.io",
"direct": false,
"version": "6.6.8",
"ecosystem": "npm"
},
{
"name": "engine.io-parser",
"direct": false,
"version": "5.2.3",
"ecosystem": "npm"
},
{
"name": "enhanced-resolve",
"direct": false,
"version": "5.22.0",
"ecosystem": "npm"
},
{
"name": "ent",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "4.5.0",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "entities",
"direct": false,
"version": "7.0.1",
"ecosystem": "npm"
},
{
"name": "envinfo",
"direct": false,
"version": "7.21.0",
"ecosystem": "npm"
},
{
"name": "error-ex",
"direct": false,
"version": "1.3.4",
"ecosystem": "npm"
},
{
"name": "es-define-property",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "es-errors",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "es-module-lexer",
"direct": false,
"version": "1.7.0",
"ecosystem": "npm"
},
{
"name": "es-module-lexer",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "es-object-atoms",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "esast-util-from-estree",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "esast-util-from-js",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "escalade",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "escalade",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "escape-goat",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "escape-html",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "escape-string-regexp",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "escape-string-regexp",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "eslint-scope",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "esprima",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "esrecurse",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "estraverse",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "estraverse",
"direct": false,
"version": "5.3.0",
"ecosystem": "npm"
},
{
"name": "estree-util-attach-comments",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "estree-util-build-jsx",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "estree-util-is-identifier-name",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "estree-util-scope",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "estree-util-to-js",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "estree-util-value-to-estree",
"direct": false,
"version": "3.5.0",
"ecosystem": "npm"
},
{
"name": "estree-util-visit",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "estree-walker",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "esutils",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "eta",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "etag",
"direct": false,
"version": "1.8.1",
"ecosystem": "npm"
},
{
"name": "eval",
"direct": false,
"version": "0.1.8",
"ecosystem": "npm"
},
{
"name": "eventemitter3",
"direct": false,
"version": "4.0.7",
"ecosystem": "npm"
},
{
"name": "events",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "execa",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "express",
"direct": false,
"version": "4.22.2",
"ecosystem": "npm"
},
{
"name": "extend",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "extend-shallow",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "fast-deep-equal",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "fast-glob",
"direct": false,
"version": "3.3.3",
"ecosystem": "npm"
},
{
"name": "fast-json-stable-stringify",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "fast-uri",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "fastest-levenshtein",
"direct": false,
"version": "1.0.16",
"ecosystem": "npm"
},
{
"name": "fastq",
"direct": false,
"version": "1.20.1",
"ecosystem": "npm"
},
{
"name": "fault",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "faye-websocket",
"direct": false,
"version": "0.11.4",
"ecosystem": "npm"
},
{
"name": "feed",
"direct": false,
"version": "4.2.2",
"ecosystem": "npm"
},
{
"name": "file-loader",
"direct": false,
"version": "6.2.0",
"ecosystem": "npm"
},
{
"name": "fill-range",
"direct": false,
"version": "7.0.1",
"ecosystem": "npm"
},
{
"name": "fill-range",
"direct": false,
"version": "7.1.1",
"ecosystem": "npm"
},
{
"name": "finalhandler",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "finalhandler",
"direct": false,
"version": "1.3.2",
"ecosystem": "npm"
},
{
"name": "find-cache-dir",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "find-up",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "find-up",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "find-up",
"direct": false,
"version": "6.3.0",
"ecosystem": "npm"
},
{
"name": "flat",
"direct": false,
"version": "5.0.2",
"ecosystem": "npm"
},
{
"name": "flatted",
"direct": false,
"version": "3.2.7",
"ecosystem": "npm"
},
{
"name": "follow-redirects",
"direct": false,
"version": "1.15.2",
"ecosystem": "npm"
},
{
"name": "follow-redirects",
"direct": false,
"version": "1.16.0",
"ecosystem": "npm"
},
{
"name": "foreground-child",
"direct": false,
"version": "3.3.1",
"ecosystem": "npm"
},
{
"name": "form-data-encoder",
"direct": false,
"version": "2.1.4",
"ecosystem": "npm"
},
{
"name": "format",
"direct": false,
"version": "0.2.2",
"ecosystem": "npm"
},
{
"name": "format-util",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "forwarded",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "fraction.js",
"direct": false,
"version": "5.3.4",
"ecosystem": "npm"
},
{
"name": "fresh",
"direct": false,
"version": "0.5.2",
"ecosystem": "npm"
},
{
"name": "fs-extra",
"direct": false,
"version": "10.1.0",
"ecosystem": "npm"
},
{
"name": "fs-extra",
"direct": false,
"version": "11.3.5",
"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": "function-bind",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "gensync",
"direct": false,
"version": "1.0.0-beta.2",
"ecosystem": "npm"
},
{
"name": "get-caller-file",
"direct": false,
"version": "2.0.5",
"ecosystem": "npm"
},
{
"name": "get-intrinsic",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "get-own-enumerable-property-symbols",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "get-proto",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "get-stream",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "github-slugger",
"direct": false,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "glob",
"direct": false,
"version": "10.5.0",
"ecosystem": "npm"
},
{
"name": "glob",
"direct": false,
"version": "7.2.3",
"ecosystem": "npm"
},
{
"name": "glob-parent",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "glob-parent",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "glob-to-regex.js",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "glob-to-regexp",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "global-dirs",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "globby",
"direct": false,
"version": "11.1.0",
"ecosystem": "npm"
},
{
"name": "globby",
"direct": false,
"version": "13.2.2",
"ecosystem": "npm"
},
{
"name": "gopd",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "got",
"direct": false,
"version": "12.6.1",
"ecosystem": "npm"
},
{
"name": "graceful-fs",
"direct": false,
"version": "4.2.10",
"ecosystem": "npm"
},
{
"name": "graceful-fs",
"direct": false,
"version": "4.2.11",
"ecosystem": "npm"
},
{
"name": "gray-matter",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "gzip-size",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "handle-thing",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "has-flag",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "has-property-descriptors",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "has-symbols",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "has-yarn",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "hasown",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "hast-util-from-parse5",
"direct": false,
"version": "8.0.3",
"ecosystem": "npm"
},
{
"name": "hast-util-parse-selector",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "hast-util-raw",
"direct": false,
"version": "9.1.0",
"ecosystem": "npm"
},
{
"name": "hast-util-to-estree",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "hast-util-to-jsx-runtime",
"direct": false,
"version": "2.3.6",
"ecosystem": "npm"
},
{
"name": "hast-util-to-parse5",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "hast-util-whitespace",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "hastscript",
"direct": false,
"version": "9.0.1",
"ecosystem": "npm"
},
{
"name": "he",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "history",
"direct": false,
"version": "4.10.1",
"ecosystem": "npm"
},
{
"name": "hoist-non-react-statics",
"direct": false,
"version": "3.3.2",
"ecosystem": "npm"
},
{
"name": "hpack.js",
"direct": false,
"version": "2.1.6",
"ecosystem": "npm"
},
{
"name": "html-escaper",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "html-minifier-terser",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "html-minifier-terser",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "html-tags",
"direct": false,
"version": "3.3.1",
"ecosystem": "npm"
},
{
"name": "html-void-elements",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "html-webpack-plugin",
"direct": false,
"version": "5.6.7",
"ecosystem": "npm"
},
{
"name": "htmlparser2",
"direct": false,
"version": "10.1.0",
"ecosystem": "npm"
},
{
"name": "htmlparser2",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "htmlparser2",
"direct": false,
"version": "8.0.2",
"ecosystem": "npm"
},
{
"name": "http-cache-semantics",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "http-deceiver",
"direct": false,
"version": "1.2.7",
"ecosystem": "npm"
},
{
"name": "http-errors",
"direct": false,
"version": "1.8.1",
"ecosystem": "npm"
},
{
"name": "http-errors",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "http-errors",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "http-parser-js",
"direct": false,
"version": "0.5.10",
"ecosystem": "npm"
},
{
"name": "http-proxy",
"direct": false,
"version": "1.18.1",
"ecosystem": "npm"
},
{
"name": "http-proxy-middleware",
"direct": false,
"version": "2.0.9",
"ecosystem": "npm"
},
{
"name": "http2-wrapper",
"direct": false,
"version": "2.2.1",
"ecosystem": "npm"
},
{
"name": "human-signals",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "hyperdyperid",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "iconv-lite",
"direct": false,
"version": "0.4.24",
"ecosystem": "npm"
},
{
"name": "iconv-lite",
"direct": false,
"version": "0.6.3",
"ecosystem": "npm"
},
{
"name": "icss-utils",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "ignore",
"direct": false,
"version": "5.3.2",
"ecosystem": "npm"
},
{
"name": "image-size",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "immediate",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "import-fresh",
"direct": false,
"version": "3.3.1",
"ecosystem": "npm"
},
{
"name": "import-lazy",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "import-local",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "imurmurhash",
"direct": false,
"version": "0.1.4",
"ecosystem": "npm"
},
{
"name": "indent-string",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "infima",
"direct": false,
"version": "0.2.0-alpha.45",
"ecosystem": "npm"
},
{
"name": "inflight",
"direct": false,
"version": "1.0.6",
"ecosystem": "npm"
},
{
"name": "inherits",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "ini",
"direct": false,
"version": "1.3.8",
"ecosystem": "npm"
},
{
"name": "ini",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "inline-style-parser",
"direct": false,
"version": "0.2.7",
"ecosystem": "npm"
},
{
"name": "interpret",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "invariant",
"direct": false,
"version": "2.2.4",
"ecosystem": "npm"
},
{
"name": "ipaddr.js",
"direct": false,
"version": "1.9.1",
"ecosystem": "npm"
},
{
"name": "ipaddr.js",
"direct": false,
"version": "2.4.0",
"ecosystem": "npm"
},
{
"name": "is-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-ci",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "is-core-module",
"direct": false,
"version": "2.16.2",
"ecosystem": "npm"
},
{
"name": "is-decimal",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "is-docker",
"direct": false,
"version": "2.2.1",
"ecosystem": "npm"
},
{
"name": "is-docker",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "is-extendable",
"direct": false,
"version": "0.1.1",
"ecosystem": "npm"
},
{
"name": "is-extglob",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "is-fullwidth-code-point",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "is-glob",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "is-hexadecimal",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "is-inside-container",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "is-installed-globally",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "is-network-error",
"direct": false,
"version": "1.3.2",
"ecosystem": "npm"
},
{
"name": "is-npm",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "is-number",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "is-obj",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "is-obj",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "is-path-inside",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "is-plain-obj",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "is-plain-obj",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "is-plain-obj",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "is-plain-object",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "is-regexp",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "is-stream",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "is-typedarray",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "is-unicode-supported",
"direct": false,
"version": "0.1.0",
"ecosystem": "npm"
},
{
"name": "is-wsl",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "is-wsl",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "is-yarn-global",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "isarray",
"direct": false,
"version": "0.0.1",
"ecosystem": "npm"
},
{
"name": "isarray",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "isbinaryfile",
"direct": false,
"version": "4.0.10",
"ecosystem": "npm"
},
{
"name": "isexe",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "isobject",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "jackspeak",
"direct": false,
"version": "3.4.3",
"ecosystem": "npm"
},
{
"name": "jest-util",
"direct": false,
"version": "29.7.0",
"ecosystem": "npm"
},
{
"name": "jest-worker",
"direct": false,
"version": "27.5.1",
"ecosystem": "npm"
},
{
"name": "jest-worker",
"direct": false,
"version": "29.7.0",
"ecosystem": "npm"
},
{
"name": "jiti",
"direct": false,
"version": "1.21.7",
"ecosystem": "npm"
},
{
"name": "joi",
"direct": false,
"version": "17.13.4",
"ecosystem": "npm"
},
{
"name": "js-tokens",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "js-yaml",
"direct": false,
"version": "3.14.2",
"ecosystem": "npm"
},
{
"name": "js-yaml",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "jsesc",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "json-buffer",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "json-parse-even-better-errors",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "json-schema-traverse",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "json-schema-traverse",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "json5",
"direct": false,
"version": "2.2.3",
"ecosystem": "npm"
},
{
"name": "jsonfile",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "jsonfile",
"direct": false,
"version": "6.2.1",
"ecosystem": "npm"
},
{
"name": "karma-chrome-launcher",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "karma-mocha",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "karma-sourcemap-loader",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "karma-webpack",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "keyv",
"direct": false,
"version": "4.5.4",
"ecosystem": "npm"
},
{
"name": "kind-of",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "klaw-sync",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "kleur",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "kotlin-web-helpers",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "latest-version",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "launch-editor",
"direct": false,
"version": "2.13.2",
"ecosystem": "npm"
},
{
"name": "leven",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "lightningcss",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-android-arm64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-darwin-arm64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-darwin-x64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-freebsd-x64",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm-gnueabihf",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm64-gnu",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-arm64-musl",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-x64-gnu",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-linux-x64-musl",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-win32-arm64-msvc",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lightningcss-win32-x64-msvc",
"direct": false,
"version": "1.32.0",
"ecosystem": "npm"
},
{
"name": "lilconfig",
"direct": false,
"version": "3.1.3",
"ecosystem": "npm"
},
{
"name": "lines-and-columns",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "loader-runner",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "loader-runner",
"direct": false,
"version": "4.3.2",
"ecosystem": "npm"
},
{
"name": "loader-utils",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "locate-path",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "locate-path",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "locate-path",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "lodash",
"direct": false,
"version": "4.17.21",
"ecosystem": "npm"
},
{
"name": "lodash",
"direct": false,
"version": "4.18.1",
"ecosystem": "npm"
},
{
"name": "lodash.debounce",
"direct": false,
"version": "4.0.8",
"ecosystem": "npm"
},
{
"name": "lodash.memoize",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "lodash.uniq",
"direct": false,
"version": "4.5.0",
"ecosystem": "npm"
},
{
"name": "log-symbols",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "log4js",
"direct": false,
"version": "6.7.1",
"ecosystem": "npm"
},
{
"name": "longest-streak",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "loose-envify",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "lower-case",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "lowercase-keys",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "10.4.3",
"ecosystem": "npm"
},
{
"name": "lru-cache",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "lunr",
"direct": false,
"version": "2.3.9",
"ecosystem": "npm"
},
{
"name": "lunr-languages",
"direct": false,
"version": "1.20.0",
"ecosystem": "npm"
},
{
"name": "mark.js",
"direct": false,
"version": "8.11.1",
"ecosystem": "npm"
},
{
"name": "markdown-extensions",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "markdown-table",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "math-intrinsics",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "mdast-util-directive",
"direct": false,
"version": "3.1.0",
"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-frontmatter",
"direct": false,
"version": "2.0.1",
"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",
"direct": false,
"version": "3.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.0.30",
"ecosystem": "npm"
},
{
"name": "media-typer",
"direct": false,
"version": "0.3.0",
"ecosystem": "npm"
},
{
"name": "memfs",
"direct": false,
"version": "4.57.2",
"ecosystem": "npm"
},
{
"name": "merge-descriptors",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "merge-stream",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "merge2",
"direct": false,
"version": "1.4.1",
"ecosystem": "npm"
},
{
"name": "methods",
"direct": false,
"version": "1.1.2",
"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-directive",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "micromark-extension-frontmatter",
"direct": false,
"version": "2.0.0",
"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-extension-mdx-expression",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-extension-mdx-jsx",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "micromark-extension-mdx-md",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-mdxjs",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "micromark-extension-mdxjs-esm",
"direct": false,
"version": "3.0.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-mdx-expression",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "micromark-factory-space",
"direct": false,
"version": "1.1.0",
"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": "1.2.0",
"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-events-to-acorn",
"direct": false,
"version": "2.0.3",
"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": "1.1.0",
"ecosystem": "npm"
},
{
"name": "micromark-util-symbol",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "micromark-util-types",
"direct": false,
"version": "1.1.0",
"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": "mime",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "mime",
"direct": false,
"version": "2.6.0",
"ecosystem": "npm"
},
{
"name": "mime-db",
"direct": false,
"version": "1.33.0",
"ecosystem": "npm"
},
{
"name": "mime-db",
"direct": false,
"version": "1.52.0",
"ecosystem": "npm"
},
{
"name": "mime-db",
"direct": false,
"version": "1.54.0",
"ecosystem": "npm"
},
{
"name": "mime-types",
"direct": false,
"version": "2.1.18",
"ecosystem": "npm"
},
{
"name": "mime-types",
"direct": false,
"version": "2.1.35",
"ecosystem": "npm"
},
{
"name": "mime-types",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "mimic-fn",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "mimic-response",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "mimic-response",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "mini-css-extract-plugin",
"direct": false,
"version": "2.10.2",
"ecosystem": "npm"
},
{
"name": "minimalistic-assert",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": false,
"version": "3.1.5",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": false,
"version": "9.0.9",
"ecosystem": "npm"
},
{
"name": "minimist",
"direct": false,
"version": "1.2.7",
"ecosystem": "npm"
},
{
"name": "minimist",
"direct": false,
"version": "1.2.8",
"ecosystem": "npm"
},
{
"name": "minipass",
"direct": false,
"version": "7.1.3",
"ecosystem": "npm"
},
{
"name": "mkdirp",
"direct": false,
"version": "0.5.6",
"ecosystem": "npm"
},
{
"name": "mocha",
"direct": false,
"version": "11.7.5",
"ecosystem": "npm"
},
{
"name": "mrmime",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "multicast-dns",
"direct": false,
"version": "7.2.5",
"ecosystem": "npm"
},
{
"name": "nanoid",
"direct": false,
"version": "3.3.12",
"ecosystem": "npm"
},
{
"name": "negotiator",
"direct": false,
"version": "0.6.3",
"ecosystem": "npm"
},
{
"name": "negotiator",
"direct": false,
"version": "0.6.4",
"ecosystem": "npm"
},
{
"name": "neo-async",
"direct": false,
"version": "2.6.2",
"ecosystem": "npm"
},
{
"name": "no-case",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "node-emoji",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "node-releases",
"direct": false,
"version": "2.0.46",
"ecosystem": "npm"
},
{
"name": "normalize-path",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "normalize-url",
"direct": false,
"version": "8.1.1",
"ecosystem": "npm"
},
{
"name": "npm-run-path",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "nprogress",
"direct": false,
"version": "0.2.0",
"ecosystem": "npm"
},
{
"name": "nth-check",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "null-loader",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "object-assign",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "object-inspect",
"direct": false,
"version": "1.13.4",
"ecosystem": "npm"
},
{
"name": "object-keys",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "object.assign",
"direct": false,
"version": "4.1.7",
"ecosystem": "npm"
},
{
"name": "obuf",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "on-finished",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "on-finished",
"direct": false,
"version": "2.4.1",
"ecosystem": "npm"
},
{
"name": "on-headers",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "once",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "onetime",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "open",
"direct": false,
"version": "10.2.0",
"ecosystem": "npm"
},
{
"name": "open",
"direct": false,
"version": "8.4.2",
"ecosystem": "npm"
},
{
"name": "opener",
"direct": false,
"version": "1.5.2",
"ecosystem": "npm"
},
{
"name": "p-cancelable",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "p-finally",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "p-limit",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "p-limit",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "p-limit",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "p-locate",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "p-locate",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "p-locate",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "p-map",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "p-queue",
"direct": false,
"version": "6.6.2",
"ecosystem": "npm"
},
{
"name": "p-retry",
"direct": false,
"version": "6.2.1",
"ecosystem": "npm"
},
{
"name": "p-timeout",
"direct": false,
"version": "3.2.0",
"ecosystem": "npm"
},
{
"name": "p-try",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "package-json",
"direct": false,
"version": "8.1.1",
"ecosystem": "npm"
},
{
"name": "package-json-from-dist",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "param-case",
"direct": false,
"version": "3.0.4",
"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-json",
"direct": false,
"version": "5.2.0",
"ecosystem": "npm"
},
{
"name": "parse-numeric-range",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "parse5",
"direct": false,
"version": "7.3.0",
"ecosystem": "npm"
},
{
"name": "parse5-htmlparser2-tree-adapter",
"direct": false,
"version": "7.1.0",
"ecosystem": "npm"
},
{
"name": "parse5-parser-stream",
"direct": false,
"version": "7.1.2",
"ecosystem": "npm"
},
{
"name": "parseurl",
"direct": false,
"version": "1.3.3",
"ecosystem": "npm"
},
{
"name": "pascal-case",
"direct": false,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "path-exists",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "path-exists",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "path-is-absolute",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "path-is-inside",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "path-key",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "path-parse",
"direct": false,
"version": "1.0.7",
"ecosystem": "npm"
},
{
"name": "path-scurry",
"direct": false,
"version": "1.11.1",
"ecosystem": "npm"
},
{
"name": "path-to-regexp",
"direct": false,
"version": "0.1.13",
"ecosystem": "npm"
},
{
"name": "path-to-regexp",
"direct": false,
"version": "1.9.0",
"ecosystem": "npm"
},
{
"name": "path-to-regexp",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "path-type",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "picocolors",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "picomatch",
"direct": false,
"version": "2.3.2",
"ecosystem": "npm"
},
{
"name": "pkg-dir",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "pkg-dir",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "pkijs",
"direct": false,
"version": "3.4.0",
"ecosystem": "npm"
},
{
"name": "postcss",
"direct": false,
"version": "8.5.15",
"ecosystem": "npm"
},
{
"name": "postcss-attribute-case-insensitive",
"direct": false,
"version": "7.0.1",
"ecosystem": "npm"
},
{
"name": "postcss-calc",
"direct": false,
"version": "9.0.1",
"ecosystem": "npm"
},
{
"name": "postcss-clamp",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-color-functional-notation",
"direct": false,
"version": "7.0.12",
"ecosystem": "npm"
},
{
"name": "postcss-color-hex-alpha",
"direct": false,
"version": "10.0.0",
"ecosystem": "npm"
},
{
"name": "postcss-color-rebeccapurple",
"direct": false,
"version": "10.0.0",
"ecosystem": "npm"
},
{
"name": "postcss-colormin",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-convert-values",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-custom-media",
"direct": false,
"version": "11.0.6",
"ecosystem": "npm"
},
{
"name": "postcss-custom-properties",
"direct": false,
"version": "14.0.6",
"ecosystem": "npm"
},
{
"name": "postcss-custom-selectors",
"direct": false,
"version": "8.0.5",
"ecosystem": "npm"
},
{
"name": "postcss-dir-pseudo-class",
"direct": false,
"version": "9.0.1",
"ecosystem": "npm"
},
{
"name": "postcss-discard-comments",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "postcss-discard-duplicates",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "postcss-discard-empty",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "postcss-discard-overridden",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "postcss-discard-unused",
"direct": false,
"version": "6.0.5",
"ecosystem": "npm"
},
{
"name": "postcss-double-position-gradients",
"direct": false,
"version": "6.0.4",
"ecosystem": "npm"
},
{
"name": "postcss-focus-visible",
"direct": false,
"version": "10.0.1",
"ecosystem": "npm"
},
{
"name": "postcss-focus-within",
"direct": false,
"version": "9.0.1",
"ecosystem": "npm"
},
{
"name": "postcss-font-variant",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "postcss-gap-properties",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "postcss-image-set-function",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "postcss-lab-function",
"direct": false,
"version": "7.0.12",
"ecosystem": "npm"
},
{
"name": "postcss-loader",
"direct": false,
"version": "7.3.4",
"ecosystem": "npm"
},
{
"name": "postcss-logical",
"direct": false,
"version": "8.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-merge-idents",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "postcss-merge-longhand",
"direct": false,
"version": "6.0.5",
"ecosystem": "npm"
},
{
"name": "postcss-merge-rules",
"direct": false,
"version": "6.1.1",
"ecosystem": "npm"
},
{
"name": "postcss-minify-font-values",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-minify-gradients",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "postcss-minify-params",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-minify-selectors",
"direct": false,
"version": "6.0.4",
"ecosystem": "npm"
},
{
"name": "postcss-modules-extract-imports",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-modules-local-by-default",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "postcss-modules-scope",
"direct": false,
"version": "3.2.1",
"ecosystem": "npm"
},
{
"name": "postcss-modules-values",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "postcss-nesting",
"direct": false,
"version": "13.0.2",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-charset",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-display-values",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-positions",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-repeat-style",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-string",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-timing-functions",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-unicode",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-url",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-whitespace",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "postcss-opacity-percentage",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "postcss-ordered-values",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "postcss-overflow-shorthand",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "postcss-page-break",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "postcss-place",
"direct": false,
"version": "10.0.0",
"ecosystem": "npm"
},
{
"name": "postcss-preset-env",
"direct": false,
"version": "10.6.1",
"ecosystem": "npm"
},
{
"name": "postcss-pseudo-class-any-link",
"direct": false,
"version": "10.0.1",
"ecosystem": "npm"
},
{
"name": "postcss-reduce-idents",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "postcss-reduce-initial",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-reduce-transforms",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "postcss-replace-overflow-wrap",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "postcss-selector-not",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "postcss-selector-parser",
"direct": false,
"version": "6.1.2",
"ecosystem": "npm"
},
{
"name": "postcss-selector-parser",
"direct": false,
"version": "7.1.1",
"ecosystem": "npm"
},
{
"name": "postcss-sort-media-queries",
"direct": false,
"version": "5.2.0",
"ecosystem": "npm"
},
{
"name": "postcss-svgo",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "postcss-unique-selectors",
"direct": false,
"version": "6.0.4",
"ecosystem": "npm"
},
{
"name": "postcss-value-parser",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "postcss-zindex",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "pretty-error",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "pretty-time",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "prismjs",
"direct": false,
"version": "1.30.0",
"ecosystem": "npm"
},
{
"name": "process-nextick-args",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "prompts",
"direct": false,
"version": "2.4.2",
"ecosystem": "npm"
},
{
"name": "prop-types",
"direct": false,
"version": "15.8.1",
"ecosystem": "npm"
},
{
"name": "property-information",
"direct": false,
"version": "7.1.0",
"ecosystem": "npm"
},
{
"name": "proto-list",
"direct": false,
"version": "1.2.4",
"ecosystem": "npm"
},
{
"name": "proxy-addr",
"direct": false,
"version": "2.0.7",
"ecosystem": "npm"
},
{
"name": "punycode",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "pupa",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "pvtsutils",
"direct": false,
"version": "1.3.6",
"ecosystem": "npm"
},
{
"name": "pvutils",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "qjobs",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "qs",
"direct": false,
"version": "6.13.0",
"ecosystem": "npm"
},
{
"name": "qs",
"direct": false,
"version": "6.15.2",
"ecosystem": "npm"
},
{
"name": "queue-microtask",
"direct": false,
"version": "1.2.3",
"ecosystem": "npm"
},
{
"name": "quick-lru",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "randombytes",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "range-parser",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "range-parser",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "raw-body",
"direct": false,
"version": "2.5.2",
"ecosystem": "npm"
},
{
"name": "raw-body",
"direct": false,
"version": "2.5.3",
"ecosystem": "npm"
},
{
"name": "rc",
"direct": false,
"version": "1.2.8",
"ecosystem": "npm"
},
{
"name": "react-fast-compare",
"direct": false,
"version": "3.2.2",
"ecosystem": "npm"
},
{
"name": "react-helmet-async",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "react-is",
"direct": false,
"version": "16.13.1",
"ecosystem": "npm"
},
{
"name": "react-json-view-lite",
"direct": false,
"version": "2.5.0",
"ecosystem": "npm"
},
{
"name": "react-loadable",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "react-loadable-ssr-addon-v5-slorber",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "react-router",
"direct": false,
"version": "5.3.4",
"ecosystem": "npm"
},
{
"name": "react-router-config",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "react-router-dom",
"direct": false,
"version": "5.3.4",
"ecosystem": "npm"
},
{
"name": "readable-stream",
"direct": false,
"version": "2.3.8",
"ecosystem": "npm"
},
{
"name": "readable-stream",
"direct": false,
"version": "3.6.2",
"ecosystem": "npm"
},
{
"name": "readdirp",
"direct": false,
"version": "3.6.0",
"ecosystem": "npm"
},
{
"name": "readdirp",
"direct": false,
"version": "4.1.2",
"ecosystem": "npm"
},
{
"name": "rechoir",
"direct": false,
"version": "0.8.0",
"ecosystem": "npm"
},
{
"name": "recma-build-jsx",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "recma-jsx",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "recma-parse",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "recma-stringify",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "reflect-metadata",
"direct": false,
"version": "0.2.2",
"ecosystem": "npm"
},
{
"name": "regenerate",
"direct": false,
"version": "1.4.2",
"ecosystem": "npm"
},
{
"name": "regenerate-unicode-properties",
"direct": false,
"version": "10.2.2",
"ecosystem": "npm"
},
{
"name": "regexpu-core",
"direct": false,
"version": "6.4.0",
"ecosystem": "npm"
},
{
"name": "registry-auth-token",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "registry-url",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "regjsgen",
"direct": false,
"version": "0.8.0",
"ecosystem": "npm"
},
{
"name": "regjsparser",
"direct": false,
"version": "0.13.1",
"ecosystem": "npm"
},
{
"name": "rehype-raw",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "rehype-recma",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "relateurl",
"direct": false,
"version": "0.2.7",
"ecosystem": "npm"
},
{
"name": "remark-directive",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "remark-emoji",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "remark-frontmatter",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "remark-gfm",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "remark-mdx",
"direct": false,
"version": "3.1.1",
"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": "renderkid",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "require-directory",
"direct": false,
"version": "2.1.1",
"ecosystem": "npm"
},
{
"name": "require-from-string",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "require-like",
"direct": false,
"version": "0.1.2",
"ecosystem": "npm"
},
{
"name": "requires-port",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "resolve",
"direct": false,
"version": "1.22.12",
"ecosystem": "npm"
},
{
"name": "resolve-alpn",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "resolve-cwd",
"direct": false,
"version": "3.0.0",
"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-pathname",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "responselike",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "retry",
"direct": false,
"version": "0.13.1",
"ecosystem": "npm"
},
{
"name": "reusify",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "rfdc",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "rimraf",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "rtlcss",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "run-applescript",
"direct": false,
"version": "7.1.0",
"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": "safe-buffer",
"direct": false,
"version": "5.2.1",
"ecosystem": "npm"
},
{
"name": "safer-buffer",
"direct": false,
"version": "2.1.2",
"ecosystem": "npm"
},
{
"name": "sax",
"direct": false,
"version": "1.6.0",
"ecosystem": "npm"
},
{
"name": "scheduler",
"direct": false,
"version": "0.27.0",
"ecosystem": "npm"
},
{
"name": "schema-dts",
"direct": false,
"version": "1.1.5",
"ecosystem": "npm"
},
{
"name": "schema-utils",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "schema-utils",
"direct": false,
"version": "4.3.3",
"ecosystem": "npm"
},
{
"name": "section-matter",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "select-hose",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "selfsigned",
"direct": false,
"version": "5.5.0",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "6.3.1",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "7.8.1",
"ecosystem": "npm"
},
{
"name": "semver-diff",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "send",
"direct": false,
"version": "0.19.2",
"ecosystem": "npm"
},
{
"name": "serialize-javascript",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "serve-handler",
"direct": false,
"version": "6.1.7",
"ecosystem": "npm"
},
{
"name": "serve-index",
"direct": false,
"version": "1.9.2",
"ecosystem": "npm"
},
{
"name": "serve-static",
"direct": false,
"version": "1.16.3",
"ecosystem": "npm"
},
{
"name": "set-function-length",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "setprototypeof",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "shallow-clone",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "shallowequal",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "shebang-command",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "shebang-regex",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "shell-quote",
"direct": false,
"version": "1.8.4",
"ecosystem": "npm"
},
{
"name": "side-channel",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "side-channel-list",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "side-channel-map",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "side-channel-weakmap",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "signal-exit",
"direct": false,
"version": "3.0.7",
"ecosystem": "npm"
},
{
"name": "signal-exit",
"direct": false,
"version": "4.1.0",
"ecosystem": "npm"
},
{
"name": "sirv",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "sisteransi",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "sitemap",
"direct": false,
"version": "7.1.3",
"ecosystem": "npm"
},
{
"name": "skin-tone",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "slash",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "slash",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "snake-case",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "socket.io",
"direct": false,
"version": "4.8.3",
"ecosystem": "npm"
},
{
"name": "socket.io-adapter",
"direct": false,
"version": "2.5.7",
"ecosystem": "npm"
},
{
"name": "socket.io-parser",
"direct": false,
"version": "4.2.6",
"ecosystem": "npm"
},
{
"name": "sockjs",
"direct": false,
"version": "0.3.24",
"ecosystem": "npm"
},
{
"name": "sort-css-media-queries",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "source-map",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "source-map",
"direct": false,
"version": "0.7.6",
"ecosystem": "npm"
},
{
"name": "source-map-js",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "source-map-js",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "source-map-loader",
"direct": false,
"version": "5.0.0",
"ecosystem": "npm"
},
{
"name": "source-map-support",
"direct": false,
"version": "0.5.21",
"ecosystem": "npm"
},
{
"name": "space-separated-tokens",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "spdy",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "spdy-transport",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "sprintf-js",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "sql.js",
"direct": false,
"version": "1.8.0",
"ecosystem": "npm"
},
{
"name": "srcset",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "statuses",
"direct": false,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "statuses",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "statuses",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "std-env",
"direct": false,
"version": "3.10.0",
"ecosystem": "npm"
},
{
"name": "streamroller",
"direct": false,
"version": "3.1.4",
"ecosystem": "npm"
},
{
"name": "string-width",
"direct": false,
"version": "4.2.3",
"ecosystem": "npm"
},
{
"name": "string-width",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "string_decoder",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "string_decoder",
"direct": false,
"version": "1.3.0",
"ecosystem": "npm"
},
{
"name": "stringify-entities",
"direct": false,
"version": "4.0.4",
"ecosystem": "npm"
},
{
"name": "stringify-object",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "strip-ansi",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "strip-ansi",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "strip-bom-string",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "strip-final-newline",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "strip-json-comments",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "strip-json-comments",
"direct": false,
"version": "3.1.1",
"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": "stylehacks",
"direct": false,
"version": "6.1.1",
"ecosystem": "npm"
},
{
"name": "supports-color",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "supports-color",
"direct": false,
"version": "8.1.1",
"ecosystem": "npm"
},
{
"name": "supports-preserve-symlinks-flag",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "svg-parser",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "svgo",
"direct": false,
"version": "3.3.3",
"ecosystem": "npm"
},
{
"name": "swc-loader",
"direct": false,
"version": "0.2.7",
"ecosystem": "npm"
},
{
"name": "tapable",
"direct": false,
"version": "2.2.1",
"ecosystem": "npm"
},
{
"name": "tapable",
"direct": false,
"version": "2.3.3",
"ecosystem": "npm"
},
{
"name": "terser",
"direct": false,
"version": "5.48.0",
"ecosystem": "npm"
},
{
"name": "terser-webpack-plugin",
"direct": false,
"version": "5.6.0",
"ecosystem": "npm"
},
{
"name": "thingies",
"direct": false,
"version": "2.6.0",
"ecosystem": "npm"
},
{
"name": "thunky",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "tiny-invariant",
"direct": false,
"version": "1.3.3",
"ecosystem": "npm"
},
{
"name": "tiny-warning",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "tinypool",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "tmp",
"direct": false,
"version": "0.2.1",
"ecosystem": "npm"
},
{
"name": "to-regex-range",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "toidentifier",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "totalist",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "tree-dump",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "trim-lines",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "trough",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "tslib",
"direct": false,
"version": "1.14.1",
"ecosystem": "npm"
},
{
"name": "tslib",
"direct": false,
"version": "2.8.1",
"ecosystem": "npm"
},
{
"name": "tsyringe",
"direct": false,
"version": "4.10.0",
"ecosystem": "npm"
},
{
"name": "type-fest",
"direct": false,
"version": "1.4.0",
"ecosystem": "npm"
},
{
"name": "type-fest",
"direct": false,
"version": "2.19.0",
"ecosystem": "npm"
},
{
"name": "type-is",
"direct": false,
"version": "1.6.18",
"ecosystem": "npm"
},
{
"name": "typedarray-to-buffer",
"direct": false,
"version": "3.1.5",
"ecosystem": "npm"
},
{
"name": "typescript",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "ua-parser-js",
"direct": false,
"version": "0.7.32",
"ecosystem": "npm"
},
{
"name": "undici",
"direct": false,
"version": "7.26.0",
"ecosystem": "npm"
},
{
"name": "undici-types",
"direct": false,
"version": "7.24.6",
"ecosystem": "npm"
},
{
"name": "unicode-canonical-property-names-ecmascript",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "unicode-emoji-modifier-base",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "unicode-match-property-ecmascript",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "unicode-match-property-value-ecmascript",
"direct": false,
"version": "2.2.1",
"ecosystem": "npm"
},
{
"name": "unicode-property-aliases-ecmascript",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "unified",
"direct": false,
"version": "11.0.5",
"ecosystem": "npm"
},
{
"name": "unique-string",
"direct": false,
"version": "3.0.0",
"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-position-from-estree",
"direct": false,
"version": "2.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": "universalify",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "unpipe",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "update-browserslist-db",
"direct": false,
"version": "1.2.3",
"ecosystem": "npm"
},
{
"name": "update-notifier",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "uri-js",
"direct": false,
"version": "4.4.1",
"ecosystem": "npm"
},
{
"name": "url-loader",
"direct": false,
"version": "4.1.1",
"ecosystem": "npm"
},
{
"name": "util-deprecate",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "utila",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "utility-types",
"direct": false,
"version": "3.11.0",
"ecosystem": "npm"
},
{
"name": "utils-merge",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "uuid",
"direct": false,
"version": "8.3.2",
"ecosystem": "npm"
},
{
"name": "value-equal",
"direct": false,
"version": "1.0.1",
"ecosystem": "npm"
},
{
"name": "vary",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "vfile",
"direct": false,
"version": "6.0.3",
"ecosystem": "npm"
},
{
"name": "vfile-location",
"direct": false,
"version": "5.0.3",
"ecosystem": "npm"
},
{
"name": "vfile-message",
"direct": false,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "void-elements",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "watchpack",
"direct": false,
"version": "2.5.1",
"ecosystem": "npm"
},
{
"name": "wbuf",
"direct": false,
"version": "1.7.3",
"ecosystem": "npm"
},
{
"name": "web-namespaces",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "webpack",
"direct": false,
"version": "5.101.3",
"ecosystem": "npm"
},
{
"name": "webpack",
"direct": false,
"version": "5.107.2",
"ecosystem": "npm"
},
{
"name": "webpack-bundle-analyzer",
"direct": false,
"version": "4.10.2",
"ecosystem": "npm"
},
{
"name": "webpack-cli",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "webpack-dev-middleware",
"direct": false,
"version": "7.4.5",
"ecosystem": "npm"
},
{
"name": "webpack-dev-server",
"direct": false,
"version": "5.2.3",
"ecosystem": "npm"
},
{
"name": "webpack-dev-server",
"direct": false,
"version": "5.2.4",
"ecosystem": "npm"
},
{
"name": "webpack-merge",
"direct": false,
"version": "4.2.2",
"ecosystem": "npm"
},
{
"name": "webpack-merge",
"direct": false,
"version": "5.10.0",
"ecosystem": "npm"
},
{
"name": "webpack-merge",
"direct": false,
"version": "6.0.1",
"ecosystem": "npm"
},
{
"name": "webpack-sources",
"direct": false,
"version": "3.5.0",
"ecosystem": "npm"
},
{
"name": "webpackbar",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "websocket-driver",
"direct": false,
"version": "0.7.4",
"ecosystem": "npm"
},
{
"name": "websocket-extensions",
"direct": false,
"version": "0.1.4",
"ecosystem": "npm"
},
{
"name": "whatwg-encoding",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "whatwg-mimetype",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "which",
"direct": false,
"version": "1.3.1",
"ecosystem": "npm"
},
{
"name": "which",
"direct": false,
"version": "2.0.2",
"ecosystem": "npm"
},
{
"name": "widest-line",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "wildcard",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "workerpool",
"direct": false,
"version": "9.3.4",
"ecosystem": "npm"
},
{
"name": "wrap-ansi",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "wrap-ansi",
"direct": false,
"version": "8.1.0",
"ecosystem": "npm"
},
{
"name": "wrappy",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "write-file-atomic",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "ws",
"direct": false,
"version": "7.5.11",
"ecosystem": "npm"
},
{
"name": "ws",
"direct": false,
"version": "8.18.0",
"ecosystem": "npm"
},
{
"name": "ws",
"direct": false,
"version": "8.20.1",
"ecosystem": "npm"
},
{
"name": "ws",
"direct": false,
"version": "8.21.0",
"ecosystem": "npm"
},
{
"name": "wsl-utils",
"direct": false,
"version": "0.1.0",
"ecosystem": "npm"
},
{
"name": "xdg-basedir",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "xml-js",
"direct": false,
"version": "1.6.11",
"ecosystem": "npm"
},
{
"name": "y18n",
"direct": false,
"version": "5.0.8",
"ecosystem": "npm"
},
{
"name": "yallist",
"direct": false,
"version": "3.1.1",
"ecosystem": "npm"
},
{
"name": "yargs",
"direct": false,
"version": "16.2.0",
"ecosystem": "npm"
},
{
"name": "yargs",
"direct": false,
"version": "17.7.2",
"ecosystem": "npm"
},
{
"name": "yargs-parser",
"direct": false,
"version": "20.2.9",
"ecosystem": "npm"
},
{
"name": "yargs-parser",
"direct": false,
"version": "21.1.1",
"ecosystem": "npm"
},
{
"name": "yargs-unparser",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "yocto-queue",
"direct": false,
"version": "0.1.0",
"ecosystem": "npm"
},
{
"name": "yocto-queue",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "zwitch",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
}
],
"collected": true,
"truncated": false,
"total_count": 1429,
"direct_count": 11,
"indirect_count": 1418
}
},
"maintainership": {
"issues": {
"open_prs": 12,
"merged_prs": 261,
"open_issues": 5,
"closed_ratio": 0.853,
"closed_issues": 29,
"closed_unmerged_prs": 93
},
"bus_factor": 1,
"bot_contributors": 2,
"top_contributors": [
{
"type": "User",
"login": "patjackson52",
"commits": 665,
"avatar_url": "https://avatars.githubusercontent.com/u/537002?v=4"
},
{
"type": "User",
"login": "mpetuska",
"commits": 18,
"avatar_url": "https://avatars.githubusercontent.com/u/23262603?v=4"
},
{
"type": "User",
"login": "AOrobator",
"commits": 13,
"avatar_url": "https://avatars.githubusercontent.com/u/4106884?v=4"
},
{
"type": "User",
"login": "Rocksnake",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/44219737?v=4"
},
{
"type": "User",
"login": "jarvis-52",
"commits": 2,
"avatar_url": "https://avatars.githubusercontent.com/u/263087557?v=4"
},
{
"type": "User",
"login": "jarvis",
"commits": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/370016?v=4"
}
],
"contributors_sampled": 6,
"top_contributor_share": 0.949
},
"quality_signals": {
"has_ci": true,
"has_tests": true,
"ci_workflows": [
"agent-knowledge.yml",
"assemble-check.yml",
"check.yml",
"ci.yml",
"cli-release.yml",
"deploy-website.yml",
"gradle-wrapper-validation.yml",
"knowledge-sync.yml",
"pr.yml",
"release.yml",
"resolve-version.yml"
],
"has_docs_dir": true,
"linter_configs": [],
"has_editorconfig": true,
"has_linter_config": false,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"yarn.lock"
],
"scorecard": {
"checks": [
{
"name": "Binary-Artifacts",
"score": 10,
"reason": "no binaries found in the repo",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
},
{
"name": "Branch-Protection",
"score": null,
"reason": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 10,
"reason": "6 out of 6 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": 0,
"reason": "Found 0/5 approved changesets -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 10,
"reason": "project has 6 contributing companies or organizations",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
},
{
"name": "Dangerous-Workflow",
"score": 10,
"reason": "no dangerous workflow patterns detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
},
{
"name": "Dependency-Update-Tool",
"score": 10,
"reason": "update tool detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
},
{
"name": "Fuzzing",
"score": 0,
"reason": "project is not fuzzed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
},
{
"name": "License",
"score": 10,
"reason": "license file detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
},
{
"name": "Maintained",
"score": 10,
"reason": "30 commit(s) and 0 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": 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": 0,
"reason": "security policy file not detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#security-policy"
},
{
"name": "Signed-Releases",
"score": 0,
"reason": "Project has not signed or included provenance with any releases.",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
},
{
"name": "Token-Permissions",
"score": 0,
"reason": "detected GitHub workflow tokens with excessive permissions",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 0,
"reason": "55 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "db403ea8100cbc9f210346029652944907346ad6",
"ran_at": "2026-07-25T18:07:50Z",
"aggregate_score": 4.6,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": false,
"has_dependabot_config": true
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-25T10:37:34Z",
"oldest_open_prs": [
{
"number": 356,
"created_at": "2026-06-15T12:02:02Z",
"last_comment_at": "2026-06-16T14:14:18Z",
"last_comment_author": "renovate"
},
{
"number": 362,
"created_at": "2026-06-15T21:49:52Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 385,
"created_at": "2026-06-17T10:24:41Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 389,
"created_at": "2026-06-19T18:42:27Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 390,
"created_at": "2026-06-19T18:42:30Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 402,
"created_at": "2026-06-30T12:19:04Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 405,
"created_at": "2026-07-06T09:48:14Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 406,
"created_at": "2026-07-06T09:48:19Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 408,
"created_at": "2026-07-13T11:19:21Z",
"last_comment_at": "2026-07-15T20:43:13Z",
"last_comment_author": "renovate"
},
{
"number": 412,
"created_at": "2026-07-15T22:32:37Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 414,
"created_at": "2026-07-24T09:54:55Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 415,
"created_at": "2026-07-25T10:37:31Z",
"last_comment_at": null,
"last_comment_author": null
}
],
"last_merged_pr_at": "2026-07-18T00:01:22Z",
"ci_last_conclusion": "SUCCESS",
"oldest_open_issues": [
{
"number": 124,
"created_at": "2023-01-16T23:05:31Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 308,
"created_at": "2026-05-31T15:00:20Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 309,
"created_at": "2026-06-01T15:07:02Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 324,
"created_at": "2026-06-06T16:35:31Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 364,
"created_at": "2026-06-16T04:02:47Z",
"last_comment_at": null,
"last_comment_author": null
}
]
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/reduxkotlin/redux-kotlin",
"host": "github.com",
"name": "redux-kotlin",
"owner": "reduxkotlin"
},
"metrics": {
"overall": {
"key": "overall",
"band": "moderate",
"name": "Overall health",
"note": null,
"notes": [],
"value": 64,
"inputs": {
"security": 57,
"vitality": 74,
"community": 56,
"governance": 50,
"engineering": 84
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "good",
"name": "Vitality",
"value": 74,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "good",
"name": "Development activity",
"note": null,
"notes": [],
"value": 73,
"inputs": {
"commits_last_year": 611,
"human_commit_share": 0.98,
"days_since_last_push": 0,
"active_weeks_last_year": 13
},
"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": "13/52 weeks with commits",
"points": 9,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 13
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "611 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 611
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "good",
"name": "Release discipline",
"note": null,
"notes": [],
"value": 76,
"inputs": {
"releases_count": 11,
"latest_release_tag": "1.0.0-alpha06",
"releases_from_tags": false,
"days_since_latest_release": 7,
"mean_days_between_releases": 244.7
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "11 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 11
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 7 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 7
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~244.7 days",
"points": 12.6,
"status": "partial",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 244.7
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "Project has not signed or included provenance with any releases.",
"points": 0,
"status": "missed",
"details": [],
"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": 7,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 7 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 7
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "moderate",
"name": "Community & Adoption",
"value": 56,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "moderate",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 61,
"inputs": {
"forks": 37,
"stars": 508,
"watchers": 7,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "508 stars",
"points": 43.9,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 508
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "37 forks",
"points": 13,
"status": "partial",
"details": [
{
"code": "forks",
"params": {
"count": 37
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "7 watchers",
"points": 4.3,
"status": "partial",
"details": [
{
"code": "watchers",
"params": {
"count": 7
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "moderate",
"name": "Community health",
"note": null,
"notes": [],
"value": 50,
"inputs": {
"has_readme": true,
"has_license": true,
"has_contributing": false,
"has_issue_template": false,
"has_code_of_conduct": false,
"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 (MIT)",
"points": 22.5,
"status": "met",
"details": [
{
"code": "license_standard",
"params": {}
},
{
"code": "license_spdx",
"params": {
"spdx": "MIT"
}
}
],
"max_points": 22.5
},
{
"key": "contributing_guide",
"name": "CONTRIBUTING guide",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 18
},
{
"key": "code_of_conduct",
"name": "Code of conduct",
"detail": null,
"points": 0,
"status": "missed",
"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
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "moderate",
"name": "Sustainability & Governance",
"value": 50,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "critical",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 28,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 6,
"top_contributor_share": 0.949
},
"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": "6 contributors",
"points": 8.1,
"status": "partial",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 6
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 6 contributing companies or organizations",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "moderate",
"name": "Issue & PR responsiveness",
"note": null,
"notes": [],
"value": 68,
"inputs": {
"merged_prs": 261,
"open_issues": 5,
"closed_issues": 29,
"issue_closed_ratio": 0.853,
"closed_unmerged_prs": 93
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "85% of issues closed",
"points": 39.9,
"status": "partial",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 85
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "261/354 decided PRs merged",
"points": 28.2,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 261,
"decided": 354
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 0/5 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "moderate",
"name": "Ownership & stewardship",
"note": null,
"notes": [],
"value": 60,
"inputs": {
"followers": 20,
"owner_type": "Organization",
"is_verified": null,
"owner_login": "reduxkotlin",
"public_repos": 12,
"account_age_days": 2619
},
"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": "20 followers of reduxkotlin",
"points": 9.5,
"status": "partial",
"details": [
{
"code": "owner_followers",
"params": {
"count": 20,
"login": "reduxkotlin"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "12 public repos, account ~7 yr old",
"points": 20.1,
"status": "partial",
"details": [
{
"code": "public_repos",
"params": {
"count": 12
}
},
{
"code": "account_age_years",
"params": {
"years": 7
}
}
],
"max_points": 25
}
]
}
],
"description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
},
{
"key": "engineering",
"band": "good",
"name": "Engineering Quality",
"value": 84,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "good",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 74,
"inputs": {
"has_ci": true,
"has_tests": true,
"has_editorconfig": true,
"has_linter_config": false,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": "11 workflow(s)",
"points": 24,
"status": "met",
"details": [
{
"code": "ci_workflows",
"params": {
"count": 11
}
}
],
"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": 6.4,
"status": "met",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "6 out of 6 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": 100,
"inputs": {
"topics": [
"redux",
"kotlin",
"kotlin-multiplatform",
"android",
"ios",
"kotlin-native"
],
"has_wiki": true,
"homepage": "https://reduxkotlin.org",
"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://reduxkotlin.org",
"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": "6 topics",
"points": 10,
"status": "met",
"details": [
{
"code": "topics_count",
"params": {
"count": 6
}
}
],
"max_points": 10
},
{
"key": "wiki",
"name": "Wiki",
"detail": null,
"points": 10,
"status": "met",
"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": "at_risk",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): Branch-Protection. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"branch_protection"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 46,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 17,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 1,
"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": "internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "6 out of 6 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 0/5 approved changesets -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 6 contributing companies or organizations",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "dangerous_workflow",
"name": "Dangerous-Workflow",
"detail": "no dangerous workflow patterns detected",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
},
{
"key": "dependency_update_tool",
"name": "Dependency-Update-Tool",
"detail": "update tool detected",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "fuzzing",
"name": "Fuzzing",
"detail": "project is not fuzzed",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "license",
"name": "License",
"detail": "license file detected",
"points": 2.5,
"status": "met",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "30 commit(s) and 0 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 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 not detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "signed_releases",
"name": "Signed-Releases",
"detail": "Project has not signed or included provenance with any releases.",
"points": 0,
"status": "missed",
"details": [],
"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": "55 existing vulnerabilities detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "excellent",
"name": "Dependency advisories",
"note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories, No advisories left outstanding. Remaining weights renormalized. Matched 1429 resolved dependencies against OSV. 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": 1429
}
},
{
"code": "advisories_repo_graph_caveat",
"params": {}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 100,
"inputs": {
"source": "osv",
"advisories": 67,
"affected_packages": 33,
"assessed_packages": 1429,
"unassessed_packages": 0,
"affected_by_severity": "critical 1, high 22, moderate 6, low 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": 1429,
"malicious_packages": 0,
"direct_malicious_packages": 0,
"withdrawn_malicious_packages": 0,
"installable_malicious_packages": 0
},
"components": [
{
"key": "no_dependency_reported_as_a_malicious_package",
"name": "No dependency reported as a malicious package",
"detail": "no dependency is reported as a malicious package",
"points": 100,
"status": "met",
"details": [
{
"code": "no_malicious_dependencies",
"params": {}
}
],
"max_points": 100
}
]
},
{
"key": "high_risk_jurisdiction_exposure",
"band": "excellent",
"name": "High-Risk Jurisdiction Exposure",
"note": "Only high-confidence self-published location evidence affects this multiplier. Ambiguous matches are review-only; country evidence is not proof of nationality, citizenship, legal registration, malicious intent, or sanctions status.",
"notes": [
{
"code": "jurisdiction_evidence_limits",
"params": {}
}
],
"value": 100,
"inputs": {
"meaning": "self-published location evidence; not nationality or citizenship",
"red_flag": false,
"exposures": [],
"policy_countries": [
"Russia",
"Iran",
"North Korea"
],
"review_only_matches": 0,
"assessed_self_published_locations": 6
},
"components": [
{
"key": "policy_exposure_multiplier",
"name": "Policy exposure multiplier",
"detail": "no confirmed policy-scope location match",
"points": 100,
"status": "met",
"details": [
{
"code": "jurisdiction_no_match",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
},
{
"key": "ai_readiness",
"band": "good",
"name": "AI Readiness",
"value": 76,
"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": [
"AGENTS.md",
"CLAUDE.md"
],
"agent_instruction_max_bytes": 9036
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "AGENTS.md, CLAUDE.md",
"points": 45,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "AGENTS.md, CLAUDE.md"
}
}
],
"max_points": 45
},
{
"key": "machine_readable_docs_llms_txt",
"name": "Machine-readable docs (llms.txt)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "legible_commit_history",
"name": "Legible commit history",
"detail": "98 of 98 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 98,
"sampled": 98
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "good",
"name": "Verify loop (build / test / typecheck)",
"note": null,
"notes": [],
"value": 74,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"yarn.lock"
],
"has_dockerfile": false,
"typed_language": true,
"bootstrap_files": [],
"has_devcontainer": false,
"has_linter_config": false,
"typecheck_configs": [
"website/tsconfig.json"
],
"agent_commit_share": 0.55,
"toolchain_manifests": [
"build-conventions/build.gradle.kts",
"build.gradle.kts",
"examples/counter/android/build.gradle.kts",
"examples/counter/common/build.gradle.kts",
"examples/taskflow/androidApp/build.gradle.kts",
"examples/taskflow/composeApp/build.gradle.kts",
"examples/todos/android/build.gradle.kts",
"examples/todos/common/build.gradle.kts",
"redux-kotlin-bom/build.gradle.kts",
"redux-kotlin-bundle-compose/build.gradle.kts",
"redux-kotlin-bundle/build.gradle.kts",
"redux-kotlin-cli-dist/build.gradle.kts",
"redux-kotlin-cli/build.gradle.kts",
"redux-kotlin-compose-multimodel/build.gradle.kts",
"redux-kotlin-compose-saveable/build.gradle.kts",
"redux-kotlin-compose/build.gradle.kts",
"redux-kotlin-concurrent/build.gradle.kts",
"redux-kotlin-devtools-bridge/build.gradle.kts",
"redux-kotlin-devtools-cli/build.gradle.kts",
"redux-kotlin-devtools-core/build.gradle.kts",
"redux-kotlin-devtools-inapp-noop/build.gradle.kts",
"redux-kotlin-devtools-inapp/build.gradle.kts",
"redux-kotlin-devtools-remote/build.gradle.kts",
"redux-kotlin-devtools-standalone/build.gradle.kts",
"redux-kotlin-devtools-ui/build.gradle.kts",
"redux-kotlin-granular/build.gradle.kts",
"redux-kotlin-multimodel-granular/build.gradle.kts",
"redux-kotlin-multimodel/build.gradle.kts",
"redux-kotlin-registry/build.gradle.kts",
"redux-kotlin-routing-codegen-sample/build.gradle.kts",
"redux-kotlin-routing-codegen/build.gradle.kts",
"redux-kotlin-routing/build.gradle.kts",
"redux-kotlin-snapshot/build.gradle.kts",
"redux-kotlin-threadsafe/build.gradle.kts",
"redux-kotlin-thunk/build.gradle.kts",
"redux-kotlin/build.gradle.kts"
],
"dependency_bot_commit_share": 0.02
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": "build-conventions/build.gradle.kts, build.gradle.kts, examples/counter/android/build.gradle.kts (toolchain convention, no task runner)",
"points": 12.6,
"status": "partial",
"details": [
{
"code": "toolchain_convention",
"params": {
"files": "build-conventions/build.gradle.kts, build.gradle.kts, examples/counter/android/build.gradle.kts"
}
}
],
"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": "website/tsconfig.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "website/tsconfig.json"
}
}
],
"max_points": 11
},
{
"key": "reproducible_environment",
"name": "Reproducible environment",
"detail": "lockfile",
"points": 10,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "lockfile"
}
}
],
"max_points": 10
},
{
"key": "demonstrated_agent_practice",
"name": "Demonstrated agent practice",
"detail": "55 of the last 100 commits agent-authored or agent-credited",
"points": 10,
"status": "met",
"details": [
{
"code": "agent_authored_commits",
"params": {
"count": 55,
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "2 of the last 100 commits are automated dependency updates",
"points": 8,
"status": "met",
"details": [
{
"code": "dependency_bot_commits",
"params": {
"count": 2,
"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 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "excellent",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"primary_language": "Kotlin",
"largest_source_bytes": 26373,
"source_files_sampled": 565,
"oversized_source_files": 0
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "Kotlin (statically typed)",
"points": 45,
"status": "met",
"details": [
{
"code": "statically_typed_language",
"params": {
"language": "Kotlin"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "0/565 source files over 60KB",
"points": 55,
"status": "met",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 565,
"oversized": 0
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "at_risk",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"example_dirs": [
"example",
"examples",
"sample"
],
"has_mcp_signal": false,
"api_schema_files": []
},
"components": [
{
"key": "api_schema_openapi_graphql_proto",
"name": "API schema (OpenAPI/GraphQL/proto)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 40
},
{
"key": "mcp_server",
"name": "MCP server",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "runnable_examples",
"name": "Runnable examples",
"detail": "example, examples, sample",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "example, examples, sample"
}
}
],
"max_points": 40
}
]
}
],
"description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
}
],
"metrics_version": "1.13.0"
},
"warnings": [
"Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token"
],
"report_type": "repository",
"generated_at": "2026-07-25T18:08:08.655967Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/r/reduxkotlin/redux-kotlin.svg",
"full_name": "reduxkotlin/redux-kotlin",
"license_state": "standard",
"license_spdx": "MIT"
}