Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions docs/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -33,18 +33,18 @@
"rehype-highlight": "^7.0.2",
"remark-gfm": "^4.0.1",
"remark-typescript-code-import": "^1.0.1",
"sass": "^1.84.0"
"sass": "^1.90.0"
},
"devDependencies": {
"@docusaurus/module-type-aliases": "3.7.0",
"@docusaurus/tsconfig": "3.7.0",
"@docusaurus/types": "3.7.0",
"@eslint/js": "^9.20.0",
"@eslint/js": "^9.33.0",
"@mdx-js/typescript-plugin": "^0.0.8",
"@types/eslint": "^9.6.1",
"@types/eslint-config-prettier": "^6.11.3",
"eslint": "^9.20.1",
"eslint-config-prettier": "^10.0.1",
"eslint": "^9.33.0",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-mdx": "^3.1.5",
"prettier": "^3.4.2",
"prettier-plugin-jsdoc": "^1.3.2",
Expand All @@ -54,8 +54,8 @@
"remark-mdx": "^3.1.0",
"remark-preset-lint-consistent": "^6.0.1",
"remark-preset-lint-recommended": "^7.0.1",
"typescript": "^5.7.3",
"typescript-eslint": "^8.24.0"
"typescript": "^5.9.2",
"typescript-eslint": "^8.39.1"
},
"resolutions": {
"path-to-regexp@npm:2.2.1": "^3",
Expand Down
68 changes: 34 additions & 34 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,9 @@
"postinstall": "electron-builder install-app-deps"
},
"devDependencies": {
"@chromatic-com/storybook": "^3.2.6",
"@eslint/js": "^9.20.0",
"@rollup/plugin-node-resolve": "^16.0.0",
"@chromatic-com/storybook": "^3.2.7",
"@eslint/js": "^9.33.0",
"@rollup/plugin-node-resolve": "^16.0.1",
"@storybook/addon-essentials": "^8.5.8",
"@storybook/addon-interactions": "^8.5.8",
"@storybook/addon-links": "^8.5.8",
Expand All @@ -42,61 +42,61 @@
"@storybook/react-vite": "^8.5.8",
"@storybook/test": "^8.5.8",
"@storybook/theming": "^8.5.8",
"@tailwindcss/vite": "^4.0.6",
"@tailwindcss/vite": "^4.0.17",
"@types/color": "^4.2.0",
"@types/css-tree": "^2",
"@types/debug": "^4",
"@types/electron": "^1.6.12",
"@types/node": "^22.13.4",
"@types/node": "^22.13.17",
"@types/papaparse": "^5",
"@types/pngjs": "^6.0.5",
"@types/prop-types": "^15",
"@types/react": "^18.3.13",
"@types/react-dom": "^18.3.1",
"@types/react": "^18.3.23",
"@types/react-dom": "^18.3.7",
"@types/semver": "^7",
"@types/shell-quote": "^1",
"@types/sprintf-js": "^1",
"@types/throttle-debounce": "^5",
"@types/tinycolor2": "^1",
"@types/uuid": "^10.0.0",
"@types/ws": "^8",
"@vitejs/plugin-react-swc": "^3.8.0",
"@vitest/coverage-istanbul": "^3.0.5",
"electron": "34.5.4",
"@vitejs/plugin-react-swc": "^3.8.1",
"@vitest/coverage-istanbul": "^3.0.9",
"electron": "34.5.8",
"electron-builder": "^26.0",
"electron-vite": "^2.3.0",
"eslint": "^9.20.1",
"eslint-config-prettier": "^10.0.1",
"eslint": "^9.33.0",
"eslint-config-prettier": "^10.1.8",
"node-abi": "^4.6.0",
"postcss": "^8.5.2",
"postcss": "^8.5.6",
"prettier": "^3.4.2",
"prettier-plugin-jsdoc": "^1.3.2",
"prettier-plugin-jsdoc": "^1.3.3",
"prettier-plugin-organize-imports": "^4.1.0",
"rollup-plugin-flow": "^1.1.1",
"sass": "^1.84.0",
"semver": "^7.7.1",
"sass": "^1.90.0",
"semver": "^7.7.2",
"storybook": "^8.5.8",
"storybook-dark-mode": "^4.0.2",
"tailwindcss": "^4.0.6",
"tailwindcss": "^4.1.12",
"tailwindcss-animate": "^1.0.7",
"ts-node": "^10.9.2",
"tslib": "^2.8.1",
"tsx": "^4.19.2",
"typescript": "^5.7.3",
"typescript-eslint": "^8.24.0",
"vite": "^6.1.5",
"vite-plugin-image-optimizer": "^1.1.8",
"tsx": "^4.20.4",
"typescript": "^5.9.2",
"typescript-eslint": "^8.39.1",
"vite": "^6.1.6",
"vite-plugin-image-optimizer": "^1.1.9",
"vite-plugin-static-copy": "^2.2.0",
"vite-plugin-svgr": "^4.3.0",
"vite-tsconfig-paths": "^5.1.4",
"vitest": "^3.0.5"
"vitest": "^3.0.9"
},
Comment on lines +85 to 93
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Verification agent

🧩 Analysis chain

Vite 6, TS 5.9, Vitest 3: LGTM; consider enforcing a Node engine for contributors.

Tooling here expects Node >= 18 (often >= 20 recommended). Consider specifying an engines field to avoid local env drift.

