Informe JSON sin procesar legible por máquina
{
"data": {
"repo": {
"topics": [],
"is_fork": false,
"size_kb": 1093,
"has_wiki": true,
"homepage": "https://www.npmjs.com/package/docusaurus-plugin-llms",
"languages": {
"JavaScript": 562262,
"TypeScript": 121066
},
"pushed_at": "2026-07-23T00:14:17Z",
"created_at": "2025-05-16T03:13:02Z",
"owner_type": "User",
"updated_at": "2026-07-22T20:55:23Z",
"description": "Docusaurus plugin for generating LLM-friendly documentation following the llmstxt.org standard",
"is_archived": false,
"is_disabled": false,
"license_spdx": null,
"default_branch": "main",
"license_spdx_raw": null,
"primary_language": "JavaScript",
"significant_languages": [
"JavaScript",
"TypeScript"
]
},
"owner": {
"blog": null,
"name": "Patrick Rachford",
"type": "User",
"login": "rachfop",
"company": null,
"location": "Seattle",
"followers": 0,
"avatar_url": "https://avatars.githubusercontent.com/u/64233065?v=4",
"created_at": "2020-04-23T23:00:20Z",
"is_verified": null,
"public_repos": 156,
"account_age_days": 2281
},
"license": {
"state": "absent",
"spdx_id": null,
"raw_spdx": null,
"file_present": false,
"scorecard_found": false,
"profile_has_license": false
},
"activity": {
"releases": [
{
"tag": "v0.5.1",
"kind": "patch",
"published_at": "2026-07-22T23:53:03Z"
},
{
"tag": "v0.5.0",
"kind": "minor",
"published_at": "2026-07-17T17:18:19Z"
},
{
"tag": "v0.4.0",
"kind": "minor",
"published_at": "2026-04-20T18:44:40Z"
},
{
"tag": "v0.3.1",
"kind": "patch",
"published_at": "2026-04-14T16:10:06Z"
},
{
"tag": "v0.3.0",
"kind": "minor",
"published_at": "2026-02-08T06:46:24Z"
},
{
"tag": "v0.2.1",
"kind": "patch",
"published_at": "2025-09-15T22:21:34Z"
},
{
"tag": "v0.2.0",
"kind": "minor",
"published_at": "2025-08-20T22:08:00Z"
},
{
"tag": "v0.1.5",
"kind": "patch",
"published_at": "2025-07-03T20:44:16Z"
},
{
"tag": "v0.1.4",
"kind": "patch",
"published_at": "2025-05-28T19:47:26Z"
},
{
"tag": "v0.1.3",
"kind": "patch",
"published_at": "2025-05-20T18:10:02Z"
}
],
"recent_commits": [
{
"oid": "09a6fe4dfc0c007f52ee9dbead651168cbc2e17c",
"body": null,
"is_bot": false,
"headline": "refactor: extract shared numberPrefix module; cover numeric title",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-22T20:54:23Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "63626f11225018f0a341c473e89450b5da3611d0",
"body": null,
"is_bot": false,
"headline": "fix: coerce numeric frontmatter slug/id to string (#58)",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-22T20:41:39Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fae981a739610b1a7b9524b70030a3c6db60a046",
"body": null,
"is_bot": false,
"headline": "chore: Release v0.5.1 — path/route-resolution fixes (#59)",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-22T20:03:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "64efdc9d15fff1bf4fda777ee7e74cc10f6d503e",
"body": "fix: 3 path/route-resolution bugs surfaced when deploying with 0.5.0",
"is_bot": false,
"headline": "Merge pull request #59 from AlexAdiaconitei/main",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-07-22T20:02:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d7beaf57cb1018d211ff91ebae80b0c23797d087",
"body": null,
"is_bot": false,
"headline": "fix: prioritize frontmatter slug/id over filename heuristic",
"author_name": "AlexAdiaconitei",
"author_login": "AlexAdiaconitei",
"committed_at": "2026-07-22T15:58:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "80d3fab8588d452efe63de1b667495ac9415cc91",
"body": null,
"is_bot": false,
"headline": "fix: strip compound number prefixes to match Docusaurus routes",
"author_name": "AlexAdiaconitei",
"author_login": "AlexAdiaconitei",
"committed_at": "2026-07-22T15:58:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f55b6c46a40f857bc6d0edbdc3bd08071b7107c8",
"body": null,
"is_bot": false,
"headline": "fix: write generated markdown to a baseUrl-relative path",
"author_name": "AlexAdiaconitei",
"author_login": "AlexAdiaconitei",
"committed_at": "2026-07-22T15:58:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "a2a23a09487c7e18d0841b0c48dd04cd3ba880e4",
"body": "feat: multi-version llms output via `versions` option",
"is_bot": false,
"headline": "Merge PR #56: multi-version llms output via versions option",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-07-17T16:54:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "306baba6b20b20003e7027dcb1c15c70eef52651",
"body": "Generate a separate set of LLM files per documentation version. Each version\nruns the full pipeline, writing llms.txt and all customLLMFiles under its own\nsubdirectory with links scoped to that version's routes.\n\n`versions` accepts an explicit array ({ name, label, docsDir, path,\ncustomLLMFiles, inc\n[…]\ns are written.\n\nAdds tests/test-multi-version.js (explicit array, auto detection, backward\ncompat, validation, scoped links, custom-file labeling) and documents the\noption in the README and CHANGELOG.",
"is_bot": false,
"headline": "feat: multi-version llms output via `versions` option",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-17T16:53:20Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "2a33fca29b330650fa1aa6ec5d70ebf736e9b29f",
"body": "Resolve @site partials via siteDir instead of process.cwd()",
"is_bot": false,
"headline": "Merge PR #57: resolve @site partials via siteDir",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-07-17T16:52:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f8f390af43558e15df45a840bdd5b4e1e2fe669f",
"body": null,
"is_bot": false,
"headline": "Tidy @site partials test comment",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-17T16:46:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "e79ceda4f0c098110433e86b9f1f0f995014a6db",
"body": "Thread the site directory through processMarkdownFile into\nresolvePartialImports so `@site/` alias imports resolve against the real\nsite root rather than assuming the build runs from process.cwd(). Falls\nback to process.cwd() when no siteDir is supplied.\n\nUpdate the @site partials test to run from a different cwd and pass\nsiteDir explicitly, so it exercises the threaded argument rather than the\ncwd fallback.",
"is_bot": false,
"headline": "Resolve @site partials via siteDir instead of process.cwd()",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-17T16:38:25Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bb078204b51e47e3a4e1741b7dc042e50705f24e",
"body": "Resolve partial imports using the @site alias and partials directories",
"is_bot": false,
"headline": "Merge PR #55: resolve @site alias partials (#54)",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-07-17T16:35:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "417a199a7c7b3aeaadcb45856432326a28fb2178",
"body": null,
"is_bot": false,
"headline": "Wire @site alias partial test into test:unit",
"author_name": "ilanazholobovsky",
"author_login": "ilanazholobovsky",
"committed_at": "2026-07-16T22:38:13Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b2230f6cdfbbf73c29927890f56f3ebec63d98a5",
"body": null,
"is_bot": false,
"headline": "Add test for @site alias partial resolution",
"author_name": "ilanazholobovsky",
"author_login": "ilanazholobovsky",
"committed_at": "2026-07-16T22:37:09Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "36118e22eee71563d3efc31267c052c3a1aab337",
"body": null,
"is_bot": false,
"headline": "Resolve partials imported via @site alias and partials directories",
"author_name": "ilanazholobovsky",
"author_login": "ilanazholobovsky",
"committed_at": "2026-07-16T22:35:32Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2bb78e3316ee23af68ed1622763bf0ab72a24811",
"body": "Refactor: split utils.ts into focused modules",
"is_bot": false,
"headline": "Merge PR #53: split utils.ts into focused modules",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-07-14T15:46:21Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2a3e884cb53d1732370b1dcdbc2bafeb49abb3be",
"body": "Complete the decomposition started in the guards/logger split:\n- files.ts — readFile/writeFile\n- content.ts — code-fence masking, title extraction, partial imports,\n content cleaning, markdown template assembly\n- images.ts — image asset map + relative-image-URL rewriting\n\nutils.ts d\n[…]\ns\nare leaves; content depends on them; images depends on content). Removed\nnow-unused matter/YAML/Dirent imports from utils.\n\nBehavior-preserving; build, full suite, and a real-plugin smoke test pass.",
"is_bot": false,
"headline": "Refactor: split utils.ts into focused modules",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-14T15:44:40Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "265a7a579f720a3fa845fb239717da401c89538a",
"body": "Refactor: maintainability cleanup from thermo-nuclear review",
"is_bot": false,
"headline": "Merge PR #52: maintainability refactor from thermo-nuclear review",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-07-14T15:35:53Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "41c0909f360cb2694cfeaac79c2232500121379d",
"body": "- Delete null-handling-guide.ts (321 lines of dead example code that was\n compiled and shipped to consumers)\n- Unify URL construction into a single joinSiteUrl helper, removing the\n baseUrl logic duplicated across processMarkdownFile's two branches and\n generateIndividualMarkdownFiles\n- Extract g\n[…]\n\n file (NUL made grep treat it as binary)\n- Remove 'as any' casts in buildImageAssetMap via Dirent typing; dedupe the\n image-extension list and imgExtRe\n\nBehavior-preserving; full test suite passes.",
"is_bot": false,
"headline": "Refactor: address thermo-nuclear review findings",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-14T06:32:55Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f01e0c2f5693e0a47c7eb9acb94acd95fb06dbeb",
"body": "… review\n\nFix content-cleaning and option-handling bugs from deep review",
"is_bot": false,
"headline": "Merge PR #51: fix content-cleaning and option-handling bugs from deep…",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-07-14T06:17:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "929b19266b7242fc1ab11e11bc3e60fb7299ff7b",
"body": null,
"is_bot": false,
"headline": "Tidy 0.4.5 changelog entry formatting",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-14T06:17:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "40e6be5525c66978461666fc92fb98cf858e13ec",
"body": "- Make content cleaning code-fence aware via maskCodeSegments so HTML/JSX\n stripping, import removal, image rewriting and title detection never\n touch code samples\n- Thread global version option into llms.txt/llms-full.txt\n- Skip draft: \"true\" string frontmatter\n- Strip MDX/JSX component tags, keeping inner content\n- Default custom-file includeUnmatchedLast to true\n- Trim trailing slash in pathTransformation ignorePaths\n- Restrict buildImageAssetMap to image extensions",
"is_bot": false,
"headline": "Fix content-cleaning and option-handling bugs from deep review",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-14T06:15:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "735fe89a8e2da0d6a8f802920f34e953d575c50c",
"body": "Document docsDir array form for multi-instance setups (#45)",
"is_bot": false,
"headline": "Merge PR #49: document docsDir array form (#45)",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-07-14T05:20:24Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "f768e09ff7e7a7e7398f5861d9f17f48c3ecaf96",
"body": "Only append .md to links when markdown files are generated (#41)",
"is_bot": false,
"headline": "Merge PR #50: only append .md to links when files are generated (#41)",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-07-14T05:19:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "65205b9e2d0174d11060d44c8d4b602573b76fb3",
"body": "addMdExtension appended .md to llms.txt links by default, but the .md\nfiles only exist when generateMarkdownFiles is enabled, so links 404'd.\nCouple the two: .md is appended only when the files are actually\ngenerated. Adds an integration test and updates README/CHANGELOG.",
"is_bot": false,
"headline": "Only append .md to links when markdown files are generated (#41)",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-14T05:16:54Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ef2dec6ec3dd6a2dc7546685e35e7c3242f27b73",
"body": null,
"is_bot": false,
"headline": "Document docsDir array form for multi-instance setups (#45)",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-14T05:08:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6f4c1cbeb6f76ff4ddc81a7e3e97481b7d4ce634",
"body": "Add useRelativeUrls option for origin-relative links (#37, #42)",
"is_bot": false,
"headline": "Merge PR #48: add useRelativeUrls option (#37, #42)",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-07-14T05:06:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cd14cac095478c04b67151cd017f81369be58f4f",
"body": null,
"is_bot": false,
"headline": "Add tests for query/fragment preservation and relative-URL passthrough",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-14T05:06:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4991b4a66abc4fe2e21ada6f9b5bea8abdb22b43",
"body": "Opt-in option that emits origin-relative links in llms.txt (e.g.\n/docs/page.md) instead of absolute URLs, for subpath deployments where\nthe site url can't be pinned. Preserves the baseUrl path segment. Adds\ntest-relative-urls.js and README/CHANGELOG entries.",
"is_bot": false,
"headline": "Add useRelativeUrls option for origin-relative links (#37, #42)",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-14T04:51:55Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "028582650237f258741af61cb76b114d3d75763f",
"body": "Fix baseUrl dropped from generated URLs (#43)",
"is_bot": false,
"headline": "Merge PR #47: fix baseUrl dropped from generated URLs (#43)",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-07-14T04:46:52Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5841aa8699756654959a4df3cb71477e938fe79f",
"body": "Preserve the site baseUrl pathname on both the resolved-route and\nfallback URL paths, adding it only when a route doesn't already carry\nit, and normalize a trailing slash on docsDir/pathPrefix. Adds\ntest-baseurl-url-construction.js covering subpath and root baseUrl.",
"is_bot": false,
"headline": "Fix baseUrl being dropped from generated URLs (#43)",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-14T03:31:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "01bc80b04bddcca83c5cc15250a55665c7172ae0",
"body": "…ration test\n\nFix filename sanitization case handling and draft-integration test",
"is_bot": false,
"headline": "Merge PR #46: fix filename sanitization case handling and draft-integ…",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-07-13T23:28:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1cf448f6a3e1bb4f6b4b5bf1be9ab81dfa58cac2",
"body": "- sanitizeForFilename: allow A-Z in ASCII mode so preserveCase keeps capitals\n- draft-integration test: supply docsSections in the mock context\n- wire both suites into npm test so they can't silently rot again",
"is_bot": false,
"headline": "Fix filename sanitization case handling and draft-integration test",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-13T23:26:50Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bab934ca656fc2e4276b954320166022f97cd8a0",
"body": null,
"is_bot": false,
"headline": "chore: Release v0.4.1",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-13T23:24:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "066c4aa330967f4e7d938d31ad895b11cb89a9b1",
"body": "…ic prefixes",
"is_bot": false,
"headline": "Merge PR #44: v0.5.0 — rewriteImageUrls, URL-based paths, strip numer…",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-13T23:23:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "66573d946711998cd95c5570c5dd8d1c6d5b6be6",
"body": "- Honor preserveDirectoryStructure=false in URL-derived output paths\n- Strip an existing markdown extension before appending .md\n- Preserve query/fragment when rewriting image URLs\n- Relax @docusaurus/core peer dependency to ^3.0.0\n- Align test fixtures with the URL-primary path contract",
"is_bot": false,
"headline": "Fix review feedback and preserveDirectoryStructure regression",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-07-13T23:22:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "b07faae6d5443b6e6a0178d8ccd3f47ca5b1da57",
"body": null,
"is_bot": false,
"headline": "feat: v0.5.0 - rewriteImageUrls, URL-based paths, strip numeric prefixes",
"author_name": "AlexAdiaconitei",
"author_login": "AlexAdiaconitei",
"committed_at": "2026-06-01T16:16:06Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "547482541e56c59175f60fc62a2ccd596b5c1d3e",
"body": "Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: Release v0.4.0",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-04-20T18:44:22Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "f66ec8ea1ddba733719670073f2463fa2cfdd3bb",
"body": "test: add tests for import/export description skip",
"is_bot": false,
"headline": "Merge pull request #40 from rachfop/test/import-description-skip",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-04-20T18:14:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c82d638138323753ef4d34ab048faf92b2c7aeee",
"body": "Adds test coverage for the fix in #39 that skips import/export\nstatements during description extraction in .mdx files.\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "test: add tests for import/export description skip fix",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-04-20T18:13:47Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "779953bd186907a3e183b53d44968d3c2c065a0f",
"body": "…n-extraction\n\nFix: skip import/export statements in description extraction",
"is_bot": false,
"headline": "Merge pull request #39 from adeelehsan/fix/skip-imports-in-descriptio…",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-04-20T18:13:30Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "36e1204665e91be9ceb1ebb5d5b0bdc6d54c07c3",
"body": "feat: append .md to llms.txt link URLs",
"is_bot": false,
"headline": "Merge pull request #38 from scottamain/feat/link-extension",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-04-20T17:57:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ba9e43e99dc274dfed85fb534fb80f3f3e42e1c2",
"body": "When a .mdx file starts with import statements before any content\nparagraph, the description extraction for llms.txt picks up the\nimport line as the page description instead of actual content.\n\nThis adds a check to skip paragraphs that start with `import` or\n`export` statements during description fallback extraction, matching\nthe existing behavior of excludeImports for content cleaning.\n\nFixes #9\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
"is_bot": false,
"headline": "Fix: skip import/export statements in description extraction",
"author_name": "adeelehsan",
"author_login": "adeelehsan",
"committed_at": "2026-04-17T19:49:02Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "fece7ebb2510afb39cacbaae56f2f4645bdd8bb7",
"body": "Per the llmstxt.org spec, links in llms.txt should point to markdown\nversions of pages (e.g. /docs/intro.md rather than /docs/intro/).\n\nAdd an `addMdExtension` option (default: true) that appends .md to all\nTOC link URLs in generated llms.txt files. Trailing slashes are stripped\nbefore the extension\n[…]\nlready ending with .md are left\nunchanged to avoid double-suffix artifacts.\n\nUsers can set `addMdExtension: false` to disable the behavior and\npreserve the original Docusaurus URLs.\n\nMade-with: Cursor",
"is_bot": false,
"headline": "feat: append .md to llms.txt link URLs per the llmstxt.org spec",
"author_name": "Scott Main",
"author_login": "scottamain",
"committed_at": "2026-04-17T00:38:24Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "3a808cde16b96eb6317ba9e5e5d41bd69f992b4a",
"body": null,
"is_bot": false,
"headline": "feat: support multiple docs sections via docsDir array (#28) (#36)",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-04-15T00:06:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "bbfdf66d2152b815f42b02398a1f91383d22fd65",
"body": "…in context (#29) (#35)",
"is_bot": false,
"headline": "fix: pass preserveDirectoryStructure and related options through plug…",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-04-15T00:05:42Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "3892e63f81e746a235a9ea0a2377b8c010f51a80",
"body": null,
"is_bot": false,
"headline": "fix: prevent double slash in URLs when baseUrl is root (#27) (#34)",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-04-15T00:05:37Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1d6005197bf75649e89ce472341f4a25750804fa",
"body": null,
"is_bot": false,
"headline": "docs: clarify plugin only runs during build, not dev server (#26) (#33)",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-04-15T00:05:10Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4046e8aefc331da7bdc00d657ab916fa1addb1df",
"body": "Fixes #30 (trailingSlash URLs) and #31 (doubled docs/docs paths) via\nsuffix-based route matching against Docusaurus's routesPaths.\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>",
"is_bot": false,
"headline": "chore: Release v0.3.1",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-04-14T16:09:35Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "6a74600cd12ec25bf637d0226cf23a530f64ce9e",
"body": "Refactor/Fix: Use suffix-based route matching for accurate URL resolution",
"is_bot": false,
"headline": "Merge pull request #32 from scottamain/main",
"author_name": "Patrick Rachford",
"author_login": "rachfop",
"committed_at": "2026-04-14T16:08:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "5e59110c7cdca0dd6135c7d55e8a1c9ca90074ff",
"body": "- README: note that pathTransformation is now a fallback, update\n implementation details and testing section\n- TESTING.md: add npm test shortcut, document the three new route\n resolution test files (including issue #30 and #31 regressions),\n note that path transformations are now a fallback\n\nMade-with: Cursor",
"is_bot": false,
"headline": "docs: update README and TESTING.md for route resolution changes",
"author_name": "Scott Main",
"author_login": "scottamain",
"committed_at": "2026-04-14T02:50:46Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "fb7ce34d497f6bb1d8b8c2299b5b9f727d9c230e",
"body": "Rewrite to reflect the current 50-file test suite, document all test\ncategories, explain how to run tests (npm test vs standalone files),\nand describe the suffix-based route resolution algorithm.\n\nMade-with: Cursor",
"is_bot": false,
"headline": "docs: update TESTING.md for suffix-based route resolution",
"author_name": "Scott Main",
"author_login": "scottamain",
"committed_at": "2026-04-14T02:43:12Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "342e1ca9f43ba1331154d7627273cc2e1dda901b",
"body": "- Issue #31: verify docsDir stripping prevents docs/docs URL doubling\n when routeBasePath is '/'\n- Issue #30: verify trailing-slash routes match and produce correct URLs\n- Directory collapsing: verify dir/dir.md resolves to /dir\n- Frontmatter overrides: verify id and slug overrides resolve correctly\n when the filename differs from the route\n\nMade-with: Cursor",
"is_bot": false,
"headline": "test: add regression tests for issues #30 and #31",
"author_name": "Scott Main",
"author_login": "scottamain",
"committed_at": "2026-04-14T02:40:51Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "55b2c6ddd68a7a04af1291067ec5dff4922e04b0",
"body": "Update three test files to align with the refactored route resolution\nthat uses routesPaths suffix matching instead of the removed routeMap API.\n\nMade-with: Cursor",
"is_bot": false,
"headline": "test: update route resolution tests for suffix-based matching",
"author_name": "Scott Main",
"author_login": "scottamain",
"committed_at": "2026-04-14T02:39:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "63e873ef61b3e55341bae2aedaf6e24bba510b77",
"body": "Fixes #31 — Route resolution fails when routeBasePath: '/' and a nested\ndocs/ subdirectory produces doubled path segments (e.g. /docs/docs/...).\n\nFixes #30 — trailingSlash: true not applied to URLs. Suffix matching\nuses the actual routes from Docusaurus (which already include trailing\nslashes), so g\n[…]\nally the stable one).\n\nRemoves routeMap, its construction in postBuild, the routes field on\nPluginContext, and five helper functions replaced by a single\nfindMatchingRoute function.\n\nMade-with: Cursor",
"is_bot": false,
"headline": "fix: use suffix-based route matching for correct URL resolution",
"author_name": "Scott Main",
"author_login": "scottamain",
"committed_at": "2026-04-14T02:30:39Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "db5cf6e81a647bbe275c7872fd8df9d3db54edb3",
"body": "…tory\n\nFixes three classes of route resolution failures:\n\n1. docsDir prefix doubling: When baseDir is siteDir, the relative path\n includes the docsDir prefix (e.g. \"docs/docs/manual/get-started\").\n Strip the docsDir prefix before retrying route map lookups since\n docsDir is the filesystem root\n[…]\n\n frontmatter and retrying with the overridden slug.\n\nAlso fixes trailing slash handling in tryRoutesPathsMatch so versioned\nroutes (e.g. /nightly/docs/...) are matched correctly.\n\nMade-with: Cursor",
"is_bot": false,
"headline": "fix: resolve routes correctly when docsDir matches a content subdirec…",
"author_name": "Scott Main",
"author_login": "scottamain",
"committed_at": "2026-04-14T02:07:48Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "81c404ccfe2fb8f488a11e767abb5d5ce1406b3b",
"body": "Remove internal documentation and test artifacts:\n- Remove NULL_HANDLING_REFACTOR.md (internal notes)\n- Remove PUBLISHING.md (internal guide)\n- Remove README-docusaurus.md (internal docs)\n- Remove test-output/ directory (generated test files)\n- Remove test-site/ directory (253MB test site)\n- Add test-output/ to .gitignore\n\nKeeps test-docs/ which is used by integration tests.",
"is_bot": false,
"headline": "chore: Clean up scratch files and test artifacts",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T07:06:28Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "84bc4d5f2c25489d1a65fe78efa644b2b94dc7f2",
"body": "- Add FUNDING.yml to enable sponsor button on repo\n- Add funding field to package.json\n- Add sponsor badge and npm badges to README\n\nEnables users to support the project via GitHub Sponsors",
"is_bot": false,
"headline": "feat: Add GitHub Sponsors integration",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T07:01:17Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ea3fd40e804434c6912f714c1163bcf04188b97c",
"body": "This release includes 33 bug fixes and improvements focused on:\n- Resolving 4 open GitHub issues (#19, #23, #25, #15)\n- Data integrity and validation\n- Path and file handling\n- Safety and robustness enhancements\n- Performance and scalability\n- Code quality improvements\n\nAll 300+ tests passing across 50 test files.",
"is_bot": false,
"headline": "Release v0.3.0 - 33 bug fixes and improvements",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T06:54:47Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "006204da4272f4fd7d9fcd3d992dd5fb77c6191c",
"body": "Add comprehensive release notes for v0.3.0 including:\n- 33 bug fixes and improvements\n- Closed issues #19, #23, #25, #15\n- All changes categorized and documented",
"is_bot": false,
"headline": "docs: Update CHANGELOG.md for v0.3.0 release",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T06:44:31Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ba670a205ebd9a85e87f5d45a5aea06eca0be4e2",
"body": "Updated the expected error message to match the actual validation output.\nThe validation is working correctly; this was just a wording mismatch.",
"is_bot": false,
"headline": "Test: Fix expected error message in plugin validation integration test",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T06:30:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c182afa7dc83b4f91fb4f0f2cc23be37c2d6ad1b",
"body": "Apply validation to ensureUniqueIdentifier function and integrate\ntest-input-validation.js into the test suite.\n\nChanges:\n- Add input validation to ensureUniqueIdentifier function:\n * Validate baseIdentifier is a non-empty string\n * Validate usedIdentifiers is not null/undefined\n * Validate usedI\n[…]\nctions were\npreviously added in commit 1e24c75. This commit completes the\nrefactoring by applying validation to ensureUniqueIdentifier,\nwhich was the last public API function missing input validation.",
"is_bot": false,
"headline": "Refactor: Add comprehensive input validation utilities",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T06:27:23Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "fa6f5e8ca60cc40d75cf972c6c9b12c5bb4b18c8",
"body": "- Add comprehensive null/undefined handling guidelines in utils.ts\n- Create type guard utilities for consistent checks:\n * isDefined<T>: Check if value is not null or undefined\n * isNonEmptyString: Check for non-empty, non-whitespace strings\n * isNonEmptyArray<T>: Check for arrays with at least o\n[…]\ngs from loose truthy checks (0, '', false edge cases)\n2. Providing better TypeScript type narrowing\n3. Making code more readable and maintainable\n4. Establishing a clear pattern for future development",
"is_bot": false,
"headline": "Refactor: Standardize null/undefined handling patterns",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T06:24:51Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "c4de4f6d6a715e4d586898dece1e757834680d44",
"body": "- Replace all 'catch (err: any)' with 'catch (err: unknown)' throughout codebase\n- Add getErrorMessage() helper to safely extract error messages from unknown types\n- Add getErrorStack() helper to extract stack traces from Error instances\n- Update all catch blocks in generator.ts to use unknown and g\n[…]\nects, null, undefined, circular references\n\nThis improves type safety by preventing implicit any types in error handling,\nmaking the code more maintainable and catching potential bugs at compile time.",
"is_bot": false,
"headline": "Refactor: Improve error type safety with unknown instead of any",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T06:24:38Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "309aa04f91b7285dcd0a66f0ff451e4406a56405",
"body": "- Enhanced sanitizeForFilename to support preserveUnicode and preserveCase options\n- Default behavior now preserves Unicode characters (preserveUnicode: true)\n- Only removes filesystem-unsafe characters: / \\ : * ? \" < > |\n- Preserves underscores, dots (except at start), hyphens, and unicode\n- Replaces spaces with dashes for better filesystem compatibility\n- Updated tests to match new default behavior\n- All 37 tests passing",
"is_bot": false,
"headline": "Fix: Improve filename sanitization to preserve valid characters",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T06:23:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "826ba9642bfaeeabd4c8853c62bbcd0de7cffce1",
"body": "- Document processingBatchSize option in configuration table\n- Add dedicated section explaining batch processing feature\n- Provide guidance on when to adjust batch size\n- Include example configuration\n- Explain how batch processing works internally\n- Add test-batch-processing.js to test suite in package.json\n\nRelated to issue #14. Implementation was added in commit caa85a2.",
"is_bot": false,
"headline": "docs: Add batch processing documentation to README",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T06:23:02Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "ce8bcab8f59851d8acd4691f7c81cc132ba7300d",
"body": "Extracted complex nested route resolution logic (5+ levels deep) into\nwell-named, testable helper functions:\n\n- removeNumberedPrefixes(): Strips numbered prefixes from path segments\n- findRouteInMap(): Searches route map for possible path matches\n- tryExactRouteMatch(): Attempts exact route matching\n[…]\nomprehensive unit tests (26 test cases)\n- Maintained backward compatibility (all existing tests pass)\n- Improved code readability and maintainability\n\nFixes Code Smell #30: Complex Nested Conditionals",
"is_bot": false,
"headline": "Refactor: Extract nested conditionals to helper functions",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T06:22:10Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "be3e2e3fdece8928ca024e569ddc8f0933f447f4",
"body": "…plan\n\n- Add comprehensive null-handling-guide.ts with patterns and examples\n- Document all required changes in NULL_HANDLING_REFACTOR.md\n- Establish consistent patterns for checking null/undefined\n- Provide clear examples of good vs bad patterns\n- Map out all locations requiring standardization\n\nRelated to issue #31",
"is_bot": false,
"headline": "docs: Add null/undefined handling standardization guide and refactor …",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T02:01:03Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "1d2b2a74655c9baab9d26daebd191f031d61b078",
"body": "Issue #14: Processing all documents in memory at once could cause\nout-of-memory errors on very large documentation sites.\n\nChanges:\n- Add processingBatchSize configuration option (default: 100)\n- Implement batch processing in generateLLMFile function\n- Process documents in configurable batches to li\n[…]\nents in batches of 50\n- Tested single document batches\n- Confirmed default batch size (100) works correctly\n- Verified document order preservation across batches\n- Tested links-only mode compatibility",
"is_bot": false,
"headline": "Fix: Add batch processing to prevent OOM on large sites",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T02:00:33Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0fc8d0773a6f4bebdb1e09f7657bab37b650ed19",
"body": "Added BOM (Byte Order Mark) stripping to readFile function to handle\nUTF-8 files that start with the BOM character (U+FEFF). This ensures\nconsistent parsing of markdown files regardless of whether they have\na BOM at the start.\n\nChanges:\n- Modified readFile() in utils.ts to detect and remove UTF-8 BOM\n- Added comprehensive test suite (test-bom-handling.js) with 8 tests\n- Updated package.json to include BOM handling test in test suite",
"is_bot": false,
"headline": "Fix: Strip UTF-8 BOM from markdown files",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T02:00:18Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "c4c262d7f09ebf78e8bdeca9b5e86a90c5cec6d8",
"body": "- Add comprehensive test suite for path length validation\n- Test platform-specific limits (Windows: 260 chars, Unix: 4096 chars)\n- Test path shortening with hash-based filenames\n- Test hash uniqueness for multiple long paths\n- Test relative path hashing to ensure consistency\n- Add test to package.json test suite\n\nThe path validation functionality was implemented in commit 79dab0d.\nThis commit adds the test coverage for that feature.",
"is_bot": false,
"headline": "Fix: Add path length validation and shortening for Windows compatibility",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:58:19Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "6cecca001313d97968e7d35ac9bfb9f5462f28f8",
"body": "Add comprehensive test coverage for the warnOnIgnoredFiles option\nthat warns users about files without extensions or unsupported\nextensions.\n\n- Test verifies warnings are not shown when option is disabled\n- Test verifies correct warnings for files without extensions\n- Test verifies correct warnings for unsupported file types\n- Test ensures markdown files are still processed correctly",
"is_bot": false,
"headline": "Test: Add test for ignored files warning feature",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:57:20Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "cb853a8716c7e9b11314b86e83796362a75f7a0a",
"body": "- Add test-plugin-validation-integration.js to verify validation is called during plugin initialization\n- Verifies that invalid options properly throw errors when plugin is instantiated\n- Tests all major validation categories (arrays, booleans, strings, objects)\n- Add integration test to package.json test:unit script\n- Complements existing unit tests with end-to-end validation testing",
"is_bot": false,
"headline": "Test: Add integration test for plugin options validation",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:56:11Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "048bd658882db0b4e413b6534d2ccae2f42e77ab",
"body": "- Add LogLevel enum with QUIET, NORMAL, and VERBOSE levels\n- Create logger utility with error, warn, info, and verbose methods\n- All log messages prefixed with [docusaurus-plugin-llms]\n- Add logLevel option to PluginOptions (quiet, normal, verbose)\n- Replace all console.log/warn/error calls with log\n[…]\ntation to README with examples\n- Error messages always shown, warnings/info respect log level\n- Verbose mode shows detailed file-by-file processing\n- Default to NORMAL level for backward compatibility",
"is_bot": false,
"headline": "Feature: Add configurable logging system",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:55:17Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "93fb123ee6eb29212ebd6f82c8b55eb47b17a583",
"body": "…tion\n\n- Extract magic numbers to named constants at top of generator.ts:\n * MAX_DESCRIPTION_LENGTH = 150\n * DESCRIPTION_TRUNCATE_AT = 147 (leaves room for '...')\n * FOLDER_NAME_SUFFIX_ITERATION = 2 (use folder name on 2nd duplicate)\n * LONG_DESCRIPTION_WARNING_THRESHOLD = 500\n * WORD_BOUNDARY_\n[…]\nts word boundary truncation logic\n * Tests various edge cases (empty, whitespace, exact length, etc.)\n * Tests heading marker removal\n * Integration tests for constants consistency\n\nFixes #15 & #29",
"is_bot": false,
"headline": "Refactor: Extract magic numbers to named constants and improve trunca…",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:54:10Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "cccbdd1cb6ee4c6a08a7b9267e9536dee83a3b63",
"body": "Added validation to detect and handle empty string values in frontmatter\nfields (title, description, slug, id). Empty or whitespace-only strings\nare now treated as undefined, allowing fallback logic to work correctly.\n\nChanges:\n- Added frontmatter validation in processMarkdownFile() to check for\n e\n[…]\npty fields in single document\n- All 23 frontmatter validation tests passing\n\nThis fixes Edge Case #21 where empty frontmatter fields were not properly\nvalidated, causing fallback logic to be bypassed.",
"is_bot": false,
"headline": "Fix: Validate and handle empty frontmatter fields",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:53:50Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "533d908e0ccff6d40c7761801657e6826f6f331f",
"body": "Add comprehensive test suite for ensureUniqueIdentifier function to verify\nthe iteration limit fix that prevents infinite loops when suffix functions\nmalfunction.\n\nTests cover:\n- Normal operation with sequential identifiers\n- Custom suffix function support\n- Iteration limit enforcement with malfunct\n[…]\nfiers added to used set\n\nComplements fix in commit 057f6ac which added MAX_ITERATIONS protection\nto ensureUniqueIdentifier function.\n\nFixes Issue #6: Infinite Loop Risk in Unique Identifier Generation",
"is_bot": false,
"headline": "Add test for unique identifier iteration limit (Issue #6)",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:51:31Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "eda0b0146f3a3050f68ea2dcc517310b308ddcc1",
"body": "Add typeof checks to ensure slug and id frontmatter properties are strings\nbefore calling string methods (.trim(), .replace()). This prevents runtime\nerrors when these properties contain non-string values like numbers, booleans,\nobjects, or arrays.\n\nChanges:\n- Added type validation for doc.frontMatt\n[…]\nenarios (valid slug with invalid id, vice versa)\n - Edge cases (empty strings, whitespace-only, nested paths)\n\nAll existing tests continue to pass, confirming backward compatibility.\n\nFixes Issue #13",
"is_bot": false,
"headline": "Fix: Add type validation for frontmatter properties",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:51:11Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "88ab82e1447d63ebbe1689de02855955ad7d2c00",
"body": "- Added consistent warning messages for all empty collection checks\n- Ensured all silent returns now have appropriate logging with \"Skipping.\" suffix\n- Added warning for empty processedDocs in generateStandardLLMFiles\n- Added warning for empty customLLMFiles configuration\n- Updated index.ts warning message to match consistent pattern\n- Removed redundant processedDocs.length check in generateMarkdownFiles conditional",
"is_bot": false,
"headline": "Fix: Standardize empty collection handling with consistent logging",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:50:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "579ddf4eb871987b798db4be4e5bd70c62b8009c",
"body": "Enhanced the JSDoc comment for the normalizePath utility function\nto provide clearer documentation about its purpose and usage.\n\n- Updated description to be more explicit about converting backslashes\n- Added emphasis on cross-platform compatibility\n- Improved formatting with proper line breaks\n- Mai\n[…]\nith requested format from Issue #16\n\nAlso includes the escapeRegex helper function that was added to improve\nregex safety in partial import resolution.\n\nCloses Issue #16 (Redundant Path Normalization)",
"is_bot": false,
"headline": "Improve JSDoc documentation for normalizePath function",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:50:42Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "f6966519037da1ca0ea68f7e95efaf69b46f32aa",
"body": "Add test coverage for the normalizePath() utility function that handles\nWindows backslashes. Tests verify:\n- Windows paths with backslashes are normalized to forward slashes\n- Unix paths with forward slashes remain unchanged\n- Mixed path separators are handled correctly\n- Edge cases like UNC paths, drive letters, and relative paths\n\nRelated to fix for High Priority Issue #5 (Path Separator Issues on Windows)",
"is_bot": false,
"headline": "Test: Add comprehensive Windows path normalization tests",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:50:36Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8ad44b309b94f6dbe13351d8e025370f65605668",
"body": "- Add trim() checks for empty/whitespace strings in path validation\n- Handle whitespace-only slug and id in frontmatter\n- Trim leading/trailing whitespace from relativePath\n- Add comprehensive tests for whitespace path handling\n- Ensures paths like \" \", \"\\t\\t\", or \" \\n \" are properly detected as invalid\n\nThis fixes Issue #9 by preventing whitespace-only strings from being\ntreated as valid paths, which could lead to filesystem errors.",
"is_bot": false,
"headline": "Fix: Handle whitespace-only strings in path operations",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:49:08Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "39650283e5de48d53c290af07f51843b57e94162",
"body": "…detection\n\n- Add MAX_PATH_ITERATIONS constant (10000) to prevent infinite loops\n- Implement timestamp-based fallback when max iterations reached\n- Add warning message when fallback is triggered\n- Include whitespace trimming improvements for path handling\n- Add comprehensive test suite for collision scenarios (5, 100, 1000 files)\n- All tests pass, handles large collision counts efficiently (1000 files in ~500ms)\n\nFixes high priority issue #7",
"is_bot": false,
"headline": "Fix: Add iteration limit to prevent infinite loops in path collision …",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:49:04Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "d4a7ee835fa540e5ce02e21444dc7010eecf681b",
"body": "Convert static regex to factory function to avoid lastIndex state leakage\nbetween calls. Global regex maintains state that can cause incorrect matches\nwhen used multiple times.\n\nChanges:\n- Replace static importRegex with createImportRegex() factory function\n- Create fresh regex instance for each res\n[…]\n.js to test suite\n\nThis prevents state leakage issues where the regex's lastIndex property\ncould persist between function calls, causing missed matches or incorrect\nbehavior in subsequent invocations.",
"is_bot": false,
"headline": "Fix: Prevent regex lastIndex state leakage in import detection",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:48:57Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "0fcb08fdeff45c7e3c148ef1f857aa14bc3e7227",
"body": "- Wraps all `new URL()` calls in try-catch blocks to prevent build crashes\n- Adds fallback to string concatenation for malformed URLs\n- Handles invalid siteUrl and resolvedUrl gracefully with warnings\n- Adds comprehensive test suite with 19 test cases covering:\n - Invalid characters in URLs\n - Mal\n[…]\nracters and unicode\n - Edge cases like empty strings, very long paths\n - Proper fallback behavior\n- Prevents crashes when URL constructor receives invalid input\n- All existing tests continue to pass",
"is_bot": false,
"headline": "Fix: Add error handling for URL constructor to prevent crashes",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:48:07Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "da559f90e5f8d8ac85cc7b58bd01d7c095ee5115",
"body": "…ation\n\n- Add safe bounds checking for split('\\n')[0] at lines 26 and 65\n- Prevents undefined propagation when accessing first line of empty strings\n- Add comprehensive test coverage for empty string edge cases\n- All tests pass: empty strings, null, undefined, whitespace-only, and multi-line inputs",
"is_bot": false,
"headline": "Fix: Add bounds checking for array access to prevent undefined propag…",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:47:59Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "2cbaebf6d64093357acb7df08722203f6b497bad",
"body": "Changed array length check from '> 1' to '>= 2' when accessing\npathParts[pathParts.length - 2] to properly validate array bounds.\n\nThis prevents potential undefined access when paths have only a single\nelement. The fix ensures that we safely access the second-to-last element\nonly when the array has \n[…]\nr edge cases:\n * Single element paths\n * Empty paths\n * Root level paths with leading slashes\n * Paths with only slashes\n * Mixed path lengths\n- Updated test-header-deduplication.js with same fix",
"is_bot": false,
"headline": "Fix: Correct array bounds checking in path operations",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:47:47Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "87ce7e135c411fcb1695e8316e25af4192231f1d",
"body": "Updated pattern matching logic to check both site-relative paths\n(e.g., \"docs/quickstart/file.md\") and docs-relative paths (e.g.,\n\"quickstart/file.md\") for better usability. This fixes the confusing\nbehavior where patterns would only match against resolved URLs.\n\nChanges:\n- Added matchesPattern() he\n[…]\nsted directory patterns (e.g., \"guides/**/*\")\n- Ordered patterns with multiple sections\n- Deep nested patterns (e.g., \"tutorials/**/*\")\n- Specific file patterns\n- Mixed pattern types\n- Ignore patterns",
"is_bot": false,
"headline": "Fix: Match includeOrder patterns against file paths (Issue #25)",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:35:47Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "58d52a62bfe1db9ae82ece75072429bd0444d12d",
"body": "Problem: ignorePath values were not being escaped before use in RegExp\nconstructor, causing special regex characters (., *, +, ?, ^, $, {}, (),\n|, [], \\) to be interpreted as regex metacharacters instead of literal\ncharacters. This could cause:\n- Incorrect path matching (e.g., \"v1.0\" matching \"v1X0\"\n[…]\nnumbers with dots (v1.0)\n- Complex paths with multiple special chars\n- Regex injection prevention\n- Normal paths still work correctly\n\nAll tests pass. Added test-regex-escaping.js to test:unit script.",
"is_bot": false,
"headline": "Fix: Escape regex special characters in ignorePath",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:32:21Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a12d80a87a3a0ea76bb183baa8f25acc89747e1b",
"body": "- Add 23 test cases covering unicode handling, special characters,\n edge cases, and real-world examples\n- Tests verify current ASCII-only sanitization behavior\n- Update package.json to include new test in test suite\n- All tests pass successfully\n\nNote: This establishes test coverage for sanitizeForFilename function.\nThe redundant conditional in generator.ts was already fixed in ae371f1.",
"is_bot": false,
"headline": "Add comprehensive tests for filename sanitization",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:32:01Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "0c87af263316a19b1cb58cd053fb632d26e5f5fd",
"body": "…ue #15)\n\nProblem: The plugin was manually removing numbered prefixes (e.g., \"01-\")\nfrom file paths before checking the Docusaurus route map, which could\ncause incorrect route resolution when Docusaurus has already resolved\nroutes with numbered prefixes included.\n\nSolution: Improved routeMap lookup \n[…]\n match with numbered prefixes\n- Fallback to prefix removal\n- Precedence verification\n- Complex nested numbered folders\n- Mixed numbered/non-numbered segments\n- Trailing slash handling\n\nAll tests pass.",
"is_bot": false,
"headline": "Fix: Use Docusaurus resolved routes before manual prefix removal (Iss…",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:31:33Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "3a25bdd83b9698fb86227a71b2b6a5ee80f0c066",
"body": "…ue #23)\n\n- Add lineWidth: 0 to prevent line wrapping of long strings\n- Add defaultStringType: 'QUOTE_DOUBLE' for consistent string handling\n- Add defaultKeyType: 'PLAIN' for clean key formatting\n- Create comprehensive test suite for YAML encoding\n- Test emojis, special characters, unicode, and long strings\n\nFixes encoding issues with emojis and special characters in frontmatter.",
"is_bot": false,
"headline": "Fix: Add proper options to YAML.stringify for special characters (Iss…",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:31:05Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "42fef218f43c98b658377b02e3a4ce7eee683ca2",
"body": "- Encode path segments using encodeURIComponent before URL construction\n- Preserve already-encoded segments to avoid double-encoding\n- Handle special characters (spaces, unicode, #, ?, &, +, =, etc.)\n- Add comprehensive test suite with 12 test cases covering:\n * Spaces in filenames and paths\n * Un\n[…]\n Parentheses and mixed special characters\n * Already-encoded paths\n * Normal filenames\n\nFixes issues with paths containing spaces and special characters\nnot being properly encoded in generated URLs.",
"is_bot": false,
"headline": "Fix: Add proper URL encoding for path segments",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:29:59Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "4d239d193a1be7f9718c7a003f867da58a2d7285",
"body": "- Updated slug and ID handling in generator.ts to detect \"/\" in values\n- When slug/ID contains \"/\", create nested directory structure\n- When slug/ID is simple (no \"/\"), only replace filename\n- Added comprehensive test suite with 15 test cases\n- Fixed existing test-filenames.js to work with preserveDirectoryStructure\n- Added proper handling for empty slugs/IDs after trimming slashes\n- Tested edge cases: leading/trailing slashes, deeply nested paths, spaces",
"is_bot": false,
"headline": "Fix: Handle slugs with / as nested directory paths",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:27:56Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "8e1cd45e7fa31075aac52254e3e0927156775f7b",
"body": "The previous logic incorrectly handled baseUrl concatenation by only\nremoving trailing slashes when present, but not handling the root '/'\ncase properly. This could lead to malformed URLs.\n\nThe new implementation:\n- Normalizes baseUrl by removing trailing slashes except for root '/'\n- Properly defau\n[…]\nthout trailing slash '/docs' → 'https://example.com/docs'\n- Empty/undefined baseUrl defaults to root\n- Deep paths with and without trailing slashes\n- URLs with ports and various baseUrl configurations",
"is_bot": false,
"headline": "Fix: Correct baseUrl concatenation logic",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:27:14Z",
"body_truncated": true,
"is_coding_agent": false
},
{
"oid": "a06d236b4e8ebadba66e8420b2fb8699f7f5e60c",
"body": "…y (Issue #19)\n\nAdded an index signature [key: string]: unknown to the PluginOptions\ninterface to satisfy Docusaurus base plugin type requirements. This\nresolves TypeScript type errors when the plugin is used with Docusaurus.",
"is_bot": false,
"headline": "Fix: Add index signature to PluginOptions for Docusaurus compatibilit…",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:26:14Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "83da1a4fe68077cd6e8391522df41d325e74e07f",
"body": null,
"is_bot": false,
"headline": "0.2.2",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:13:07Z",
"body_truncated": false,
"is_coding_agent": false
},
{
"oid": "4d870defd3f91535d0d0201c0ef8a44f31c59655",
"body": "🤖 Generated with [Claude Code](https://claude.ai/code)",
"is_bot": false,
"headline": "Fix TypeScript error with YAML.stringify options",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:13:07Z",
"body_truncated": false,
"is_coding_agent": true
},
{
"oid": "847a3801011ad9478e5cafa489eaa5aa0897f3eb",
"body": null,
"is_bot": false,
"headline": "0.2.1",
"author_name": "rachfop",
"author_login": "rachfop",
"committed_at": "2026-02-08T01:13:07Z",
"body_truncated": false,
"is_coding_agent": false
}
],
"releases_count": 10,
"commits_last_year": 112,
"latest_release_at": "2026-07-22T23:53:03Z",
"latest_release_tag": "v0.5.1",
"releases_from_tags": false,
"days_since_last_push": 0,
"active_weeks_last_year": 11,
"days_since_latest_release": 0,
"mean_days_between_releases": 47.6
},
"community": {
"has_readme": true,
"has_license": false,
"has_description": true,
"has_contributing": false,
"health_percentage": 28,
"has_issue_template": false,
"has_code_of_conduct": false,
"has_pull_request_template": false
},
"ecosystem": {
"packages": [
{
"name": "docusaurus-plugin-llms",
"exists": true,
"license": "MIT",
"keywords": [
"docusaurus",
"docusaurus-plugin",
"documentation",
"llm",
"llms",
"llmtxt"
],
"ecosystem": "npm",
"matches_repo": true,
"registry_url": "https://www.npmjs.com/package/docusaurus-plugin-llms",
"is_deprecated": false,
"latest_version": "0.5.1",
"repository_url": "https://github.com/rachfop/docusaurus-plugin-llms",
"versions_count": 13,
"total_downloads": null,
"dependents_count": null,
"deprecation_note": null,
"maintainers_count": 1,
"monthly_downloads": 71539,
"first_published_at": "2025-05-16T03:08:12.949000Z",
"latest_published_at": "2026-07-22T23:51:21.828000Z",
"latest_version_yanked": null,
"days_since_latest_publish": 0
}
]
},
"popularity": {
"forks": 19,
"stars": 139,
"watchers": 1,
"fork_history": {
"days": [
{
"date": "2025-05-27",
"count": 1
},
{
"date": "2025-06-23",
"count": 1
},
{
"date": "2025-07-15",
"count": 1
},
{
"date": "2025-08-03",
"count": 1
},
{
"date": "2025-08-13",
"count": 1
},
{
"date": "2025-08-15",
"count": 1
},
{
"date": "2025-09-04",
"count": 1
},
{
"date": "2025-09-24",
"count": 1
},
{
"date": "2025-11-07",
"count": 1
},
{
"date": "2025-12-08",
"count": 1
},
{
"date": "2026-01-20",
"count": 1
},
{
"date": "2026-02-18",
"count": 1
},
{
"date": "2026-03-27",
"count": 1
},
{
"date": "2026-04-08",
"count": 1
},
{
"date": "2026-04-14",
"count": 1
},
{
"date": "2026-04-17",
"count": 1
},
{
"date": "2026-06-01",
"count": 1
},
{
"date": "2026-07-16",
"count": 1
},
{
"date": "2026-07-22",
"count": 1
}
],
"complete": true,
"collected": 19,
"total_forks": 19
},
"star_history": null,
"open_issues_and_prs": 2
},
"ai_readiness": {
"has_nix": false,
"example_dirs": [
"examples"
],
"has_llms_txt": false,
"has_dockerfile": false,
"has_mcp_signal": false,
"bootstrap_files": [],
"api_schema_files": [],
"has_devcontainer": false,
"typecheck_configs": [
"tsconfig.json"
],
"toolchain_manifests": [],
"largest_source_bytes": 26166,
"source_files_sampled": 81,
"oversized_source_files": 0,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"dependencies": {
"manifests": [
"package.json"
],
"advisories": {
"error": null,
"scope": "repository_graph",
"source": "osv",
"findings": [
{
"name": "shell-quote",
"direct": false,
"version": "1.8.2",
"severity": "critical",
"ecosystem": "npm",
"cvss_score": 9.8,
"advisory_ids": [
"GHSA-395f-4hp3-45gv",
"GHSA-w7jw-789q-3m8p"
],
"fixed_version": "1.9.0",
"advisory_count": 2,
"oldest_advisory_days": 43
},
{
"name": "minimatch",
"direct": true,
"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": 154
},
{
"name": "minimatch",
"direct": true,
"version": "9.0.3",
"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": 154
},
{
"name": "axios",
"direct": false,
"version": "1.16.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 8.2,
"advisory_ids": [
"GHSA-42h9-826w-cgv3",
"GHSA-7q8q-rj6j-mhjq",
"GHSA-f4gw-2p7v-4548",
"GHSA-gcfj-64vw-6mp9",
"GHSA-hcpx-6fm6-wx23",
"GHSA-jqh4-m9w3-8hp9",
"GHSA-mmx7-hfxf-jppx",
"GHSA-mwf2-3pr3-8698",
"GHSA-pmv8-rq9r-6j72",
"GHSA-xj6q-8x83-jv6g"
],
"fixed_version": "1.18.0",
"advisory_count": 10,
"oldest_advisory_days": 2
},
{
"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-v6h2-p8h4-qcjw"
],
"fixed_version": "5.0.7",
"advisory_count": 3,
"oldest_advisory_days": 408
},
{
"name": "brace-expansion",
"direct": false,
"version": "1.1.15",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3jxr-9vmj-r5cp"
],
"fixed_version": "5.0.7",
"advisory_count": 1,
"oldest_advisory_days": 2
},
{
"name": "brace-expansion",
"direct": false,
"version": "2.0.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-3jxr-9vmj-r5cp",
"GHSA-f886-m6hf-6m8v",
"GHSA-v6h2-p8h4-qcjw"
],
"fixed_version": "5.0.7",
"advisory_count": 3,
"oldest_advisory_days": 408
},
{
"name": "fast-uri",
"direct": false,
"version": "3.0.6",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-4c8g-83qw-93j6",
"GHSA-q3j6-qgpj-74h6",
"GHSA-v2hh-gcrm-f6hx",
"GHSA-v39h-62p7-jpjc"
],
"fixed_version": "4.1.1",
"advisory_count": 4,
"oldest_advisory_days": 75
},
{
"name": "form-data",
"direct": false,
"version": "4.0.5",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-hmw2-7cc7-3qxx"
],
"fixed_version": "4.0.6",
"advisory_count": 1,
"oldest_advisory_days": 37
},
{
"name": "js-yaml",
"direct": false,
"version": "3.14.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-52cp-r559-cp3m",
"GHSA-h67p-54hq-rp68",
"GHSA-mh29-5h37-fv8m"
],
"fixed_version": "4.3.0",
"advisory_count": 3,
"oldest_advisory_days": 250
},
{
"name": "js-yaml",
"direct": false,
"version": "4.2.0",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-52cp-r559-cp3m"
],
"fixed_version": "4.3.0",
"advisory_count": 1,
"oldest_advisory_days": 2
},
{
"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": 182
},
{
"name": "node-forge",
"direct": false,
"version": "1.3.1",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 8.6,
"advisory_ids": [
"GHSA-2328-f5f3-gj25",
"GHSA-554w-wpv2-vw27",
"GHSA-5gfm-wpxj-wjgq",
"GHSA-5m6q-g25r-mvwx",
"GHSA-65ch-62r8-g69g",
"GHSA-ppp5-5v6c-4jwp",
"GHSA-q67f-28xg-22rw"
],
"fixed_version": "1.4.0",
"advisory_count": 7,
"oldest_advisory_days": 238
},
{
"name": "path-to-regexp",
"direct": false,
"version": "0.1.12",
"severity": "high",
"ecosystem": "npm",
"cvss_score": 7.5,
"advisory_ids": [
"GHSA-37ch-88jc-xwx2"
],
"fixed_version": "0.1.13",
"advisory_count": 1,
"oldest_advisory_days": 117
},
{
"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": 119
},
{
"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": 144
},
{
"name": "svgo",
"direct": false,
"version": "2.8.2",
"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": 1
},
{
"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": 91
},
{
"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": 7
},
{
"name": "ws",
"direct": false,
"version": "7.5.10",
"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": 37
},
{
"name": "ws",
"direct": false,
"version": "8.18.2",
"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": 65
},
{
"name": "yaml",
"direct": true,
"version": "2.8.1",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 4.3,
"advisory_ids": [
"GHSA-48c2-rrv3-qjmp"
],
"fixed_version": "2.8.3",
"advisory_count": 1,
"oldest_advisory_days": 119
},
{
"name": "ajv",
"direct": false,
"version": "8.17.1",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 5.3,
"advisory_ids": [
"GHSA-2g4f-4pwh-qvx6"
],
"fixed_version": "8.18.0",
"advisory_count": 1,
"oldest_advisory_days": 161
},
{
"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": 34
},
{
"name": "joi",
"direct": false,
"version": "17.13.3",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 5.3,
"advisory_ids": [
"GHSA-q7cg-457f-vx79"
],
"fixed_version": "18.2.1",
"advisory_count": 1,
"oldest_advisory_days": 41
},
{
"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": 204
},
{
"name": "webpack-dev-server",
"direct": false,
"version": "4.15.2",
"severity": "moderate",
"ecosystem": "npm",
"cvss_score": 6.5,
"advisory_ids": [
"GHSA-4v9v-hfq4-rm2v",
"GHSA-79cf-xcqc-c78w",
"GHSA-9jgg-88mc-972h",
"GHSA-f5vj-f2hx-8m93",
"GHSA-m28w-2pqf-7qgj",
"GHSA-mx8g-39q3-5c79"
],
"fixed_version": "5.2.6",
"advisory_count": 6,
"oldest_advisory_days": 413
},
{
"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": 2
},
{
"name": "launch-editor",
"direct": false,
"version": "2.10.0",
"severity": "low",
"ecosystem": "npm",
"cvss_score": 0,
"advisory_ids": [
"GHSA-v6wh-96g9-6wx3"
],
"fixed_version": "8.0.16",
"advisory_count": 1,
"oldest_advisory_days": 37
},
{
"name": "on-headers",
"direct": false,
"version": "1.0.2",
"severity": "low",
"ecosystem": "npm",
"cvss_score": 3.4,
"advisory_ids": [
"GHSA-76c9-3jph-rj3q"
],
"fixed_version": "1.1.0",
"advisory_count": 1,
"oldest_advisory_days": 370
},
{
"name": "webpack",
"direct": false,
"version": "5.99.8",
"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": 167
}
],
"collected": true,
"malicious": [],
"truncated": false,
"by_severity": {
"low": 4,
"high": 20,
"critical": 1,
"moderate": 6
},
"advisory_count": 74,
"affected_count": 31,
"assessed_count": 1019,
"malicious_count": 0,
"assessed_package": null,
"unassessed_count": 0,
"direct_affected_count": 3
},
"ecosystems": [
"npm"
],
"dependencies": [
{
"name": "gray-matter",
"manifest": "package.json",
"ecosystem": "npm",
"version_constraint": "4.0.3"
},
{
"name": "minimatch",
"manifest": "package.json",
"ecosystem": "npm",
"version_constraint": "9.0.3"
},
{
"name": "yaml",
"manifest": "package.json",
"ecosystem": "npm",
"version_constraint": "2.8.1"
}
],
"all_dependencies": {
"error": null,
"source": "github-sbom",
"packages": [
{
"name": "gray-matter",
"direct": true,
"version": "4.0.3",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": true,
"version": "3.1.2",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": true,
"version": "3.1.5",
"ecosystem": "npm"
},
{
"name": "minimatch",
"direct": true,
"version": "9.0.3",
"ecosystem": "npm"
},
{
"name": "yaml",
"direct": true,
"version": "1.10.3",
"ecosystem": "npm"
},
{
"name": "yaml",
"direct": true,
"version": "2.8.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.27.1",
"ecosystem": "npm"
},
{
"name": "@babel/runtime-corejs3",
"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": "@colors/colors",
"direct": false,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "@discoveryjs/json-ext",
"direct": false,
"version": "0.5.7",
"ecosystem": "npm"
},
{
"name": "@docusaurus/core",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "@docusaurus/cssnano-preset",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "@docusaurus/logger",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "@docusaurus/mdx-loader",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "@docusaurus/react-loadable",
"direct": false,
"version": "5.5.2",
"ecosystem": "npm"
},
{
"name": "@docusaurus/react-loadable",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "@docusaurus/types",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "@docusaurus/utils",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "@docusaurus/utils-common",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "@docusaurus/utils-validation",
"direct": false,
"version": "3.0.0",
"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": "@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.6",
"ecosystem": "npm"
},
{
"name": "@jridgewell/sourcemap-codec",
"direct": false,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "@jridgewell/trace-mapping",
"direct": false,
"version": "0.3.31",
"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": "@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": "@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": "2.3.1",
"ecosystem": "npm"
},
{
"name": "@polka/url",
"direct": false,
"version": "1.0.0-next.29",
"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": "@slorber/static-site-generator-webpack-plugin",
"direct": false,
"version": "4.0.7",
"ecosystem": "npm"
},
{
"name": "@svgr/babel-plugin-add-jsx-attribute",
"direct": false,
"version": "6.5.1",
"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": "6.5.1",
"ecosystem": "npm"
},
{
"name": "@svgr/babel-plugin-svg-dynamic-title",
"direct": false,
"version": "6.5.1",
"ecosystem": "npm"
},
{
"name": "@svgr/babel-plugin-svg-em-dimensions",
"direct": false,
"version": "6.5.1",
"ecosystem": "npm"
},
{
"name": "@svgr/babel-plugin-transform-react-native-svg",
"direct": false,
"version": "6.5.1",
"ecosystem": "npm"
},
{
"name": "@svgr/babel-plugin-transform-svg-component",
"direct": false,
"version": "6.5.1",
"ecosystem": "npm"
},
{
"name": "@svgr/babel-preset",
"direct": false,
"version": "6.5.1",
"ecosystem": "npm"
},
{
"name": "@svgr/core",
"direct": false,
"version": "6.5.1",
"ecosystem": "npm"
},
{
"name": "@svgr/hast-util-to-babel-ast",
"direct": false,
"version": "6.5.1",
"ecosystem": "npm"
},
{
"name": "@svgr/plugin-jsx",
"direct": false,
"version": "6.5.1",
"ecosystem": "npm"
},
{
"name": "@svgr/plugin-svgo",
"direct": false,
"version": "6.5.1",
"ecosystem": "npm"
},
{
"name": "@svgr/webpack",
"direct": false,
"version": "6.5.1",
"ecosystem": "npm"
},
{
"name": "@szmarczak/http-timer",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "@types/body-parser",
"direct": false,
"version": "1.19.5",
"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/debug",
"direct": false,
"version": "4.1.13",
"ecosystem": "npm"
},
{
"name": "@types/eslint",
"direct": false,
"version": "9.6.1",
"ecosystem": "npm"
},
{
"name": "@types/eslint-scope",
"direct": false,
"version": "3.7.7",
"ecosystem": "npm"
},
{
"name": "@types/estree",
"direct": false,
"version": "1.0.7",
"ecosystem": "npm"
},
{
"name": "@types/estree-jsx",
"direct": false,
"version": "1.0.5",
"ecosystem": "npm"
},
{
"name": "@types/express",
"direct": false,
"version": "4.17.21",
"ecosystem": "npm"
},
{
"name": "@types/express-serve-static-core",
"direct": false,
"version": "4.19.6",
"ecosystem": "npm"
},
{
"name": "@types/express-serve-static-core",
"direct": false,
"version": "5.0.6",
"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.0.4",
"ecosystem": "npm"
},
{
"name": "@types/http-errors",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "@types/http-proxy",
"direct": false,
"version": "1.17.16",
"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/js-yaml",
"direct": false,
"version": "4.0.9",
"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/minimatch",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "@types/ms",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "@types/node",
"direct": false,
"version": "20.6.0",
"ecosystem": "npm"
},
{
"name": "@types/node-forge",
"direct": false,
"version": "1.3.11",
"ecosystem": "npm"
},
{
"name": "@types/parse-json",
"direct": false,
"version": "4.0.2",
"ecosystem": "npm"
},
{
"name": "@types/qs",
"direct": false,
"version": "6.9.18",
"ecosystem": "npm"
},
{
"name": "@types/range-parser",
"direct": false,
"version": "1.2.7",
"ecosystem": "npm"
},
{
"name": "@types/react",
"direct": false,
"version": "19.1.4",
"ecosystem": "npm"
},
{
"name": "@types/retry",
"direct": false,
"version": "0.12.0",
"ecosystem": "npm"
},
{
"name": "@types/send",
"direct": false,
"version": "0.17.4",
"ecosystem": "npm"
},
{
"name": "@types/serve-index",
"direct": false,
"version": "1.9.4",
"ecosystem": "npm"
},
{
"name": "@types/serve-static",
"direct": false,
"version": "1.15.7",
"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": "@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.14.1",
"ecosystem": "npm"
},
{
"name": "acorn-jsx",
"direct": false,
"version": "5.3.2",
"ecosystem": "npm"
},
{
"name": "acorn-walk",
"direct": false,
"version": "8.3.4",
"ecosystem": "npm"
},
{
"name": "address",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "agent-base",
"direct": false,
"version": "6.0.2",
"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.17.1",
"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": "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.1.0",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "ansi-styles",
"direct": false,
"version": "6.2.1",
"ecosystem": "npm"
},
{
"name": "anymatch",
"direct": false,
"version": "3.1.3",
"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": "astring",
"direct": false,
"version": "1.9.0",
"ecosystem": "npm"
},
{
"name": "asynckit",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "at-least-node",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "autoprefixer",
"direct": false,
"version": "10.5.0",
"ecosystem": "npm"
},
{
"name": "axios",
"direct": false,
"version": "1.16.1",
"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": "baseline-browser-mapping",
"direct": false,
"version": "2.10.33",
"ecosystem": "npm"
},
{
"name": "batch",
"direct": false,
"version": "0.6.1",
"ecosystem": "npm"
},
{
"name": "big.js",
"direct": false,
"version": "5.2.2",
"ecosystem": "npm"
},
{
"name": "binary-extensions",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "body-parser",
"direct": false,
"version": "1.20.3",
"ecosystem": "npm"
},
{
"name": "bonjour-service",
"direct": false,
"version": "1.3.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.0.1",
"ecosystem": "npm"
},
{
"name": "braces",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "browserslist",
"direct": false,
"version": "4.28.2",
"ecosystem": "npm"
},
{
"name": "buffer-from",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "bytes",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "bytes",
"direct": false,
"version": "3.1.2",
"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.4.1",
"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": "chokidar",
"direct": false,
"version": "3.6.0",
"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": "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.20",
"ecosystem": "npm"
},
{
"name": "combine-promises",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "combined-stream",
"direct": false,
"version": "1.0.8",
"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": "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.0",
"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-history-api-fallback",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "consola",
"direct": false,
"version": "2.15.3",
"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.1",
"ecosystem": "npm"
},
{
"name": "cookie-signature",
"direct": false,
"version": "1.0.6",
"ecosystem": "npm"
},
{
"name": "copy-webpack-plugin",
"direct": false,
"version": "11.0.0",
"ecosystem": "npm"
},
{
"name": "core-js",
"direct": false,
"version": "3.42.0",
"ecosystem": "npm"
},
{
"name": "core-js-compat",
"direct": false,
"version": "3.49.0",
"ecosystem": "npm"
},
{
"name": "core-js-pure",
"direct": false,
"version": "3.49.0",
"ecosystem": "npm"
},
{
"name": "core-util-is",
"direct": false,
"version": "1.0.3",
"ecosystem": "npm"
},
{
"name": "cosmiconfig",
"direct": false,
"version": "6.0.0",
"ecosystem": "npm"
},
{
"name": "cosmiconfig",
"direct": false,
"version": "7.1.0",
"ecosystem": "npm"
},
{
"name": "cosmiconfig",
"direct": false,
"version": "8.3.6",
"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-declaration-sorter",
"direct": false,
"version": "6.4.1",
"ecosystem": "npm"
},
{
"name": "css-loader",
"direct": false,
"version": "6.11.0",
"ecosystem": "npm"
},
{
"name": "css-minimizer-webpack-plugin",
"direct": false,
"version": "4.2.2",
"ecosystem": "npm"
},
{
"name": "css-select",
"direct": false,
"version": "4.3.0",
"ecosystem": "npm"
},
{
"name": "css-tree",
"direct": false,
"version": "1.1.3",
"ecosystem": "npm"
},
{
"name": "css-what",
"direct": false,
"version": "6.1.0",
"ecosystem": "npm"
},
{
"name": "cssesc",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "cssnano",
"direct": false,
"version": "5.1.15",
"ecosystem": "npm"
},
{
"name": "cssnano-preset-advanced",
"direct": false,
"version": "5.3.10",
"ecosystem": "npm"
},
{
"name": "cssnano-preset-default",
"direct": false,
"version": "5.2.14",
"ecosystem": "npm"
},
{
"name": "cssnano-utils",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "csso",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "csstype",
"direct": false,
"version": "3.1.3",
"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.4.3",
"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-gateway",
"direct": false,
"version": "6.0.3",
"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-properties",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "del",
"direct": false,
"version": "6.1.1",
"ecosystem": "npm"
},
{
"name": "delayed-stream",
"direct": false,
"version": "1.0.0",
"ecosystem": "npm"
},
{
"name": "depd",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "depd",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "dequal",
"direct": false,
"version": "2.0.3",
"ecosystem": "npm"
},
{
"name": "destroy",
"direct": false,
"version": "1.2.0",
"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-alt",
"direct": false,
"version": "1.1.6",
"ecosystem": "npm"
},
{
"name": "devlop",
"direct": false,
"version": "1.1.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-serializer",
"direct": false,
"version": "1.4.1",
"ecosystem": "npm"
},
{
"name": "domelementtype",
"direct": false,
"version": "2.3.0",
"ecosystem": "npm"
},
{
"name": "domhandler",
"direct": false,
"version": "4.3.1",
"ecosystem": "npm"
},
{
"name": "domutils",
"direct": false,
"version": "2.8.0",
"ecosystem": "npm"
},
{
"name": "dot-case",
"direct": false,
"version": "3.0.4",
"ecosystem": "npm"
},
{
"name": "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.364",
"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": "enhanced-resolve",
"direct": false,
"version": "5.18.1",
"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": "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-object-atoms",
"direct": false,
"version": "1.1.1",
"ecosystem": "npm"
},
{
"name": "es-set-tostringtag",
"direct": false,
"version": "2.1.0",
"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.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.21.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.0.6",
"ecosystem": "npm"
},
{
"name": "fastq",
"direct": false,
"version": "1.19.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": "file-loader",
"direct": false,
"version": "6.2.0",
"ecosystem": "npm"
},
{
"name": "filesize",
"direct": false,
"version": "8.0.7",
"ecosystem": "npm"
},
{
"name": "fill-range",
"direct": false,
"version": "7.1.1",
"ecosystem": "npm"
},
{
"name": "finalhandler",
"direct": false,
"version": "1.3.1",
"ecosystem": "npm"
},
{
"name": "find-cache-dir",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "find-up",
"direct": false,
"version": "3.0.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": "follow-redirects",
"direct": false,
"version": "1.16.0",
"ecosystem": "npm"
},
{
"name": "fork-ts-checker-webpack-plugin",
"direct": false,
"version": "6.5.3",
"ecosystem": "npm"
},
{
"name": "form-data",
"direct": false,
"version": "4.0.5",
"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": "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": "11.3.5",
"ecosystem": "npm"
},
{
"name": "fs-extra",
"direct": false,
"version": "9.1.0",
"ecosystem": "npm"
},
{
"name": "fs-monkey",
"direct": false,
"version": "1.0.6",
"ecosystem": "npm"
},
{
"name": "fs.realpath",
"direct": false,
"version": "1.0.0",
"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-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": "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-regexp",
"direct": false,
"version": "0.4.1",
"ecosystem": "npm"
},
{
"name": "global-dirs",
"direct": false,
"version": "3.0.1",
"ecosystem": "npm"
},
{
"name": "global-modules",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "global-prefix",
"direct": false,
"version": "3.0.0",
"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": "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-tostringtag",
"direct": false,
"version": "1.0.2",
"ecosystem": "npm"
},
{
"name": "has-yarn",
"direct": false,
"version": "3.0.0",
"ecosystem": "npm"
},
{
"name": "hasown",
"direct": false,
"version": "2.0.4",
"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-entities",
"direct": false,
"version": "2.6.0",
"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.3",
"ecosystem": "npm"
},
{
"name": "htmlparser2",
"direct": false,
"version": "6.1.0",
"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.6.3",
"ecosystem": "npm"
},
{
"name": "http-errors",
"direct": false,
"version": "2.0.0",
"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": "https-proxy-agent",
"direct": false,
"version": "5.0.1",
"ecosystem": "npm"
},
{
"name": "human-signals",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "iconv-lite",
"direct": false,
"version": "0.4.24",
"ecosystem": "npm"
},
{
"name": "icss-utils",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "ignore",
"direct": false,
"version": "5.3.2",
"ecosystem": "npm"
},
{
"name": "image-size",
"direct": false,
"version": "1.2.1",
"ecosystem": "npm"
},
{
"name": "immer",
"direct": false,
"version": "9.0.21",
"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": "imurmurhash",
"direct": false,
"version": "0.1.4",
"ecosystem": "npm"
},
{
"name": "indent-string",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "inflight",
"direct": false,
"version": "1.0.6",
"ecosystem": "npm"
},
{
"name": "inherits",
"direct": false,
"version": "2.0.3",
"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": "1.4.0",
"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.2.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-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-installed-globally",
"direct": false,
"version": "0.4.0",
"ecosystem": "npm"
},
{
"name": "is-npm",
"direct": false,
"version": "6.0.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-cwd",
"direct": false,
"version": "2.2.0",
"ecosystem": "npm"
},
{
"name": "is-path-inside",
"direct": false,
"version": "3.0.3",
"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-root",
"direct": false,
"version": "2.1.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-wsl",
"direct": false,
"version": "2.2.0",
"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": "isexe",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "isobject",
"direct": false,
"version": "3.0.1",
"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.3",
"ecosystem": "npm"
},
{
"name": "js-tokens",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "js-yaml",
"direct": false,
"version": "3.14.1",
"ecosystem": "npm"
},
{
"name": "js-yaml",
"direct": false,
"version": "4.2.0",
"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": "6.2.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": "kleur",
"direct": false,
"version": "3.0.3",
"ecosystem": "npm"
},
{
"name": "latest-version",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "launch-editor",
"direct": false,
"version": "2.10.0",
"ecosystem": "npm"
},
{
"name": "leven",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "lilconfig",
"direct": false,
"version": "2.1.0",
"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-utils",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "loader-utils",
"direct": false,
"version": "3.3.1",
"ecosystem": "npm"
},
{
"name": "locate-path",
"direct": false,
"version": "3.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.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": "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": "5.1.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.14",
"ecosystem": "npm"
},
{
"name": "media-typer",
"direct": false,
"version": "0.3.0",
"ecosystem": "npm"
},
{
"name": "memfs",
"direct": false,
"version": "3.5.3",
"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-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": "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": "minimist",
"direct": false,
"version": "1.2.8",
"ecosystem": "npm"
},
{
"name": "mrmime",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.0.0",
"ecosystem": "npm"
},
{
"name": "ms",
"direct": false,
"version": "2.1.3",
"ecosystem": "npm"
},
{
"name": "multicast-dns",
"direct": false,
"version": "7.2.5",
"ecosystem": "npm"
},
{
"name": "nanoid",
"direct": false,
"version": "3.3.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-forge",
"direct": false,
"version": "1.3.1",
"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": "6.1.0",
"ecosystem": "npm"
},
{
"name": "normalize-url",
"direct": false,
"version": "8.0.1",
"ecosystem": "npm"
},
{
"name": "npm-run-path",
"direct": false,
"version": "4.0.1",
"ecosystem": "npm"
},
{
"name": "nth-check",
"direct": false,
"version": "2.1.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.4.1",
"ecosystem": "npm"
},
{
"name": "on-headers",
"direct": false,
"version": "1.0.2",
"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": "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-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": "3.0.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-retry",
"direct": false,
"version": "4.6.2",
"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": "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": "parse5",
"direct": false,
"version": "7.3.0",
"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": "3.0.0",
"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-to-regexp",
"direct": false,
"version": "0.1.12",
"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": "pkg-dir",
"direct": false,
"version": "7.0.0",
"ecosystem": "npm"
},
{
"name": "pkg-up",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "postcss",
"direct": false,
"version": "8.5.15",
"ecosystem": "npm"
},
{
"name": "postcss-calc",
"direct": false,
"version": "8.2.4",
"ecosystem": "npm"
},
{
"name": "postcss-colormin",
"direct": false,
"version": "5.3.1",
"ecosystem": "npm"
},
{
"name": "postcss-convert-values",
"direct": false,
"version": "5.1.3",
"ecosystem": "npm"
},
{
"name": "postcss-discard-comments",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "postcss-discard-duplicates",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-discard-empty",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "postcss-discard-overridden",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-discard-unused",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-loader",
"direct": false,
"version": "7.3.4",
"ecosystem": "npm"
},
{
"name": "postcss-merge-idents",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "postcss-merge-longhand",
"direct": false,
"version": "5.1.7",
"ecosystem": "npm"
},
{
"name": "postcss-merge-rules",
"direct": false,
"version": "5.1.4",
"ecosystem": "npm"
},
{
"name": "postcss-minify-font-values",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-minify-gradients",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "postcss-minify-params",
"direct": false,
"version": "5.1.4",
"ecosystem": "npm"
},
{
"name": "postcss-minify-selectors",
"direct": false,
"version": "5.2.1",
"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-normalize-charset",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-display-values",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-positions",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-repeat-style",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-string",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-timing-functions",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-unicode",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-url",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-normalize-whitespace",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "postcss-ordered-values",
"direct": false,
"version": "5.1.3",
"ecosystem": "npm"
},
{
"name": "postcss-reduce-idents",
"direct": false,
"version": "5.2.0",
"ecosystem": "npm"
},
{
"name": "postcss-reduce-initial",
"direct": false,
"version": "5.1.2",
"ecosystem": "npm"
},
{
"name": "postcss-reduce-transforms",
"direct": false,
"version": "5.1.0",
"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": "4.4.1",
"ecosystem": "npm"
},
{
"name": "postcss-svgo",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "postcss-unique-selectors",
"direct": false,
"version": "5.1.1",
"ecosystem": "npm"
},
{
"name": "postcss-value-parser",
"direct": false,
"version": "4.2.0",
"ecosystem": "npm"
},
{
"name": "postcss-zindex",
"direct": false,
"version": "5.1.0",
"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": "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": "proxy-from-env",
"direct": false,
"version": "2.1.0",
"ecosystem": "npm"
},
{
"name": "punycode",
"direct": false,
"version": "2.3.1",
"ecosystem": "npm"
},
{
"name": "pupa",
"direct": false,
"version": "3.1.0",
"ecosystem": "npm"
},
{
"name": "qs",
"direct": false,
"version": "6.13.0",
"ecosystem": "npm"
},
{
"name": "queue",
"direct": false,
"version": "6.0.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": "rc",
"direct": false,
"version": "1.2.8",
"ecosystem": "npm"
},
{
"name": "react",
"direct": false,
"version": "18.3.1",
"ecosystem": "npm"
},
{
"name": "react-dev-utils",
"direct": false,
"version": "12.0.1",
"ecosystem": "npm"
},
{
"name": "react-dom",
"direct": false,
"version": "18.3.1",
"ecosystem": "npm"
},
{
"name": "react-error-overlay",
"direct": false,
"version": "6.1.0",
"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-loadable-ssr-addon-v5-slorber",
"direct": false,
"version": "1.0.1",
"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": "rechoir",
"direct": false,
"version": "0.6.2",
"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": "recursive-readdir",
"direct": false,
"version": "2.2.3",
"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.0",
"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-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-from",
"direct": false,
"version": "4.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": "rimraf",
"direct": false,
"version": "3.0.2",
"ecosystem": "npm"
},
{
"name": "rtl-detect",
"direct": false,
"version": "1.1.2",
"ecosystem": "npm"
},
{
"name": "run-parallel",
"direct": false,
"version": "1.2.0",
"ecosystem": "npm"
},
{
"name": "rxjs",
"direct": false,
"version": "7.8.2",
"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.23.2",
"ecosystem": "npm"
},
{
"name": "schema-utils",
"direct": false,
"version": "2.7.0",
"ecosystem": "npm"
},
{
"name": "schema-utils",
"direct": false,
"version": "3.3.0",
"ecosystem": "npm"
},
{
"name": "schema-utils",
"direct": false,
"version": "4.3.2",
"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": "2.4.1",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "6.3.1",
"ecosystem": "npm"
},
{
"name": "semver",
"direct": false,
"version": "7.7.2",
"ecosystem": "npm"
},
{
"name": "semver-diff",
"direct": false,
"version": "4.0.0",
"ecosystem": "npm"
},
{
"name": "send",
"direct": false,
"version": "0.19.0",
"ecosystem": "npm"
},
{
"name": "serialize-javascript",
"direct": false,
"version": "6.0.2",
"ecosystem": "npm"
},
{
"name": "serve-handler",
"direct": false,
"version": "6.1.6",
"ecosystem": "npm"
},
{
"name": "serve-index",
"direct": false,
"version": "1.9.1",
"ecosystem": "npm"
},
{
"name": "serve-static",
"direct": false,
"version": "1.16.2",
"ecosystem": "npm"
},
{
"name": "set-function-length",
"direct": false,
"version": "1.2.2",
"ecosystem": "npm"
},
{
"name": "setprototypeof",
"direct": false,
"version": "1.1.0",
"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.2",
"ecosystem": "npm"
},
{
"name": "shelljs",
"direct": false,
"version": "0.8.5",
"ecosystem": "npm"
},
{
"name": "side-channel",
"direct": false,
"version": "1.1.0",
"ecosystem": "npm"
},
{
"name": "side-channel-list",
"direct": false,
"version": "1.0.0",
"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": "sirv",
"direct": false,
"version": "2.0.4",
"ecosystem": "npm"
},
{
"name": "sisteransi",
"direct": false,
"version": "1.0.5",
"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": "sockjs",
"direct": false,
"version": "0.3.24",
"ecosystem": "npm"
},
{
"name": "sort-css-media-queries",
"direct": false,
"version": "2.1.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.2.1",
"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": "stable",
"direct": false,
"version": "0.1.8",
"ecosystem": "npm"
},
{
"name": "statuses",
"direct": false,
"version": "1.5.0",
"ecosystem": "npm"
},
{
"name": "statuses",
"direct": false,
"version": "2.0.1",
"ecosystem": "npm"
},
{
"name": "std-env",
"direct": false,
"version": "3.10.0",
"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.1.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": "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": "5.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": "2.8.2",
"ecosystem": "npm"
},
{
"name": "tapable",
"direct": false,
"version": "1.1.3",
"ecosystem": "npm"
},
{
"name": "tapable",
"direct": false,
"version": "2.2.1",
"ecosystem": "npm"
},
{
"name": "terser",
"direct": false,
"version": "5.39.2",
"ecosystem": "npm"
},
{
"name": "terser-webpack-plugin",
"direct": false,
"version": "5.3.14",
"ecosystem": "npm"
},
{
"name": "text-table",
"direct": false,
"version": "0.2.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": "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": "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": "2.8.1",
"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": "5.2.2",
"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": "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": "wait-on",
"direct": false,
"version": "7.2.0",
"ecosystem": "npm"
},
{
"name": "watchpack",
"direct": false,
"version": "2.4.2",
"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.99.8",
"ecosystem": "npm"
},
{
"name": "webpack-bundle-analyzer",
"direct": false,
"version": "4.10.2",
"ecosystem": "npm"
},
{
"name": "webpack-dev-middleware",
"direct": false,
"version": "5.3.4",
"ecosystem": "npm"
},
{
"name": "webpack-dev-server",
"direct": false,
"version": "4.15.2",
"ecosystem": "npm"
},
{
"name": "webpack-merge",
"direct": false,
"version": "5.10.0",
"ecosystem": "npm"
},
{
"name": "webpack-sources",
"direct": false,
"version": "3.2.3",
"ecosystem": "npm"
},
{
"name": "webpackbar",
"direct": false,
"version": "5.0.2",
"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": "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": "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.10",
"ecosystem": "npm"
},
{
"name": "ws",
"direct": false,
"version": "8.18.2",
"ecosystem": "npm"
},
{
"name": "xdg-basedir",
"direct": false,
"version": "5.1.0",
"ecosystem": "npm"
},
{
"name": "yallist",
"direct": false,
"version": "3.1.1",
"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": 1019,
"direct_count": 6,
"indirect_count": 1013
}
},
"maintainership": {
"issues": {
"open_prs": 2,
"merged_prs": 30,
"open_issues": 0,
"closed_ratio": 1,
"closed_issues": 28,
"closed_unmerged_prs": 2
},
"bus_factor": 1,
"bot_contributors": 0,
"top_contributors": [
{
"type": "User",
"login": "rachfop",
"commits": 107,
"avatar_url": "https://avatars.githubusercontent.com/u/64233065?v=4"
},
{
"type": "User",
"login": "scottamain",
"commits": 7,
"avatar_url": "https://avatars.githubusercontent.com/u/1672461?v=4"
},
{
"type": "User",
"login": "AlexAdiaconitei",
"commits": 4,
"avatar_url": "https://avatars.githubusercontent.com/u/37024953?v=4"
},
{
"type": "User",
"login": "statico",
"commits": 3,
"avatar_url": "https://avatars.githubusercontent.com/u/137158?v=4"
},
{
"type": "User",
"login": "nicolasiscoding",
"commits": 3,
"avatar_url": "https://avatars.githubusercontent.com/u/9352910?v=4"
},
{
"type": "User",
"login": "ilanazholobovsky",
"commits": 3,
"avatar_url": "https://avatars.githubusercontent.com/u/254414195?v=4"
},
{
"type": "User",
"login": "kingsword09",
"commits": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/19650362?v=4"
},
{
"type": "User",
"login": "adeelehsan",
"commits": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/8156837?v=4"
},
{
"type": "User",
"login": "smol-ninja",
"commits": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/6676622?v=4"
},
{
"type": "User",
"login": "svrnm",
"commits": 1,
"avatar_url": "https://avatars.githubusercontent.com/u/1519757?v=4"
}
],
"contributors_sampled": 10,
"top_contributor_share": 0.817
},
"quality_signals": {
"has_ci": false,
"has_tests": true,
"ci_workflows": [],
"has_docs_dir": false,
"linter_configs": [],
"has_editorconfig": false,
"has_linter_config": false,
"has_precommit_config": false
},
"security_signals": {
"lockfiles": [
"package-lock.json"
],
"scorecard": {
"checks": [
{
"name": "Binary-Artifacts",
"score": 10,
"reason": "no binaries found in the repo",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#binary-artifacts"
},
{
"name": "Branch-Protection",
"score": 0,
"reason": "branch protection not enabled on development/release branches",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#branch-protection"
},
{
"name": "CI-Tests",
"score": 0,
"reason": "0 out of 10 merged PRs checked by a CI test -- score normalized to 0",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#ci-tests"
},
{
"name": "CII-Best-Practices",
"score": 0,
"reason": "no effort to earn an OpenSSF best practices badge detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#cii-best-practices"
},
{
"name": "Code-Review",
"score": 1,
"reason": "Found 2/13 approved changesets -- score normalized to 1",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#code-review"
},
{
"name": "Contributors",
"score": 3,
"reason": "project has 1 contributing companies or organizations -- score normalized to 3",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#contributors"
},
{
"name": "Dangerous-Workflow",
"score": null,
"reason": "no workflows found",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dangerous-workflow"
},
{
"name": "Dependency-Update-Tool",
"score": 0,
"reason": "no update tool detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#dependency-update-tool"
},
{
"name": "Fuzzing",
"score": 0,
"reason": "project is not fuzzed",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#fuzzing"
},
{
"name": "License",
"score": 0,
"reason": "license file not detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#license"
},
{
"name": "Maintained",
"score": 10,
"reason": "30 commit(s) and 1 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": null,
"reason": "packaging workflow not detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#packaging"
},
{
"name": "Pinned-Dependencies",
"score": null,
"reason": "no dependencies found",
"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": null,
"reason": "no releases found",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#signed-releases"
},
{
"name": "Token-Permissions",
"score": null,
"reason": "No tokens found",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#token-permissions"
},
{
"name": "Vulnerabilities",
"score": 0,
"reason": "64 existing vulnerabilities detected",
"documentation_url": "https://github.com/ossf/scorecard/blob/c395761df6afe1a69e476bc60a013a94bcbc153f/docs/checks.md#vulnerabilities"
}
],
"commit": "09a6fe4dfc0c007f52ee9dbead651168cbc2e17c",
"ran_at": "2026-07-23T00:51:53Z",
"aggregate_score": 2.4,
"scorecard_version": "v5.5.0"
},
"has_codeql_workflow": false,
"has_security_policy": false,
"has_dependabot_config": false
},
"contribution_flow": {
"collected": true,
"ci_last_run_at": "2026-07-22T20:54:27Z",
"oldest_open_prs": [
{
"number": 61,
"created_at": "2026-07-23T00:10:50Z",
"last_comment_at": null,
"last_comment_author": null
},
{
"number": 62,
"created_at": "2026-07-23T00:12:55Z",
"last_comment_at": null,
"last_comment_author": null
}
],
"last_merged_pr_at": "2026-07-22T20:02:05Z",
"ci_last_conclusion": null,
"oldest_open_issues": []
}
},
"config": {
"disabled_metrics": [],
"disabled_categories": [],
"disabled_components": {}
},
"source": {
"url": "https://github.com/rachfop/docusaurus-plugin-llms",
"host": "github.com",
"name": "docusaurus-plugin-llms",
"owner": "rachfop"
},
"metrics": {
"overall": {
"key": "overall",
"band": "moderate",
"name": "Overall health",
"note": null,
"notes": [],
"value": 53,
"inputs": {
"security": 29,
"vitality": 80,
"community": 47,
"governance": 61,
"engineering": 40
},
"components": []
},
"categories": [
{
"key": "vitality",
"band": "good",
"name": "Vitality",
"value": 80,
"weight": 0.22,
"metrics": [
{
"key": "development_activity",
"band": "good",
"name": "Development activity",
"note": null,
"notes": [],
"value": 72,
"inputs": {
"commits_last_year": 112,
"human_commit_share": 1,
"days_since_last_push": 0,
"active_weeks_last_year": 11
},
"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": "11/52 weeks with commits",
"points": 7.6,
"status": "partial",
"details": [
{
"code": "commit_cadence_weeks",
"params": {
"weeks": 11
}
}
],
"max_points": 36
},
{
"key": "commit_volume",
"name": "Commit volume",
"detail": "112 commits in the last year",
"points": 18,
"status": "met",
"details": [
{
"code": "commits_last_year",
"params": {
"count": 112
}
}
],
"max_points": 18
},
{
"key": "openssf_scorecard_maintained",
"name": "OpenSSF Scorecard: Maintained",
"detail": "30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10",
"points": 10,
"status": "met",
"details": [],
"max_points": 10
}
]
},
{
"key": "release_discipline",
"band": "excellent",
"name": "Release discipline",
"note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Signed-Releases. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"openssf_scorecard_signed_releases"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 92,
"inputs": {
"releases_count": 10,
"latest_release_tag": "v0.5.1",
"releases_from_tags": false,
"days_since_latest_release": 0,
"mean_days_between_releases": 47.6
},
"components": [
{
"key": "ships_releases",
"name": "Ships releases",
"detail": "10 releases published",
"points": 27,
"status": "met",
"details": [
{
"code": "releases_published",
"params": {
"count": 10
}
}
],
"max_points": 27
},
{
"key": "release_recency",
"name": "Release recency",
"detail": "latest release 0 days ago",
"points": 36,
"status": "met",
"details": [
{
"code": "release_recency",
"params": {
"days": 0
}
}
],
"max_points": 36
},
{
"key": "release_cadence",
"name": "Release cadence",
"detail": "a release every ~47.6 days",
"points": 19.8,
"status": "partial",
"details": [
{
"code": "release_cadence",
"params": {
"gap": 47.6
}
}
],
"max_points": 27
},
{
"key": "openssf_scorecard_signed_releases",
"name": "OpenSSF Scorecard: Signed-Releases",
"detail": "no releases found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 10
}
]
},
{
"key": "abandonment",
"band": "excellent",
"name": "Abandonment",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"cap": null,
"state": "maintained",
"guards": [],
"signals": [],
"red_flag": false,
"multiplier_pct": 100,
"declared_reason": null,
"unverified_reason": null,
"unanswered_open_prs": null,
"unanswered_open_issues": null,
"days_since_last_merged_pr": null,
"days_since_last_human_commit": 0,
"days_since_last_human_commit_is_floor": false
},
"components": [
{
"key": "project_is_still_maintained",
"name": "Project is still maintained",
"detail": "last human commit 0 days ago",
"points": 100,
"status": "met",
"details": [
{
"code": "abandonment_maintained",
"params": {
"days": 0
}
}
],
"max_points": 100
}
]
}
],
"description": "Is the project alive — is code being written and are releases shipping?"
},
{
"key": "community",
"band": "at_risk",
"name": "Community & Adoption",
"value": 47,
"weight": 0.18,
"metrics": [
{
"key": "popularity",
"band": "at_risk",
"name": "Popularity & adoption",
"note": null,
"notes": [],
"value": 45,
"inputs": {
"forks": 19,
"stars": 139,
"watchers": 1,
"growth_state": "unverified",
"growth_factor_pct": 100,
"growth_unverified_reason": "no_history"
},
"components": [
{
"key": "stars",
"name": "Stars",
"detail": "139 stars",
"points": 34.7,
"status": "partial",
"details": [
{
"code": "stars",
"params": {
"count": 139
}
}
],
"max_points": 60
},
{
"key": "forks",
"name": "Forks",
"detail": "19 forks",
"points": 10.5,
"status": "partial",
"details": [
{
"code": "forks",
"params": {
"count": 19
}
}
],
"max_points": 25
},
{
"key": "watchers",
"name": "Watchers",
"detail": "1 watchers",
"points": 0,
"status": "missed",
"details": [
{
"code": "watchers",
"params": {
"count": 1
}
}
],
"max_points": 15
}
]
},
{
"key": "community_health",
"band": "critical",
"name": "Community health",
"note": null,
"notes": [],
"value": 25,
"inputs": {
"has_readme": true,
"has_license": false,
"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": "no license file detected",
"points": 0,
"status": "missed",
"details": [
{
"code": "license_absent",
"params": {}
}
],
"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
}
]
},
{
"key": "ecosystem_adoption",
"band": "good",
"name": "Ecosystem adoption (downloads)",
"note": "Excluded from scoring (no data or not applicable): Registry dependents. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"registry_dependents"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 81,
"inputs": {
"packages": [
"docusaurus-plugin-llms"
],
"dependents": null,
"ecosystems": "npm",
"total_downloads": null,
"monthly_downloads": 71539
},
"components": [
{
"key": "monthly_downloads",
"name": "Monthly downloads",
"detail": "71,539 downloads/month across npm",
"points": 64.7,
"status": "partial",
"details": [
{
"code": "downloads_monthly",
"params": {
"count": 71539,
"ecosystems": "npm"
}
}
],
"max_points": 80
},
{
"key": "registry_dependents",
"name": "Registry dependents",
"detail": "not reported by this ecosystem",
"points": 0,
"status": "excluded",
"details": [
{
"code": "not_reported_by_this_ecosystem",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Does the project have users, downloads, attention, and a welcoming setup for contributors?"
},
{
"key": "governance",
"band": "moderate",
"name": "Sustainability & Governance",
"value": 61,
"weight": 0.24,
"metrics": [
{
"key": "maintainer_resilience",
"band": "at_risk",
"name": "Maintainer resilience (bus factor)",
"note": null,
"notes": [],
"value": 30,
"inputs": {
"bus_factor": 1,
"contributors_sampled": 10,
"top_contributor_share": 0.817
},
"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 82% of commits",
"points": 4.1,
"status": "partial",
"details": [
{
"code": "top_contributor_share",
"params": {
"share": 82
}
}
],
"max_points": 22.5
},
{
"key": "contributor_breadth",
"name": "Contributor breadth",
"detail": "10 contributors",
"points": 13.5,
"status": "met",
"details": [
{
"code": "contributors_sampled",
"params": {
"count": 10
}
}
],
"max_points": 13.5
},
{
"key": "openssf_scorecard_contributors",
"name": "OpenSSF Scorecard: Contributors",
"detail": "project has 1 contributing companies or organizations -- score normalized to 3",
"points": 3,
"status": "partial",
"details": [],
"max_points": 10
}
]
},
{
"key": "responsiveness",
"band": "good",
"name": "Issue & PR responsiveness",
"note": null,
"notes": [],
"value": 84,
"inputs": {
"merged_prs": 30,
"open_issues": 0,
"closed_issues": 28,
"issue_closed_ratio": 1,
"closed_unmerged_prs": 2
},
"components": [
{
"key": "issue_resolution",
"name": "Issue resolution",
"detail": "100% of issues closed",
"points": 46.8,
"status": "met",
"details": [
{
"code": "issues_closed_share",
"params": {
"share": 100
}
}
],
"max_points": 46.75
},
{
"key": "pr_acceptance",
"name": "PR acceptance",
"detail": "30/32 decided PRs merged",
"points": 35.9,
"status": "partial",
"details": [
{
"code": "decided_prs_merged",
"params": {
"merged": 30,
"decided": 32
}
}
],
"max_points": 38.25
},
{
"key": "openssf_scorecard_code_review",
"name": "OpenSSF Scorecard: Code-Review",
"detail": "Found 2/13 approved changesets -- score normalized to 1",
"points": 1.5,
"status": "partial",
"details": [],
"max_points": 15
}
]
},
{
"key": "stewardship",
"band": "at_risk",
"name": "Ownership & stewardship",
"note": "Excluded from scoring (no data or not applicable): Verified domain. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"verified_domain"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 44,
"inputs": {
"followers": 0,
"owner_type": "User",
"is_verified": null,
"owner_login": "rachfop",
"public_repos": 156,
"account_age_days": 2281
},
"components": [
{
"key": "ownership_backing",
"name": "Ownership backing",
"detail": "personal (user) account",
"points": 10,
"status": "partial",
"details": [
{
"code": "owner_personal",
"params": {}
}
],
"max_points": 30
},
{
"key": "verified_domain",
"name": "Verified domain",
"detail": "not applicable to user accounts",
"points": 0,
"status": "excluded",
"details": [
{
"code": "not_applicable_to_user_accounts",
"params": {}
}
],
"max_points": 20
},
{
"key": "owner_reach",
"name": "Owner reach",
"detail": "0 followers of rachfop",
"points": 0,
"status": "missed",
"details": [
{
"code": "owner_followers",
"params": {
"count": 0,
"login": "rachfop"
}
}
],
"max_points": 25
},
{
"key": "track_record",
"name": "Track record",
"detail": "156 public repos, account ~6 yr old",
"points": 25,
"status": "met",
"details": [
{
"code": "public_repos",
"params": {
"count": 156
}
},
{
"code": "account_age_years",
"params": {
"years": 6
}
}
],
"max_points": 25
}
]
},
{
"key": "package_maintenance",
"band": "excellent",
"name": "Package maintenance",
"note": null,
"notes": [],
"value": 100,
"inputs": {
"packages": [
"docusaurus-plugin-llms"
],
"ecosystems": "npm",
"any_deprecated": false,
"min_days_since_publish": 0
},
"components": [
{
"key": "published_resolvable",
"name": "Published & resolvable",
"detail": "1 package(s) on npm",
"points": 25,
"status": "met",
"details": [
{
"code": "packages_published",
"params": {
"count": 1,
"ecosystems": "npm"
}
}
],
"max_points": 25
},
{
"key": "publish_recency",
"name": "Publish recency",
"detail": "latest publish 0 days ago",
"points": 35,
"status": "met",
"details": [
{
"code": "publish_recency",
"params": {
"days": 0
}
}
],
"max_points": 35
},
{
"key": "version_history",
"name": "Version history",
"detail": "13 published versions",
"points": 20,
"status": "met",
"details": [
{
"code": "published_versions",
"params": {
"count": 13
}
}
],
"max_points": 20
},
{
"key": "not_deprecated",
"name": "Not deprecated",
"detail": "active, not deprecated or yanked",
"points": 20,
"status": "met",
"details": [
{
"code": "package_not_deprecated",
"params": {}
}
],
"max_points": 20
}
]
}
],
"description": "Will the project survive its people — bus factor, responsiveness, who backs it, and package upkeep?"
},
{
"key": "engineering",
"band": "at_risk",
"name": "Engineering Quality",
"value": 40,
"weight": 0.2,
"metrics": [
{
"key": "engineering_practices",
"band": "critical",
"name": "Engineering practices",
"note": null,
"notes": [],
"value": 24,
"inputs": {
"has_ci": false,
"has_tests": true,
"has_editorconfig": false,
"has_linter_config": false,
"has_precommit_config": false
},
"components": [
{
"key": "ci_workflows",
"name": "CI workflows",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 24
},
{
"key": "tests_present",
"name": "Tests present",
"detail": null,
"points": 24,
"status": "met",
"details": [],
"max_points": 24
},
{
"key": "linter_config",
"name": "Linter config",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 16
},
{
"key": "pre_commit_hooks",
"name": "Pre-commit hooks",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 9.6
},
{
"key": "editorconfig",
"name": ".editorconfig",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 6.4
},
{
"key": "openssf_scorecard_ci_tests",
"name": "OpenSSF Scorecard: CI-Tests",
"detail": "0 out of 10 merged PRs checked by a CI test -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
}
]
},
{
"key": "documentation",
"band": "moderate",
"name": "Documentation",
"note": null,
"notes": [],
"value": 65,
"inputs": {
"topics": [],
"has_wiki": true,
"homepage": "https://www.npmjs.com/package/docusaurus-plugin-llms",
"has_readme": true,
"has_docs_dir": false,
"has_description": true
},
"components": [
{
"key": "readme",
"name": "README",
"detail": null,
"points": 30,
"status": "met",
"details": [],
"max_points": 30
},
{
"key": "documentation_directory",
"name": "Documentation directory",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 25
},
{
"key": "documentation_homepage_site",
"name": "Documentation / homepage site",
"detail": "https://www.npmjs.com/package/docusaurus-plugin-llms",
"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": null,
"points": 0,
"status": "missed",
"details": [],
"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": "critical",
"name": "Security",
"value": 29,
"weight": 0.16,
"metrics": [
{
"key": "security_posture",
"band": "critical",
"name": "Security posture",
"note": "Excluded from scoring (no data or not applicable): Dangerous-Workflow, Packaging, Pinned-Dependencies, Signed-Releases, Token-Permissions. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"dangerous_workflow",
"packaging",
"pinned_dependencies",
"signed_releases",
"token_permissions"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 24,
"inputs": {
"source": "openssf_scorecard",
"checks_evaluated": 13,
"scorecard_version": "v5.5.0",
"checks_inconclusive": 5,
"scorecard_aggregate": 2.4
},
"components": [
{
"key": "binary_artifacts",
"name": "Binary-Artifacts",
"detail": "no binaries found in the repo",
"points": 7.5,
"status": "met",
"details": [],
"max_points": 7.5
},
{
"key": "branch_protection",
"name": "Branch-Protection",
"detail": "branch protection not enabled on development/release branches",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "ci_tests",
"name": "CI-Tests",
"detail": "0 out of 10 merged PRs checked by a CI test -- score normalized to 0",
"points": 0,
"status": "missed",
"details": [],
"max_points": 2.5
},
{
"key": "cii_best_practices",
"name": "CII-Best-Practices",
"detail": "no effort to earn an OpenSSF best practices badge detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 2.5
},
{
"key": "code_review",
"name": "Code-Review",
"detail": "Found 2/13 approved changesets -- score normalized to 1",
"points": 0.8,
"status": "partial",
"details": [],
"max_points": 7.5
},
{
"key": "contributors",
"name": "Contributors",
"detail": "project has 1 contributing companies or organizations -- score normalized to 3",
"points": 0.8,
"status": "partial",
"details": [],
"max_points": 2.5
},
{
"key": "dangerous_workflow",
"name": "Dangerous-Workflow",
"detail": "no workflows found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 10
},
{
"key": "dependency_update_tool",
"name": "Dependency-Update-Tool",
"detail": "no update tool detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
},
{
"key": "fuzzing",
"name": "Fuzzing",
"detail": "project is not fuzzed",
"points": 0,
"status": "missed",
"details": [],
"max_points": 5
},
{
"key": "license",
"name": "License",
"detail": "license file not detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 2.5
},
{
"key": "maintained",
"name": "Maintained",
"detail": "30 commit(s) and 1 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 not detected",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 5
},
{
"key": "pinned_dependencies",
"name": "Pinned-Dependencies",
"detail": "no dependencies found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"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": "no releases found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 7.5
},
{
"key": "token_permissions",
"name": "Token-Permissions",
"detail": "No tokens found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 7.5
},
{
"key": "vulnerabilities",
"name": "Vulnerabilities",
"detail": "64 existing vulnerabilities detected",
"points": 0,
"status": "missed",
"details": [],
"max_points": 7.5
}
]
},
{
"key": "dependency_advisories",
"band": "moderate",
"name": "Dependency advisories",
"note": "Excluded from scoring (no data or not applicable): Indirect dependencies free of known advisories. Remaining weights renormalized. Matched 1019 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"
]
}
},
{
"code": "weights_renormalized",
"params": {}
},
{
"code": "advisories_scope_repository",
"params": {
"assessed": 1019
}
},
{
"code": "advisories_repo_graph_caveat",
"params": {}
},
{
"code": "advisories_reachability",
"params": {}
}
],
"value": 50,
"inputs": {
"source": "osv",
"advisories": 74,
"affected_packages": 31,
"assessed_packages": 1019,
"unassessed_packages": 0,
"affected_by_severity": "critical 1, high 20, moderate 6, low 4",
"direct_affected_packages": 3
},
"components": [
{
"key": "direct_dependencies_free_of_known_advisories",
"name": "Direct dependencies free of known advisories",
"detail": "3 affected: minimatch 3.1.2 (high 7.5), minimatch 9.0.3 (high 7.5), yaml 2.8.1 (moderate 4.3)",
"points": 10.8,
"status": "partial",
"details": [
{
"code": "advisories_affected",
"params": {
"count": 3,
"packages": "minimatch 3.1.2 (high 7.5), minimatch 9.0.3 (high 7.5), yaml 2.8.1 (moderate 4.3)"
}
}
],
"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": "3 advisory-carrying package(s) unaddressed past 90 days; oldest published 154 days ago",
"points": 27,
"status": "partial",
"details": [
{
"code": "advisories_stale",
"params": {
"days": 90,
"count": 3,
"oldest": 154
}
}
],
"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": 1019,
"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": 14
},
"components": [
{
"key": "policy_exposure_multiplier",
"name": "Policy exposure multiplier",
"detail": "no confirmed policy-scope location match",
"points": 100,
"status": "met",
"details": [
{
"code": "jurisdiction_no_match",
"params": {}
}
],
"max_points": 100
}
]
}
],
"description": "Are visible security and supply-chain practices strong, with no malicious dependency and no unresolved high-risk jurisdiction exposure?"
},
{
"key": "ai_readiness",
"band": "moderate",
"name": "AI Readiness",
"value": 54,
"weight": 0,
"metrics": [
{
"key": "ai_agent_context",
"band": "at_risk",
"name": "Agent context & guidance",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"has_llms_txt": false,
"legible_history_share": 0.91,
"agent_instruction_files": [],
"agent_instruction_max_bytes": null
},
"components": [
{
"key": "agent_instructions",
"name": "Agent instructions",
"detail": "no CLAUDE.md / AGENTS.md / editor rules",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_agent_instructions",
"params": {}
}
],
"max_points": 45
},
{
"key": "machine_readable_docs_llms_txt",
"name": "Machine-readable docs (llms.txt)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 15
},
{
"key": "legible_commit_history",
"name": "Legible commit history",
"detail": "91 of 100 human commits state their intent (structured subject or explanatory body)",
"points": 40,
"status": "met",
"details": [
{
"code": "legible_history",
"params": {
"legible": 91,
"sampled": 100
}
}
],
"max_points": 40
}
]
},
{
"key": "ai_verify_loop",
"band": "moderate",
"name": "Verify loop (build / test / typecheck)",
"note": "Excluded from scoring (no data or not applicable): OpenSSF Scorecard: Pinned-Dependencies. Remaining weights renormalized.",
"notes": [
{
"code": "excluded_no_data",
"params": {
"components": [
"openssf_scorecard_pinned_dependencies"
]
}
},
{
"code": "weights_renormalized",
"params": {}
}
],
"value": 59,
"inputs": {
"has_nix": false,
"has_tests": true,
"lockfiles": [
"package-lock.json"
],
"has_dockerfile": false,
"typed_language": false,
"bootstrap_files": [],
"has_devcontainer": false,
"has_linter_config": false,
"typecheck_configs": [
"tsconfig.json"
],
"agent_commit_share": 0.05,
"toolchain_manifests": [],
"dependency_bot_commit_share": 0
},
"components": [
{
"key": "one_command_bootstrap",
"name": "One-command bootstrap",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 18
},
{
"key": "automated_tests",
"name": "Automated tests",
"detail": null,
"points": 22,
"status": "met",
"details": [],
"max_points": 22
},
{
"key": "lint_format_config",
"name": "Lint / format config",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 11
},
{
"key": "static_type_checking",
"name": "Static type checking",
"detail": "tsconfig.json",
"points": 11,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "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": "5 of the last 100 commits agent-authored or agent-credited",
"points": 10,
"status": "met",
"details": [
{
"code": "agent_authored_commits",
"params": {
"count": 5,
"sampled": 100
}
}
],
"max_points": 10
},
{
"key": "automated_maintenance",
"name": "Automated maintenance",
"detail": "no automated dependency updates observed",
"points": 0,
"status": "missed",
"details": [
{
"code": "no_dependency_automation",
"params": {}
}
],
"max_points": 8
},
{
"key": "openssf_scorecard_pinned_dependencies",
"name": "OpenSSF Scorecard: Pinned-Dependencies",
"detail": "no dependencies found",
"points": 0,
"status": "excluded",
"details": [
{
"code": "no_data",
"params": {}
}
],
"max_points": 10
}
]
},
{
"key": "ai_code_legibility",
"band": "good",
"name": "Code legibility for models",
"note": null,
"notes": [],
"value": 82,
"inputs": {
"primary_language": "JavaScript",
"largest_source_bytes": 26166,
"source_files_sampled": 81,
"oversized_source_files": 0
},
"components": [
{
"key": "type_checkable_code",
"name": "Type-checkable code",
"detail": "JavaScript with type-check config (tsconfig.json)",
"points": 27,
"status": "partial",
"details": [
{
"code": "typecheck_config_language",
"params": {
"files": "tsconfig.json",
"language": "JavaScript"
}
}
],
"max_points": 45
},
{
"key": "manageable_file_sizes",
"name": "Manageable file sizes",
"detail": "0/81 source files over 60KB",
"points": 55,
"status": "met",
"details": [
{
"code": "oversized_source_files",
"params": {
"kb": 60,
"sampled": 81,
"oversized": 0
}
}
],
"max_points": 55
}
]
},
{
"key": "ai_interfaces",
"band": "at_risk",
"name": "Machine-readable interfaces",
"note": null,
"notes": [],
"value": 40,
"inputs": {
"example_dirs": [
"examples"
],
"has_mcp_signal": false,
"api_schema_files": []
},
"components": [
{
"key": "api_schema_openapi_graphql_proto",
"name": "API schema (OpenAPI/GraphQL/proto)",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 40
},
{
"key": "mcp_server",
"name": "MCP server",
"detail": null,
"points": 0,
"status": "missed",
"details": [],
"max_points": 20
},
{
"key": "runnable_examples",
"name": "Runnable examples",
"detail": "examples",
"points": 40,
"status": "met",
"details": [
{
"code": "file_list",
"params": {
"files": "examples"
}
}
],
"max_points": 40
}
]
}
],
"description": "How well is the repo equipped to be developed and maintained with AI coding agents? An independent, experimental badge — weight 0.0, so it is surfaced on its own and does not affect the overall health score."
}
],
"metrics_version": "1.13.0"
},
"warnings": [
"Star history unavailable: GitHub GraphQL error: Resource not accessible by personal access token",
"deps.dev does not index npm:docusaurus-plugin-llms@0.5.1; advisories assessed against the repository dependency graph instead"
],
"report_type": "repository",
"generated_at": "2026-07-23T00:52:10.126763Z",
"schema_version": "0.27.0",
"badge_url": "https://raw.githubusercontent.com/inspect-software/badges/main/v1/r/rachfop/docusaurus-plugin-llms.svg",
"full_name": "rachfop/docusaurus-plugin-llms",
"license_state": "absent",
"license_spdx": null
}