Learn to Build Serverless Apps

Subcribe for tips on building serverless apps with React & AWS

Install nvm and Node.js for macOS 11

The Node Version Manager is an easy to way to run multiple versions of Node. Having upgraded to macOS 11 recently I found that I had accidentally installed a Node using Homebrew and I needed to get nvm working again.

The process was fairly simple.

Uninstall the Homebrew Node:

brew uninstall node

Try to install the Homebrew nvm:

brew install nvm

Ok, this didn't work so well:

######################################################################## 100.0%
Error: Your Command Line Tools (CLT) does not support macOS 11.
It is either outdated or was modified.
Please update your Command Line Tools (CLT) or delete it if no updates are available.
Update them from Software Update in System Preferences or run:
  softwareupdate --all --install --force

If that doesn't show you any updates, run:
  sudo rm -rf /Library/Developer/CommandLineTools
  sudo xcode-select --install

Alternatively, manually download them from:
  https://developer.apple.com/download/more/.

Error: An exception occurred within a child process:
  SystemExit: exit

I knew I was running the latest version of everything so I jumped straight to:

sudo rm -rf /Library/Developer/CommandLineTools
sudo xcode-select --install

With that done I could finally install nvm:

brew install nvm

I then cleaned out my old .nvm folder and created a new one:

rm -rf ~/.nvm && mkdir ~/.nvm

As I switched from bash to zsh when upgrading to macOS 11 I had to add some lines to my ~/.zshrc:

export NVM_DIR="$HOME/.nvm"
[ -s "/usr/local/opt/nvm/nvm.sh" ] && . "/usr/local/opt/nvm/nvm.sh"  # This loads nvm
[ -s "/usr/local/opt/nvm/etc/bash_completion.d/nvm" ] && . "/usr/local/opt/nvm/etc/bash_completion.d/nvm"  # This loads nvm bash_completion

Before continuing I ran the source command but you could simply restart your shell:

source ~/.zshrc

It was now time to install the version of Node I required:

nvm install v14.16.0

Finally, check that Node is installed correctly.

node --version

Learn to Build Serverless Apps

Do you want to learn how to build servless apps? Subscribe to my mailing list to get receive updates and articles that will help you build your first serverless app.

BONUS You'll also receive early access and discounts to my new AppSync course.

Build Serverless Apps with AppSync and Amplify

I'm writing a course on building applications with Amplify and AppSync. Subscribe today to receive updates and preview videos.

EmailTwitterGithubYouTubeFacebookFacebookLinkedinRSS Feed

Building serverless apps using TypeScript/JavaScript, AWS Amplify and React with an Amazon Web Services (AWS) backend (Lambda, AppSync, API Gateway, S3, DynamoDB, SNS and more).