:information_desk_person: Show a message to your users to upgrade Node instead of a stacktrace
:informationdeskperson: show a message to your users to upgrade Node instead of a stacktrace
It's common for new Node users to miss or not understand engines warning when installing a CLI. This package displays a beginner-friendly message if their Node version is below the one expected.
$ node -v 0.12$ modern-cli modern-cli requires at least version 6 of Node, please upgrade
If you like this project, you can support me on GitHub Sponsors
npm install please-upgrade-node
Add
please-upgrade-nodeat the top of your CLI
#!/usr/bin/env node const pkg = require('./package.json') require('please-upgrade-node')(pkg) //Set in your
package.jsonthe required Node version{ "engines": { "node": ">=6" } }Important:
>=is the only operator supported byplease-upgrade-node(e.g.>=6,>=6.0,>=6.0.0).Options
You can set custom
exitCodeandmessagefunction if neededpleaseUpgradeNode(pkg, { exitCode: 0, // Default: 1 message: function(requiredVersion) { return 'Oops this program require Node ' + requiredVersion } })Important: to keep
messagefunction compatible with older versions of Node, avoid using ES6 features like=>or string interpolation.See also
Thanks to zeit/serve for the error message inspiration.
MIT - Typicode :cactus: - Patreon