We're sorry but this app doesn't work properly without JavaScript enabled. Please enable it to continue.

This lesson's interactive features are locked, please to keep using them

Build

By the end of this step, you'll have a simple working program in Node!

Assignment

npm install -D typescript @types/node tsx

The -D flag installs the packages as development dependencies, which means they won't be included in your production build.

{
  "compilerOptions": {
    "baseUrl": ".",
    "target": "esnext",
    "module": "esnext",
    "rootDir": "./src",
    "outDir": "./dist",
    "strict": true,
    "moduleResolution": "Node",
    "esModuleInterop": true,
    "skipLibCheck": true
  },
  "include": ["./src/**/*.ts"],
  "exclude": ["node_modules"]
}
  • include specifies the files to include in the compilation
  • exclude specifies the files to exclude from the compilation
  • strict enables all strict type checking options
  • esModuleInterop allows you to use ES module syntax
  • moduleResolution specifies how modules are resolved
  • baseURL specifies the base directory for module resolution
{
...
  "type": "module",
  "scripts": {
    "start": "tsx ./src/index.ts"
  },
...
}
function main() {
  console.log("Hello, world!");
}

main();
npm run start

If you see "Hello, world!" printed in the console, you're good to go!

Submit the CLI tests.