You could add this at the root (outside the selected lines), if desired:

"engines": {
  "node": ">=18.18.0"
}

Also ensure CI uses a compatible Node version.


🏁 Script executed:

#!/bin/bash
# Check for existing engines field and Node requirement
jq -r '.engines // empty' package.json

Length of output: 40


🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo "== package.json exists? =="
if [ -f package.json ]; then
  echo "yes"
else
  echo "no"
  exit 0
fi

echo
echo "== package.json engines field (via python) =="
python - <<'PY'
import json,sys
try:
    with open('package.json') as f:
        pkg=json.load(f)
    engines=pkg.get('engines')
    if engines is None:
        print("<no engines field>")
    else:
        import pprint
        pprint.pprint(engines)
except Exception as e:
    print("ERROR parsing package.json:", e)
PY

echo
echo "== Top-level Node version helper files =="
for f in .nvmrc .node-version .tool-versions; do
  if [ -f "$f" ]; then
    echo "$f: present"
    echo "----"
    sed -n '1,20p' "$f"
    echo "----"
  else
    echo "$f: absent"
  fi
done

echo
echo "== Search GitHub workflows for Node setup / node-version =="
if [ -d ".github/workflows" ]; then
  rg -n --hidden --no-ignore -S "actions/setup-node|node-version" .github/workflows || echo "<no matches in .github/workflows>"
else
  echo ".github/workflows: absent"
fi

echo
echo "== Search repo for 'engines' occurrences =="
rg -n --hidden --no-ignore -S "\"engines\"|node-version|\\.nvmrc" -g '!.git/**' || echo "<no matches found>"

Length of output: 2526


Enforce Node engine in root package.json

Root package.json currently has no "engines" field (verified). CI workflows reference env.NODE_VERSION and docs/package.json already contains an engines entry — please add an engines field to the repo root and align CI.

Files to update:

  • package.json (root): add engines field
  • .github/workflows/*: ensure env.NODE_VERSION (or setup-node node-version) matches the engines value
  • docs/package.json: verify engines stays consistent with the root

Suggested snippet to add to package.json (root):

"engines": {
  "node": ">=18.18.0"
}

Also consider adding an .nvmrc/.node-version for contributors or documenting the required Node version in README/CONTRIBUTING.

🤖 Prompt for AI Agents
In package.json around lines 85 to 93, the root package.json lacks an "engines"
field required by CI and docs; add an "engines" entry specifying the Node
version (e.g., node >=18.18.0) to the root package.json, then update
.github/workflows/* to ensure env.NODE_VERSION or the setup-node node-version
matches that engines value, and verify docs/package.json still matches the same
engines constraint; optionally add an .nvmrc or .node-version file (or update
README/CONTRIBUTING) to document the required Node version for contributors.

"dependencies": {
"@floating-ui/react": "^0.27.4",
"@floating-ui/react": "^0.27.15",
"@monaco-editor/loader": "^1.4.0",
"@monaco-editor/react": "^4.6.0",
"@observablehq/plot": "^0.6.17",
"@radix-ui/react-label": "^2.1.2",
"@radix-ui/react-label": "^2.1.7",
"@radix-ui/react-slot": "^1.1.2",
"@react-hook/resize-observer": "^2.0.2",
"@table-nav/core": "^0.0.7",
Expand All @@ -115,7 +115,7 @@
"colord": "^2.9.3",
"css-tree": "^3.1.0",
"dayjs": "^1.11.13",
"debug": "^4.4.0",
"debug": "^4.4.1",
"electron-updater": "^6.6",
"env-paths": "^3.0.0",
"fast-average-color": "^9.4.0",
Expand All @@ -127,7 +127,7 @@
"monaco-yaml": "^5.2.3",
"overlayscrollbars": "^2.10.1",
"overlayscrollbars-react": "^0.5.6",
"papaparse": "^5.5.2",
"papaparse": "^5.5.3",
"parse-srcset": "^1.0.2",
"pngjs": "^7.0.0",
"prop-types": "^15.8.1",
Expand All @@ -140,25 +140,25 @@
"react-hook-form": "^7.54.2",
"react-markdown": "^9.0.3",
"react-zoom-pan-pinch": "^3.7.0",
"recharts": "^2.15.1",
"recharts": "^2.15.4",
"rehype-highlight": "^7.0.2",
"rehype-raw": "^7.0.0",
"rehype-sanitize": "^6.0.0",
"rehype-slug": "^6.0.0",
"remark-flexible-toc": "^1.1.1",
"remark-gfm": "^4.0.1",
"remark-github-blockquote-alert": "^1.3.0",
"rxjs": "^7.8.1",
"remark-github-blockquote-alert": "^1.3.1",
"rxjs": "^7.8.2",
"sharp": "^0.33.5",
"shell-quote": "^1.8.2",
"shell-quote": "^1.8.3",
"sprintf-js": "^1.1.3",
"tailwind-merge": "^3.0.1",
"tailwind-merge": "^3.3.1",
"throttle-debounce": "^5.0.2",
"tinycolor2": "^1.6.0",
"use-device-pixel-ratio": "^1.1.2",
"winston": "^3.17.0",
"ws": "^8.18.0",
"yaml": "^2.7.0"
"ws": "^8.18.3",
"yaml": "^2.7.1"
},
"resolutions": {
"send@npm:0.18.0": "0.19.0",
Expand Down
Loading
Loading