NativeScript Advanced Setup: macOS
This page contains a list of all system requirements needed to build and run NativeScript apps on macOS, as well as a guided walkthrough for getting these requirements in place. On macOS systems, you can use the NativeScript CLI to develop Android and iOS apps.
System Requirements
- macOS High Sierra or later
- The latest stable official release of Node.js (LTS) 10.x.
- (Optional) Homebrew to simplify the installation of dependencies
-
For iOS development
- Latest Xcode
- Command-line tools for Xcode
- xcodeproj ruby gem
- CocoaPods
- The
six
python package
-
For Android development
- JDK 8 or later
- Latest official release of Android SDK
- Android Support Repository
- (Optional) Google Repository
- Android SDK Build-tools 28.0.3 or later
You must also have the following two environment variables setup for Android development:
- JAVA_HOME
- ANDROID_HOME
Advanced Setup Steps
Complete the following steps to setup NativeScript on your macOS development machine:
-
Install Homebrew to simplify the installation process.
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
-
Install the latest Node.js (LTS) 10.x.
brew update
brew install node@10
-
After you run the command above you will see this on
console:
If you need to have this software first in your PATH run: echo 'export PATH="/usr/local/opt/node@10/bin:$PATH"' >> ~/.bash_profile
In order to make node available, please add it to path with this command:echo 'export PATH="/usr/local/opt/node@10/bin:$PATH"' >> ~/.bash_profile
Then restart the terminal or runsource ~/.bash_profile
command.
-
After you run the command above you will see this on
console:
-
Install the dependencies for iOS development.
- Run the App Store and download Xcode.
-
Start Xcode and you will be prompted to install Command Line Tools for Xcode.
-
To verify that the installation is correct please run
xcodebuild -version
If command above do not pass then build tools are either not installed or not selected. You can select build tools viaxcode-select
command or via Xcode (Preferences -> Locations -> Command Line Tools).
-
To verify that the installation is correct please run
-
Install the xcodeproj ruby gem with the following command.
sudo gem install xcodeproj
-
Install CocoaPods
sudo gem install cocoapods
-
Setup CocoaPods
pod setup
-
Install pip
sudo easy_install pip
-
Install python
six
packagepip install six
-
Install the dependencies for Android development.
- Set up JDK 8.
brew tap AdoptOpenJDK/openjdk
brew cask install adoptopenjdk8
-
Set the JAVA_HOME system environment variable.
export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)
-
Install the Android SDK.
-
In the terminal, run the following command:
brew cask install android-sdk
-
Next, run the following command to set the ANDROID_HOME system environment variable:
export ANDROID_HOME=/usr/local/share/android-sdk
NOTE: : If you are installing via Android SDK Manager, then the path for ANDROID_HOME would be '/Users/$userid/Library/Android/sdk/' .
NOTE: This is the directory that contains the
tools
andplatform-tools
directories.NOTE: In order to persist these variables after your terminal session is closed, they have to be persisted in your shell profile file (e.g.
~/.bash_profile
if you are using Bash,~/.zprofile
if you are using Zsh) -
In addition, install all packages for the Android SDK Platform 28, Android SDK Build-Tools 28.0.3 or later, Android Support Repository, Google Repository and any other SDKs that you may need. You can alternatively use the following command, which will install all required packages.
$ANDROID_HOME/tools/bin/sdkmanager "tools" "emulator" "platform-tools" "platforms;android-28" "build-tools;28.0.3" "extras;android;m2repository" "extras;google;m2repository"
If you are behind a corporate proxy, it might be necessary to pass additional arguments. You can check sdkmanager documentation
-
-
Setup Android Emulators (AVD) by following the article here
-
Install the NativeScript CLI.
-
Run the following command.
npm i -g nativescript
Restart the command prompt.
-
-
To check if your system is configured properly, run the following command.
tns doctor
If you see "No issues were detected" you are good to go!