npm PACKAGE

@lobehub/fluent-emoji 5.0.1

Warn

PkgFire would install this release with a warning.·Checked 2 hours ago·Published 25 October 2026

npmjs.com

Why

  • warnSuspicious behaviour

    Difference between manifest and package.json found: devDependencies: react-dom: Manifest("^19.2.3"), package.json("None") p-map: Manifest("^7.0.4"), package.json("None") @lobehub/lint: Manifest("^2.1.6"), package.json("None") react-virtuoso: Manifest("^4.17.0"), package.json("None") semantic-release: Manifest("^21.1.2"), package.json("None") remark-cli: Manifest("^12.0.1"), package.json("None") prettier: Manifest("^3.9.10"), package.json("None") es-toolkit: Manifest("^1.43.0"), package.json("None") typescript: Manifest("^5.9.3"), package.json("None") clean-package: Manifest("^2.2.0"), package.json("None") @react-router/dev: Manifest("8.2.0"), package.json("None") jsdom: Manifest("^27.3.0"), package.json("None") remark: Manifest("^15.0.1"), package.json("None") lucide-react: Manifest("^0.562.0"), package.json("None") @lobehub/ui: Manifest("^6.0.0"), package.json("None") husky: Manifest("^9.1.7"), package.json("None") react-router: Manifest("8.2.0"), package.json("None") react: Manifest("^19.2.3"), package.json("None") @testing-library/react: Manifest("^16.3.1"), package.json("None") glob: Manifest("^13.0.0"), package.json("None") @vitest/coverage-v8: Manifest("~1.2.2"), package.json("None") tsx: Manifest("^4.21.0"), package.json("None") @commitlint/cli: Manifest("^19.8.1"), package.json("None") @lobehub/icons: Manifest("^6.0.0-beta.1"), package.json("None") multi-semantic-release: Manifest("^3.1.0"), package.json("None") eslint: Manifest("^10.12.0"), package.json("None") tsdown: Manifest("^0.22.14"), package.json("None") tsrs: Manifest("0.18.0-ts7.1.0-dev.20260929"), package.json("None") dpdm: Manifest("^3.14.0"), package.json("None") @types/react: Manifest("^19.2.7"), package.json("None") stylelint: Manifest("^16.26.1"), package.json("None") @babel/runtime: Manifest("^7.28.4"), package.json("None") @lobehub/docs-kit: Manifest("^6.0.0"), package.json("None") commitlint: Manifest("^19.8.1"), package.json("None") lint-staged: Manifest("^16.2.7"), package.json("None") vite: Manifest("8.1.4"), package.json("None") motion: Manifest("^13.0.0"), package.json("None") vitest: Manifest("~1.2.2"), package.json("None") @types/react-dom: Manifest("^19.2.3"), package.json("None") scripts: sync:cnpm: Manifest("cnpm sync @lobehub/fluent-emoji-3d @lobehub/fluent-emoji-mono @lobehub/fluent-emoji-flat @lobehub/fluent-emoji-modern @lobehub/fluent-emoji-anim-1 @lobehub/fluent-emoji-anim-2 @lobehub/fluent-emoji-anim-3 @lobehub/fluent-emoji-anim-4"), package.json("None") postpack: Manifest("clean-package restore"), package.json("None") ci: Manifest("npm run lint && npm run type-check"), package.json("None") release:static: Manifest("multi-semantic-release"), package.json("None") test:update: Manifest("vitest -u"), package.json("None") lint:circular: Manifest("dpdm src/**/*.{ts,tsx} --warning false --tree false --exit-code circular:1 -T true"), package.json("None") dev: Manifest("lobedocs dev"), package.json("None") lint: Manifest("eslint "{src,packages}/**/*.{js,jsx,ts,tsx}" --fix"), package.json("None") test: Manifest("vitest --passWithNoTests"), package.json("None") docs:build: Manifest("lobedocs build"), package.json("None") build: Manifest("tsdown"), package.json("None") prepare: Manifest("husky && npm run setup"), package.json("None") prettier: Manifest("prettier -c --write --no-error-on-unmatched-pattern "**/**""), package.json("None") start: Manifest("npm run dev"), package.json("None") build:static: Manifest("tsx ./scripts/groupAnim.ts"), package.json("None") docs:dev: Manifest("lobedocs dev"), package.json("None") lint:style: Manifest("stylelint "{src,docs}/**/*.{js,jsx,ts,tsx}" --fix"), package.json("None") prepack: Manifest("clean-package"), package.json("None") release: Manifest("semantic-release"), package.json("None") type-check: Manifest("tsrs --noEmit"), package.json("None") test:coverage: Manifest("vitest run --coverage --passWithNoTests"), package.json("None") clean: Manifest("rm -r es lib dist coverage .react-router .eslintcache node_modules/.cache"), package.json("None") docs:build-analyze: Manifest("ANALYZE=1 lobedocs build"), package.json("None") reinstall: Manifest("npm run clean && lerna clean && rm -rf node_modules && npm run"), package.json("None") lint:md: Manifest("remark . --quiet --frail --output"), package.json("None") setup: Manifest("lobedocs typegen"), package.json("None")

Provenance

A registry signature proves the registry served these bytes unaltered. Build provenance proves which workflow built them from which commit; a stolen publishing token can fake the first but not the second.

Signature
Verified against the registry's key
Build provenance
None, and no earlier version had any

What the code does

On its own this is weak signal: plenty of honest libraries read files or talk to the network. What PkgFire watches is a release gaining something the one before it did not.

Source patterns

Patterns found in the source, including those malware is known to use.

  • metadata_mismatch

Other checked releases

Check every dependency before it installs

This page is one release. PkgFire checks every package in your lockfile, on every install and in every pull request, and blocks the bad ones before they run.