PkgRadar

Package evidence

[email protected]

Install Lifecycle Remote Or Exec: postinstall="node -e \"require('fs').mkdirSync('src/wasm',{recursive:true});require('fs').copyFileSync('node_modules/@resvg/resvg-wasm/index_bg.wasm','src/wasm/resvg.wasm');require('fs').copyFileSync('node_modules/satori/yoga.wasm','src/wasm/yoga.wasm')\""

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
18
Versions published
4
First published
Mar 2026
Publisher
fullhdpixel

Recommended action

Block this update

Static evidence trips multiple high-signal indicators. Quarantine the release until the publisher validates the change or you can rule out the indicators below.

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":["[email protected]"],"fail_on":"high"}'

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":["[email protected]"],"fail_on":"high"}'
Publisherfullhdpixel
Artifact bytes6,119
Previous version0.2.0
Published2026-04-30T02:39:57.541Z
SHA-25646afc110ec65b5a381cb42fc14088a85185d3575a50ce97ce81bb79df1a23b9f

Why flagged

What the scanner saw

New Lifecycle Script Vs Previous: postinstall added in 0.3.0 vs 0.2.0: "node -e \"require('fs').mkdirSync('src/wasm',{recursive:true});require('fs').copyFileSync('node_modules/@resvg/resvg-wasm/index_bg.wasm','src/wasm/resvg.wasm');require('fs').copyFileSync('node_modules/satori/yoga.wasm','src/wasm/yoga.wasm')\""

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

Availability ledger

available

high
Last checked
highRisk
75Score
0.3.0Version
Status history (1 event)
  1. newavailable · risk high · score 75 · status changed

Evidence

Static findings

3 static · 1 from release diff · showing high-signal first.

SeverityKindPathDetailPoints
highNew Lifecycle Script Vs Previouspackage.jsonpostinstall added in 0.3.0 vs 0.2.0: "node -e \"require('fs').mkdirSync('src/wasm',{recursive:true});require('fs').copyFileSync('node_modules/@resvg/resvg-wasm/index_bg.wasm','src/wasm/resvg.wasm');require('fs').copyFileSync('node_modules/satori/yoga.wasm','src/wasm/yoga.wasm')\""40
highInstall Lifecycle Remote Or Execpackage.jsonpostinstall="node -e \"require('fs').mkdirSync('src/wasm',{recursive:true});require('fs').copyFileSync('node_modules/@resvg/resvg-wasm/index_bg.wasm','src/wasm/resvg.wasm');require('fs').copyFileSync('node_modules/satori/yoga.wasm','src/wasm/yoga.wasm')\""30
mediumNew Account With Lifecycle Hookpackage.jsonpackage first published 78 day(s) ago, 4 total version(s), has lifecycle hook10
Show all 4 findings (low-signal and informational)
SeverityKindPathDetailPoints
highNew Lifecycle Script Vs Previouspackage.jsonpostinstall added in 0.3.0 vs 0.2.0: "node -e \"require('fs').mkdirSync('src/wasm',{recursive:true});require('fs').copyFileSync('node_modules/@resvg/resvg-wasm/index_bg.wasm','src/wasm/resvg.wasm');require('fs').copyFileSync('node_modules/satori/yoga.wasm','src/wasm/yoga.wasm')\""40
highInstall Lifecycle Remote Or Execpackage.jsonpostinstall="node -e \"require('fs').mkdirSync('src/wasm',{recursive:true});require('fs').copyFileSync('node_modules/@resvg/resvg-wasm/index_bg.wasm','src/wasm/resvg.wasm');require('fs').copyFileSync('node_modules/satori/yoga.wasm','src/wasm/yoga.wasm')\""30
mediumNew Account With Lifecycle Hookpackage.jsonpackage first published 78 day(s) ago, 4 total version(s), has lifecycle hook10
lowInstall-time lifecycle scriptpackage.jsonpostinstall="node -e \"require('fs').mkdirSync('src/wasm',{recursive:true});require('fs').copyFileSync('node_modules/@resvg/resvg-wasm/index_bg.wasm','src/wasm/resvg.wasm');require('fs').copyFileSync('node_modules/satori/yoga.wasm','src/wasm/yoga.wasm')\""5

Manifest

Package metadata

Scripts22
  • buildNODE_OPTIONS='--max-old-space-size=4096' vite build
  • build:productionNODE_OPTIONS='--max-old-space-size=4096' vite build --mode production
  • checkbiome check
  • deploypnpm run build:production && wrangler deploy --upload-source-maps
  • devvite dev --port 3000 --force
  • email:devemail dev -d src/emails
  • formatbiome format
  • generate:ognode scripts/generate-og-images.mjs
  • lintbiome lint
  • mcp:initnode bin/agentmrr.mjs init
  • mcp:resetnode bin/agentmrr.mjs reset
  • postinstallnode -e "require('fs').mkdirSync('src/wasm',{recursive:true});require('fs').copyFileSync('node_modules/@resvg/resvg-wasm/index_bg.wasm','src/wasm/resvg.wasm');require('fs').copyFileSync('node_modules/satori/yoga.wasm','src/wasm/yoga.wasm')"
  • prebuildnode scripts/generate-og-images.mjs
  • prebuild:productionnode scripts/generate-og-images.mjs
  • preparehusky
  • previewvite preview
  • push-dbnpx instant-cli@latest push
  • startnode .output/server/index.mjs
  • stripe:webhooksource .env.local && stripe listen --api-key $STRIPE_SECRET_KEY --forward-to localhost:3000/api/auth/stripe/webhook
  • testvitest run
  • test:coveragevitest run --coverage
  • test:watchvitest
Dependencies11
  • @hookform/resolvers^5.2.2
  • @modelcontextprotocol/sdk^1.27.1
  • @resvg/resvg-wasm^2.6.2
  • geist^1.7.0
  • motion^12.38.0
  • openai^6.33.0
  • radix-ui^1.4.3
  • react-hook-form^7.72.1
  • recharts^3.8.1
  • satori^0.26.0
  • zod4.1.11