Generate a report about your development environment for debugging and issue reporting
Installations
npm install envinfo
Developer Guide
Typescript
No
Module System
CommonJS
Min. Node Version
>=4
Node Version
16.20.2
NPM Version
8.19.4
Score
89.6
Supply Chain
89.8
Quality
80.7
Maintenance
100
Vulnerability
100
License
Releases
Contributors
Unable to fetch Contributors
Languages
JavaScript (100%)
validate.email 🚀
Verify real, reachable, and deliverable emails with instant MX records, SMTP checks, and disposable email detection.
Developer
tabrindle
Download Statistics
Total Downloads
1,896,479,950
Last Day
2,512,237
Last Week
12,765,470
Last Month
53,872,615
Last Year
608,808,678
GitHub Statistics
MIT License
770 Stars
368 Commits
58 Forks
3 Watchers
34 Branches
39 Contributors
Updated on Mar 03, 2025
Bundle Size
135.28 kB
Minified
40.83 kB
Minified + Gzipped
Package Meta Information
Latest Version
7.14.0
Package Id
envinfo@7.14.0
Unpacked Size
158.06 kB
Size
49.04 kB
File Count
5
NPM Version
8.19.4
Node Version
16.20.2
Published on
Sep 13, 2024
Total Downloads
Cumulative downloads
Total Downloads
1,896,479,950
Last Day
7.8%
2,512,237
Compared to previous day
Last Week
4.3%
12,765,470
Compared to previous week
Last Month
8.6%
53,872,615
Compared to previous month
Last Year
25.2%
608,808,678
Compared to previous year
Daily Downloads
Weekly Downloads
Monthly Downloads
Yearly Downloads
Dev Dependencies
30
envinfo generates a report of the common details needed when troubleshooting software issues, such as your operating system, binary versions, browsers, installed languages, and more
The problem
- It works on my computer
- "command not found"
- what version of "command" are you running?
- what version of "different command" are you running?
- do you have "insert obscure android sdk version"?
- every github issue reporting template ever:
Please mention other relevant information such as the browser version, Node.js version, Operating System and programming language.
This solution
- Gather all of this information in one spot, quickly, and painlessly.
Installation
To use as a CLI tool, install this package globally:
1npm install -g envinfo || yarn global add envinfo
Or, use without installing with npx:
npx envinfo
To use as a library in another project:
1npm install envinfo || yarn add envinfo
CLI Usage
envinfo
|| npx envinfo
1 System: 2 OS: macOS Mojave 10.14.5 3 CPU: (8) x64 Intel(R) Core(TM) i7-7820HQ CPU @ 2.90GHz 4 Memory: 2.97 GB / 16.00 GB 5 Shell: 5.3 - /bin/zsh 6 Binaries: 7 Node: 8.16.0 - ~/.nvm/versions/node/v8.16.0/bin/node 8 Yarn: 1.15.2 - ~/.yarn/bin/yarn 9 npm: 6.9.0 - ~/.nvm/versions/node/v8.16.0/bin/npm 10 pnpm: 8.7.6 - /usr/local/bin/pnpm 11 bun: 1.0.2 - /usr/local/bin/bun 12 Watchman: 4.9.0 - /usr/local/bin/watchman 13 Managers: 14 Cargo: 1.31.0 - ~/.cargo/bin/cargo 15 CocoaPods: 1.7.3 - /usr/local/bin/pod 16 Composer: 1.8.6 - /usr/local/bin/composer 17 Gradle: 5.5 - /usr/local/bin/gradle 18 Homebrew: 2.1.7 - /usr/local/bin/brew 19 Maven: 3.6.1 - /usr/local/bin/mvn 20 pip2: 19.0.3 - /usr/local/bin/pip2 21 pip3: 19.0.2 - /usr/local/bin/pip3 22 RubyGems: 2.5.2.3 - /usr/bin/gem 23 Utilities: 24 CMake: 3.13.3 - /usr/local/bin/cmake 25 Make: 3.81 - /usr/bin/make 26 GCC: 10.14. - /usr/bin/gcc 27 Git: 2.20.0 - /usr/local/bin/git 28 Mercurial: 4.5.3 - /usr/bin/hg 29 Clang: 1001.0.46.4 - /usr/bin/clang 30 Subversion: 1.10.3 - /usr/bin/svn 31 Servers: 32 Apache: 2.4.34 - /usr/sbin/apachectl 33 Nginx: 1.13.12 - /usr/local/bin/nginx 34 Virtualization: 35 Docker: 18.09.1 - /usr/local/bin/docker 36 Parallels: 13.3.0 - /usr/local/bin/prlctl 37 VirtualBox: 5.2.20 - /usr/local/bin/vboxmanage 38 SDKs: 39 iOS SDK: 40 Platforms: iOS 12.2, macOS 10.14, tvOS 12.2, watchOS 5.2 41 Android SDK: 42 API Levels: 28 43 Build Tools: 28.0.3 44 System Images: android-28 | Google Play Intel x86 Atom 45 IDEs: 46 Android Studio: 3.2 AI-181.5540.7.32.5056338 47 Atom: 1.23.3 48 Emacs: 22.1.1 - /usr/bin/emacs 49 Nano: 2.0.6 - /usr/bin/nano 50 VSCode: 1.36.0 - /usr/local/bin/code 51 Vim: 8.0 - /usr/bin/vim 52 Xcode: 10.2.1/10E1001 - /usr/bin/xcodebuild 53 Languages: 54 Bash: 4.4.23 - /usr/local/bin/bash 55 Elixir: 1.6.2 - /usr/local/bin/elixir 56 Go: 1.11.1 - /usr/local/bin/go 57 Java: 1.8.0_192 - /usr/bin/javac 58 Perl: 5.18.4 - /usr/bin/perl 59 PHP: 7.1.23 - /usr/bin/php 60 Python: 2.7.16 - /usr/local/bin/python 61 Python3: 3.7.2 - /usr/local/bin/python3 62 R: 3.6.0 - /usr/local/bin/R 63 Ruby: 2.3.7 - /usr/bin/ruby 64 Rust: 1.16.0 - /Users/tabrindle/.cargo/bin/rustup 65 Databases: 66 MongoDB: 3.6.4 - /usr/local/bin/mongo 67 MySQL: 10.3.10 (MariaDB) - /usr/local/bin/mysql 68 PostgreSQL: 10.3 - /usr/local/bin/postgres 69 SQLite: 3.24.0 - /usr/bin/sqlite3 70 Browsers: 71 Chrome: 75.0.3770.100 72 Chrome Canary: 77.0.3847.0 73 Firefox: 68.0 74 Firefox Developer Edition: 69.0 75 Firefox Nightly: 69.0a1 76 Safari: 12.1.1 77 Safari Technology Preview: 13.0 78 npmPackages: 79 apollo-client: ^2.3.1 => 2.3.1 80 jest: ^22.2.1 => 22.2.1 81 ... 82 react: ^16.3.2 => 16.3.2 83 react-apollo: ^2.1.4 => 2.1.4 84 run4staged: ^1.1.1 => 1.1.1 85 solidarity: 2.0.5 => 2.0.5 86 styled-components: ^3.1.6 => 3.1.6 87 npmGlobalPackages: 88 create-react-app: 1.5.2 89 create-react-native-app: 1.0.0 90 envinfo: 5.10.0 91 exp: 49.2.2 92 gatsby-cli: 1.1.52 93 npm: 5.6.0 94 react-native-cli: 2.0.1 95 solidarity: 2.1.0 96 typescript: 2.8.1
Programmatic Usage
Envinfo takes a configuration object and returns a Promise that resolves a string (optionally yaml, json or markdown)
1import envinfo from 'envinfo'; 2 3envinfo.run( 4 { 5 System: ['OS', 'CPU'], 6 Binaries: ['Node', 'Yarn', 'npm'], 7 Browsers: ['Chrome', 'Firefox', 'Safari'], 8 npmPackages: ['styled-components', 'babel-plugin-styled-components'], 9 }, 10 { json: true, showNotFound: true } 11).then(env => console.log(env));
logs:
1{ 2 "System": { 3 "OS": "macOS High Sierra 10.13", 4 "CPU": "x64 Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz" 5 }, 6 "Binaries": { 7 "Node": { 8 "version": "8.11.0", 9 "path": "~/.nvm/versions/node/v8.11.0/bin/node" 10 }, 11 "Yarn": { 12 "version": "1.5.1", 13 "path": "~/.yarn/bin/yarn" 14 }, 15 "npm": { 16 "version": "5.6.0", 17 "path": "~/.nvm/versions/node/v8.11.0/bin/npm" 18 } 19 }, 20 "Browsers": { 21 "Chrome": { 22 "version": "67.0.3396.62" 23 }, 24 "Firefox": { 25 "version": "59.0.2" 26 }, 27 "Safari": { 28 "version": "11.0" 29 } 30 }, 31 "npmPackages": { 32 "styled-components": { 33 "wanted": "^3.2.1", 34 "installed": "3.2.1" 35 }, 36 "babel-plugin-styled-components": "Not Found" 37 } 38}
All of envinfo's helpers are also exported for use. You can use envinfo as a whole, or just the parts that you need, like this:
1const envinfo = require('envinfo'); 2 3// each helper returns a promise 4const node = await envinfo.helpers.getNodeInfo(); 5 6// The promises resolve to an array of values: ["Name", "Version", "Path"] 7// e.g. ["Node", "10.9.0", "/usr/local/bin/node"] 8 9console.log(`Node: ${node[1]} - ${node[2]}`); // "Node: 10.9.0 - ~/.nvm/versions/node/v8.14.0/bin/node"
CLI Options
--system Print general system info such as OS, CPU, Memory and Shell
--browsers Get version numbers of installed web browsers
--SDKs Get platforms, build tools and SDKs of iOS and Android
--IDEs Get version numbers of installed IDEs
--languages Get version numbers of installed languages such as Java, Python, PHP, etc
--binaries Get version numbers of node, npm, watchman, etc
--npmPackages Get version numbers of locally installed npm packages - glob, string, or comma delimited list
--npmGlobalPackages Get version numbers of globally installed npm packages
--duplicates Mark duplicate npm packages inside parentheses eg. (2.1.4)
--fullTree Traverse entire node_modules dependency tree, not just top level
--markdown Print output in markdown format
--json Print output in JSON format
--console Print to console (defaults to on for CLI usage, off for programmatic usage)
Integration
envinfo is live in:
- React Native (
react-native info
) - Create React App (
create-react-app --info
) - Expo Environment Info (
npx expo-env-info
) - Webpack (
webpack-cli info
) - Solidarity (
solidarity report
) - Gatsby (
gatsby info
)
envinfo is used in the ISSUE_TEMPLATE of:
Alternatives
- type
command -v
until you smash your computer - screenfetch - fetch system and terminal information, and display a pretty ascii logo
- Solidarity - a project based environment checker
- write your own
License
MIT
Contributing
PRs for additional features are welcome! Run npm run lint && npm run format
before committing.
This project came out of a PR to the React Native CLI tool - issues are reported frequently without important environment information, like Node/npm versions.
Contributors
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!

