PkgRadar

Package evidence

@webarkit/[email protected]

Js Decode Then Exec: base64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.

Trust signals

Why this verdict

PkgRadar discounts a release’s score when public reputation argues against novel malware. The verdict above already reflects these — the panel just explains what was applied.

Weekly downloads
155
Versions published
33Mature · −50% score
First published
Oct 2021
Publisher
kalwalt

Effective trust discount applied: 50% (max across signals — discounts don’t stack). New install-lifecycle deltas vs the previous release would clear the discount.

Recommended action

Review before promoting

Mixed signals: the package has indicators worth reading before allowing the update in automated dependency flows.

Block this release in CIcurl · GitHub Actions

Fail the build when this package version is added or upgraded. Replace $PKGRADAR_TOKEN with a Pro / Team API key from your dashboard.

curl -fsS https://pkgradar.com/gate/npm \
  -H "Authorization: Bearer $PKGRADAR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"specs":["@webarkit/[email protected]"],"fail_on":"review"}'

GitHub Actions step:

- name: PkgRadar gate
  run: |
    curl -fsS https://pkgradar.com/gate/npm \
      -H "Authorization: Bearer ${{ secrets.PKGRADAR_TOKEN }}" \
      -H "Content-Type: application/json" \
      -d '{"specs":["@webarkit/[email protected]"],"fail_on":"review"}'
Publisherkalwalt
Artifact bytes4,489,106
Previous version1.8.0
Published2026-05-28T19:55:15.634Z
SHA-256134a7e33d4403cc4f33207406071f4553599e27a19e377271be200861bd668d2

Why flagged

What the scanner saw

Js Decode Then Exec: base64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.

Not observed: package install, lifecycle script execution, or sandbox execution. PkgRadar only inspects on-disk artifacts.

Availability ledger

available

review
Last checked
reviewRisk
25Score
1.9.0Version
Status history (1 event)
  1. newavailable · risk review · score 25 · status changed

Evidence

Static findings

7 static · 0 from release diff · showing high-signal first.

SeverityKindPathDetailPoints
highJs Decode Then Execpackage/build/artoolkitNFT_embed_ES6_wasm.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/artoolkitNFT_node_wasm.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/dist/ARToolkitNFT_node.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/artoolkitNFT_thread.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/artoolkitNFT_wasm.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/artoolkitNFT_wasm.simd.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
Show all 7 findings (low-signal and informational)
SeverityKindPathDetailPoints
highJs Decode Then Execpackage/build/artoolkitNFT_embed_ES6_wasm.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/artoolkitNFT_node_wasm.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/dist/ARToolkitNFT_node.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/artoolkitNFT_thread.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/artoolkitNFT_wasm.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
highJs Decode Then Execpackage/build/artoolkitNFT_wasm.simd.jsbase64 / atob / fromCharCode decode paired with eval / new Function in the same file — canonical obfuscated-loader pattern.45
lowLarge Javascript Payloadpackage/build/artoolkitNFT.debug.js3446322 bytes0

Manifest

Package metadata

Scripts23
  • buildnode tools/makem.js; echo Built at `date`
  • build-dockerdocker exec emscripten-jsartoolkitnft npm run build
  • build-docker-no-libardocker exec emscripten-jsartoolkitnft npm run build-no-libar
  • build-no-libarnode tools/makem.js --no-libar; echo Built at `date`
  • build-python-bindingscd python-bindings && python setup.py build_ext --inplace
  • build-tswebpack --mode production
  • dev-tswebpack --mode development --progress --watch
  • docstypedoc
  • formatprettier --write .
  • format-checkprettier --check .
  • python-testscd python-bindings && pytest test_arcontrollerNFT.py
  • setup-dockerdocker run -dit --name emscripten-jsartoolkitnft -v $(pwd):/src emscripten/emsdk:4.0.17 bash
  • testnpm run test:all
  • test-node-examplecd examples/node && node example_dist.js
  • test:allnpm run test:min && npm run test:debug && npm run test:wasm && npm run test:simd && npm run test:embed-es6 && npm run test:es6 && npm run test:es6-simd
  • test:debugcross-env BUILD_TARGET=artoolkitNFT.debug.js karma start karma-debug.conf.js
  • test:embed-es6karma start karma-embed-es6.conf.js
  • test:es6cross-env BUILD_TARGET_ES6=artoolkitNFT_ES6_wasm.js karma start karma-es6.conf.js
  • test:es6-simdcross-env BUILD_TARGET_ES6=artoolkitNFT_ES6_wasm.simd.js karma start karma-es6.conf.js
  • test:mincross-env BUILD_TARGET=artoolkitNFT.min.js karma start karma.conf.js
  • test:simdcross-env BUILD_TARGET=artoolkitNFT_wasm.simd.js karma start karma.conf.js
  • test:wasmcross-env BUILD_TARGET=artoolkitNFT_wasm.js karma start karma.conf.js
  • watch./node_modules/.bin/watch 'npm run build' ./js/
Dependencies4
  • @babel/runtime7.29.7
  • axios1.16.1
  • canvas^3.1.0
  • sharp0.33.5