I'm very particular about matching the version of tools I use locally with what is used in production.
This includes specific versions of nginx, PHP, MySQL, and Node.
And I work with a variety of different client projects, so I need to be able to set these versions per project.
For almost everything, we use Docker, but we found it to be painfully slow for Node and building front-end assets.
For a while, I used nvm as a tool for managing multiple Node versions, but I would frequently bump into weird issues which would take an annoying amount of time to troubleshoot.
About a year ago, I learned about Volta, and I cautiously gave it a try.
I'm happy to report that I haven't had any of the issues I bumped into with nvm, and it has been a delight to use. It just gets out of the way and makes it frictionless to pin specific versions of Node and npm per project.
If you've felt this pain before, I recommend giving Volta a try.
Here to help,
Joel
P.S. Would you like to learn how to improve the quality of your data? That's a theme of our book, Mastering Laravel Validation Rules.