With the tools in place, build a small TypeScript project and run through the whole loop. Start with the container.
mkdir hello-typescript
cd hello-typescript
pnpm init
git init
A new directory, moved into it, now managed by pnpm and Git.
Next, the development tools. typescript does the type checking; tsx runs TypeScript files directly.
pnpm add -D typescript tsx
pnpm exec tsc --init
That created tsconfig.json. What is it?
It sets how strictly TypeScript checks your code. You do not need to read it yet — for now it is the marker that says "this directory is a TypeScript project".
Decide what should never be recorded, too. Create a .gitignore.
node_modules
That is the setup done. Create index.ts and write your first code.
const userName = 'Engineer';
const message = `Hello, ${userName}!`;
console.log(message);
Save it, then run it from the terminal.
pnpm exec tsx index.ts
Hello, Engineer! It is short, but I built it and ran it myself.
That is the step that matters. Now run the type checker as well.
pnpm exec tsc --noEmit
Nothing was printed.
That means nothing is wrong. Break it on purpose and the tool's job becomes obvious. Change userName to a number and run it again.
const userName = 42;
const message = `Hello, ${userName.toUpperCase()}!`;
Property 'toUpperCase' does not exist on type 'number'.
It told you the value cannot be used that way — before running anything. Once you have read it, put the code back.
Typing those long commands every time gets old, so give them names in package.json.
{
"scripts": {
"dev": "tsx index.ts",
"typecheck": "tsc --noEmit"
}
}
So now it is pnpm dev and pnpm typecheck. This is the scripts block from last time.
It is. Writing your own makes other projects' scripts readable. Last step: record everything in Git.
git status
git add .
git commit -m "Create first TypeScript project"
Because you wrote .gitignore first, node_modules stays out. Check with git status that only the files you meant are listed, then commit.
Set up the tools, write code, run it, check the types, record it. The whole loop connects.
From here you can take any code from the Learn articles and change it on your own machine. Engineering starts the moment you stop only reading and begin predicting what your edits will do.

