2025-03-28
2755
#node#typescript
Aman Mittal
22050
116
Mar 28, 2025 ⋅ 9 min read

How to set up TypeScript with Node.js and Express

Aman Mittal 👨‍💻 Developer 👉 Node.js, React, React Native | Tech Blogger with 1M+ views on Medium

Recent posts:

React useEffectEvent: Goodbye to stale closure headaches

React useEffectEvent: Goodbye to stale closure headaches

Discover why the useEffectEvent Hook is important, how to use it effectively, and how it compares to useRef.

David Omotayo
Oct 17, 2025 ⋅ 5 min read
I Tried Shadcn CLI 3.0 — Here’s What I Learned

I tried Shadcn CLI 3.0 — here’s what I learned

Shadcn CLI 3.0 takes component management to a new level. With namespaced registries, private access, and AI-powered discovery, it’s now faster and smarter to build React UIs.

Emmanuel John
Oct 17, 2025 ⋅ 6 min read

Why is Zod so slow?

Zod’s flexibility comes at a cost. This article breaks down why Zod is slower than AOT-compiled validators like Typia, and how to fix it with a build-time optimization that brings production-grade performance.

Ikeh Akinyemi
Oct 16, 2025 ⋅ 5 min read
the replay oct 15 graphic

The Replay (10/15/25): AI’s accessibility problem, React 19.2, and more

Discover what’s new in The Replay, LogRocket’s newsletter for dev and engineering leaders, in the October 15th issue.

Matt MacCormack
Oct 15, 2025 ⋅ 34 sec read
View all posts

50 Replies to "How to set up TypeScript with Node.js and Express"

  1. What’s the best command setup for deploying and running something like this in production? There are now compiled JS files in build/, but other files (e.g., package.json, static HTML, etc.) are all in their original locations. And, we haven’t created a script in package.json to run the built app.

  2. okayy,, then how can i use other plugin to work with my express typescript. am i should install plugin that support in typescript or not ?

  3. Choose any middleware you need, but make sure DefinitelyTyped has the corresponding Typescript @types/* mappings available. Most popular NodeJS middleware packages are supported in the DefinitelyTyped project.

    1. Hey, if you are running localhost, you do not require “https” until you want to intentionally use HTTPS.

    1. In the article above, the “outDir” is referring to the config option. The “./dist” is the value.

      Are you referring to something specific? Can you please point me to that?

    1. The `main` poperty in the `package.json` indicates the entry point and it should point out to Javascript compiled output. So it should be “main”:”dist/index.js” as we are using typescript here, if it was just just Javascript we can just use the index.js.

      1. Thanks. Ok just so everyone is 100% clear. package.json should be changed to:
        “main”: “dist/index.js”,

  4. had to remove “module”: “commonjs” from tsconfig.js as the error “ReferenceError: exports is not defined in ES module scope”

  5. anyone has a sample github repo for this? please include an example repo so we know where to place the files at. im guessing all the files should be in an dist folder?

  6. This is an excellent article that helped me complete what I sought out to do. I have one suggestion, where there is a suggestion to update nodemon.json with this script:
    {
    “watch”: [“src”],
    “ext”: “ts”,
    “exec”: “concurrently \”npx tsc –watch\” \”ts-node src/index.ts\””
    },
    I would have found it helpful to add a comment about installing concurrently. It was suggested earlier in the article but not in the same general vicinity of the nodemon.json change.

  7. Right after Running TypeScript in Node with ts-node
    if you face errors modules not found like dotenv or express you need to install again them and add to types: npm install dotenv; npm install @types/dotenv –save-dev and
    npm install express; npm install @types/express –safe-dev

  8. Supplement:
    Update nodemon.json for alias path as follows:
    “exec”: “concurrently \”npx tsc –watch\” \”ts-node -r tsconfig-paths/register src/index.ts\””

    1. Hey there! David supplied an explanation for this above. Take a look, and let us know if you have any questions.

  9. Hi, i have an error with the line “exec”: “concurrently \”tsc –watch \” \”ts-node src/index.ts\”” in the nodemon.json file, when remove this line the comand “pnpm dev” running successfully but when this line is present, catch the error “Cannot find module”

    1. Hello! I asked David about this, and he said this is usually caused by packages whose type definitions are not included in the base package and must be installed separately. Most packages include their type definitions by default, so you’re likely using an older version of those packages. Best of luck!

  10. I needed to remove the single quotes around ts-node in the scripts->dev in packages.json.
    here is the line that worked for me:
    “dev”: “nodemon –watch ‘src/**/*.ts’ –exec ts-node src/server.ts”,

Leave a Reply

Hey there, want to help make our blog better?

Join LogRocket’s Content Advisory Board. You’ll help inform the type of content we create and get access to exclusive meetups, social accreditation, and swag.

Sign up now