tsc: command not found / App Platform

Posted December 30, 2020 2.8k views
Node.jsTypeScriptDigitalOcean App Platform

Trying to deploy Node.js app (with TypeScript) with App Platform

I am getting tsc: command not found when trying to run build.

This is part of my package.json

"scripts": {
    "build": "tsc",
    "start": "node dist/index.js",
    "watch": "tsc -w",
    "dev": "nodemon dist/index.js",
    "test": "echo \"Error: no test specified\" && exit 1"

Tried to run npm install --only=dev && npm run build && npm prune --production

as was suggested in the threads below, but got:
Your build job failed because it was terminated. This often happens due to resource exhaustion.
Error code: BuildJobTerminated

How do I build this sucker?

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
3 answers

Did "build": "npm install --only=dev && tsc" and it looks like its working.

The --only=dev did not work for me with NPM v7. Resolved by running npm install --production=false.

If you have environment variable set NODE_ENV=production then remove it as it interfares with the npm install (in production mode it doesn’t install the dev dependencies). Instead you can inline the env var like so:

"build": "NODE_ENV=production tsc"