Can't find Typescript compiler: Command "tsc" is not valid

Solution 1:

If you're using tsc as a node module, make sure you've installed it with

npm install -g typescript

Then it should be available globally in your node command prompt

Solution 2:

Ensure you have,

C:\Program Files (x86)\Microsoft SDKs\TypeScript\0.8.0.0

or,

C:\Program Files\Microsoft SDKs\TypeScript\0.8.0.0

on your path. If not, try restarting CMD.EXE and see if shows up with a fresh copy. If that fails, try adding one of the above manually to your path.

Solution 3:

For folks on Windows with Visual Studio Code, who don't want to install full Visual Studio just for tsc.exe, I can suggest to simply download it from here: https://www.microsoft.com/en-us/download/details.aspx?id=48593.

This is a shame that this link is missing from the TypeScript download page.

Although the installer is called TypeScript for Visual Studio 2015, it works with Visual Studio Code as well.

After you downloaded and installed TypeScript, you should manually add its installation directory (C:\Program Files (x86)\Microsoft SDKs\TypeScript\2.0\ in my case) to the %PATH% environment variable.

Open environment variables editor:

Win + S; e, n, v, i, r, o; click Edit environment variables for your account.

In the window opened find Path user variable (note that it is not named %PATH% here, but still this is it). You probably have some path set there already. You just have to type ;, append the TypeScript install location and add one more ; in the end.

Screenshot for your reference:

enter image description here

After this is done, open Command Prompt and type in tsc -v. If tsc.exe's version is getting displayed, you're done. For this to work, restart Command Prompt and VS Code after making the change to the %PATH%.

P.S. If you get "error TS5057: Cannot find a tsconfig.json file at the specified directory: '.'", just create tsconfig.json file in the document root (that's probably where your .ts files are) with simple contents: {}. This means "an empty JSON file <...>. This will be sufficient for most people." (source).

Solution 4:

Usually closing and reopen the command prompt solves the issues.