Node Can Run TypeScript Now. So Why Are We Still Shipping ts-node?

📰 Medium · JavaScript

Learn why shipping ts-node is still necessary despite Node being able to run TypeScript, and how to optimize your project dependencies

intermediate Published 8 May 2026
Action Steps
  1. Remove ts-node from your project's package.json and test if anything breaks
  2. Evaluate the trade-offs between using ts-node and native Node TypeScript support
  3. Configure your project to use either ts-node or native Node TypeScript support based on your specific needs
  4. Monitor your project's performance and adjust your dependency management strategy as needed
  5. Consider using tools like npm or yarn to manage and optimize your project dependencies
Who Needs to Know This

Developers and DevOps teams can benefit from understanding the role of ts-node in their projects and how to manage dependencies efficiently

Key Insight

💡 ts-node provides additional features and compatibility that native Node TypeScript support may not offer, making it still a valuable dependency in many projects

Share This
Still shipping ts-node? Learn why it's still necessary and how to optimize your project dependencies #tsnode #typescript #nodejs

Key Takeaways

Learn why shipping ts-node is still necessary despite Node being able to run TypeScript, and how to optimize your project dependencies

Full Article

Title: Node Can Run TypeScript Now. So Why Are We Still Shipping ts-node?

URL Source: https://medium.com/@the_atomic_architect/node-can-run-typescript-now-why-are-we-still-shipping-ts-node-1bf8aa250d69?source=rss------javascript-5

Published Time: 2026-05-08T17:13:09Z

Markdown Content:
# Node Can Run TypeScript Now. So Why Are We Still Shipping ts-node? | Medium

[Sitemap](https://medium.com/sitemap/sitemap.xml)

[Open in app](https://play.google.com/store/apps/details?id=com.medium.reader&referrer=utm_source%3DmobileNavBar&source=post_page---top_nav_layout_nav-----------------------------------------)

Sign up

[Sign in](https://medium.com/m/signin?operation=login&redirect=https%3A%2F%2Fmedium.com%2F%40the_atomic_architect%2Fnode-can-run-typescript-now-why-are-we-still-shipping-ts-node-1bf8aa250d69&source=post_page---top_nav_layout_nav-----------------------global_nav------------------)

[](https://medium.com/?source=post_page---top_nav_layout_nav-----------------------------------------)

Get app

[Write](https://medium.com/m/signin?operation=register&redirect=https%3A%2F%2Fmedium.com%2Fnew-story&source=---top_nav_layout_nav-----------------------new_post_topnav------------------)

[Search](https://medium.com/search?source=post_page---top_nav_layout_nav-----------------------------------------)

Sign up

[Sign in](https://medium.com/m/signin?operation=login&redirect=https%3A%2F%2Fmedium.com%2F%40the_atomic_architect%2Fnode-can-run-typescript-now-why-are-we-still-shipping-ts-node-1bf8aa250d69&source=post_page---top_nav_layout_nav-----------------------global_nav------------------)

![Image 1](https://miro.medium.com/v2/resize:fill:64:64/1*dmbNkD5D-u45r44go_cf0g.png)

Press enter or click to view image in full size

![Image 2](https://miro.medium.com/v2/resize:fit:700/1*5tTExLEisJYiel5txrrhBw.png)

Member-only story

# Node Can Run TypeScript Now. So Why Are We Still Shipping ts-node?

[![Image 3: The Atomic Architect](https://miro.medium.com/v2/resize:fill:64:64/1*HYSmdNFZmkEdTrmCvMnFRw.jpeg)](https://medium.com/@the_atomic_architect?source=post_page---byline--1bf8aa250d69---------------------------------------)

[The Atomic Architect](https://medium.com/@the_atomic_architect?source=post_page---byline--1bf8aa250d69---------------------------------------)

Follow

12 min read

·

Just now

[](https://medium.com/m/signin?actionUrl=https%3A%2F%2Fmedium.com%2F_%2Fvote%2Fp%2F1bf8aa250d69&operation=register&redirect=https%3A%2F%2Fmedium.com%2F%40the_atomic_architect%2Fnode-can-run-typescript-now-why-are-we-still-shipping-ts-node-1bf8aa250d69&user=The+Atomic+Architect&userId=cef247a0cc9d&source=---header_actions--1bf8aa250d69---------------------clap_footer------------------)

[](https://medium.com/m/signin?actionUrl=https%3A%2F%2Fmedium.com%2F_%2Fbookmark%2Fp%2F1bf8aa250d69&operation=register&redirect=https%3A%2F%2Fmedium.com%2F%40the_atomic_architect%2Fnode-can-run-typescript-now-why-are-we-still-shipping-ts-node-1bf8aa250d69&source=---header_actions--1bf8aa250d69---------------------bookmark_footer------------------)

[Listen](https://medium.com/m/signin?actionUrl=https%3A%2F%2Fmedium.com%2Fplans%3Fdimension%3Dpost_audio_button%26postId%3D1bf8aa250d69&operation=register&redirect=https%3A%2F%2Fmedium.com%2F%40the_atomic_architect%2Fnode-can-run-typescript-now-why-are-we-still-shipping-ts-node-1bf8aa250d69&source=---header_actions--1bf8aa250d69---------------------post_audio_button------------------)

Share

I removed `ts-node` from a backend repo and expected something to break.

Nothing broke.

That was the scary part.

Because it meant the dependency was not protecting us anymore. It was just sitting there because nobody had questioned it.

That feeling is strange. You delete something from `package.json`, run the same script again, and the project behaves like nothing happened.

No loader error.

No config fight.

No ESM drama.

No “Cannot use import statement outside a module.”

No weird command copied from an old GitHub iss
Read full article → ← Back to Reads