No vulnerabilities found.
Reason
no dangerous workflow patterns detected
Reason
no binaries found in the repo
Reason
license file detected
Details
- Info: project has a license file: LICENSE:0
- Info: FSF or OSI recognized license: MIT License: LICENSE:0
Reason
packaging workflow detected
Details
- Info: Project packages its releases by way of GitHub Actions.: .github/workflows/release-please.yml:8
Reason
Found 18/24 approved changesets -- score normalized to 7
Reason
0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
Reason
detected GitHub workflow tokens with excessive permissions
Details
- Warn: no topLevel permission defined: .github/workflows/node.js.yml:1
- Warn: no topLevel permission defined: .github/workflows/release-please.yml:1
- Info: no jobLevel write permissions found
Reason
dependency not pinned by hash detected -- score normalized to 0
Details
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/node.js.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/tabrindle/envinfo/node.js.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/node.js.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/tabrindle/envinfo/node.js.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/node.js.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/tabrindle/envinfo/node.js.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/node.js.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/tabrindle/envinfo/node.js.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/node.js.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/tabrindle/envinfo/node.js.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/node.js.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/tabrindle/envinfo/node.js.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/release-please.yml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/tabrindle/envinfo/release-please.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release-please.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/tabrindle/envinfo/release-please.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release-please.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/tabrindle/envinfo/release-please.yml/main?enable=pin
- Info: 0 out of 8 GitHub-owned GitHubAction dependencies pinned
- Info: 0 out of 1 third-party GitHubAction dependencies pinned
Reason
no effort to earn an OpenSSF best practices badge detected
Reason
security policy file not detected
Details
- Warn: no security policy file detected
- Warn: no security file to analyze
- Warn: no security file to analyze
- Warn: no security file to analyze
Reason
project is not fuzzed
Details
- Warn: no fuzzer integrations found
Reason
branch protection not enabled on development/release branches
Details
- Warn: branch protection not enabled for branch 'main'
Reason
SAST tool is not run on all commits -- score normalized to 0
Details
- Warn: 0 commits out of 28 are checked with a SAST tool
Reason
79 existing vulnerabilities detected
Details
- Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92
- Warn: Project is vulnerable to: GHSA-6chw-6frg-f759
- Warn: Project is vulnerable to: GHSA-v88g-cgmw-v5xw
- Warn: Project is vulnerable to: GHSA-93q8-gq69-wqmw
- Warn: Project is vulnerable to: GHSA-fwr7-v2mv-hh25
- Warn: Project is vulnerable to: GHSA-cwfw-4gq5-mrqx
- Warn: Project is vulnerable to: GHSA-g95f-p29q-9xw4
- Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg
- Warn: Project is vulnerable to: GHSA-w8qv-6jwh-64r5
- Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275
- Warn: Project is vulnerable to: GHSA-gxpj-cx7g-858c
- Warn: Project is vulnerable to: GHSA-w573-4hg7-7wgq
- Warn: Project is vulnerable to: GHSA-ff7x-qrg7-qggm
- Warn: Project is vulnerable to: GHSA-3gx7-xhv7-5mx3
- Warn: Project is vulnerable to: GHSA-74fj-2j2h-c42q
- Warn: Project is vulnerable to: GHSA-pw2r-vq6v-hr8c
- Warn: Project is vulnerable to: GHSA-jchw-25xp-jwwc
- Warn: Project is vulnerable to: GHSA-cxjh-pqwp-8mfp
- Warn: Project is vulnerable to: GHSA-8r6j-v8pm-fqw3
- Warn: Project is vulnerable to: MAL-2023-462
- Warn: Project is vulnerable to: GHSA-q42p-pg8m-cqh6
- Warn: Project is vulnerable to: GHSA-w457-6q6x-cgp9
- Warn: Project is vulnerable to: GHSA-62gr-4qp9-h98f
- Warn: Project is vulnerable to: GHSA-f52g-6jhx-586p
- Warn: Project is vulnerable to: GHSA-2cf5-4w76-r9qv
- Warn: Project is vulnerable to: GHSA-3cqr-58rm-57f8
- Warn: Project is vulnerable to: GHSA-g9r4-xpmj-mj65
- Warn: Project is vulnerable to: GHSA-q2c6-c6pm-g3gh
- Warn: Project is vulnerable to: GHSA-765h-qjxv-5f44
- Warn: Project is vulnerable to: GHSA-f2jv-r9rf-7988
- Warn: Project is vulnerable to: GHSA-43f8-2h32-f4cj
- Warn: Project is vulnerable to: GHSA-8g7p-74h8-hg48
- Warn: Project is vulnerable to: GHSA-pc5p-h8pf-mvwp
- Warn: Project is vulnerable to: GHSA-qqgx-2p2h-9c37
- Warn: Project is vulnerable to: GHSA-2pr6-76vf-7546
- Warn: Project is vulnerable to: GHSA-8j8c-7jfh-h6hx
- Warn: Project is vulnerable to: GHSA-896r-f27r-55mw
- Warn: Project is vulnerable to: GHSA-9c47-m6qq-7p4h
- Warn: Project is vulnerable to: GHSA-6c8f-qphg-qjgp
- Warn: Project is vulnerable to: GHSA-76p3-8jx3-jpfq
- Warn: Project is vulnerable to: GHSA-3rfm-jhwj-7488
- Warn: Project is vulnerable to: GHSA-hhq3-ff78-jv3g
- Warn: Project is vulnerable to: GHSA-p6mc-m468-83gw
- Warn: Project is vulnerable to: GHSA-29mw-wpgm-hmr9
- Warn: Project is vulnerable to: GHSA-35jh-r3h4-6jhm
- Warn: Project is vulnerable to: GHSA-h726-x36v-rx45
- Warn: Project is vulnerable to: GHSA-4xcv-9jjx-gfj3
- Warn: Project is vulnerable to: GHSA-7wpw-2hjm-89gp
- Warn: Project is vulnerable to: GHSA-952p-6rrq-rcjv
- Warn: Project is vulnerable to: GHSA-f8q6-p94x-37v3
- Warn: Project is vulnerable to: GHSA-vh95-rmgr-6w4m
- Warn: Project is vulnerable to: GHSA-xvch-5gv4-984h
- Warn: Project is vulnerable to: GHSA-fhjf-83wg-r2j9
- Warn: Project is vulnerable to: GHSA-5fw9-fq32-wv5p
- Warn: Project is vulnerable to: GHSA-hj48-42vr-x3v9
- Warn: Project is vulnerable to: GHSA-22r3-9w55-cj54
- Warn: Project is vulnerable to: GHSA-hrpp-h998-j3pp
- Warn: Project is vulnerable to: GHSA-p8p7-x288-28g6
- Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw
- Warn: Project is vulnerable to: GHSA-44c6-4v22-4mhx
- Warn: Project is vulnerable to: GHSA-4x5v-gmq8-25ch
- Warn: Project is vulnerable to: GHSA-4g88-fppr-53pp
- Warn: Project is vulnerable to: GHSA-4jqc-8m5r-9rpr
- Warn: Project is vulnerable to: GHSA-wpg7-2c88-r8xv
- Warn: Project is vulnerable to: GHSA-3jfq-g458-7qm9
- Warn: Project is vulnerable to: GHSA-r628-mhmh-qjhw
- Warn: Project is vulnerable to: GHSA-9r2w-394v-53qc
- Warn: Project is vulnerable to: GHSA-5955-9wpr-37jh
- Warn: Project is vulnerable to: GHSA-qq89-hq3f-393p
- Warn: Project is vulnerable to: GHSA-f5x3-32g6-xq36
- Warn: Project is vulnerable to: GHSA-jgrx-mgxx-jf9v
- Warn: Project is vulnerable to: GHSA-72xf-g2v4-qvf3
- Warn: Project is vulnerable to: GHSA-7p7h-4mm5-852v
- Warn: Project is vulnerable to: GHSA-38fc-wpqx-33j7
- Warn: Project is vulnerable to: GHSA-4vvj-4cpr-p986
- Warn: Project is vulnerable to: GHSA-6fc8-4gx4-v693
- Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q
- Warn: Project is vulnerable to: GHSA-c4w7-xm78-47vh
- Warn: Project is vulnerable to: GHSA-p9pc-299p-vxgp
Score
3.6
/10
Last Scanned on 2025-03-03
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn More