Just F***ing Use TypeScript

It's 2025. Stop guessing. Start typing.

chaos.js

🚫 Stop undefined crimes

Cannot read properties of undefined (reading 'length').
We know you hear this in your nightmares. TS stops it before it starts.

🧠 Auto-complete God

Forget console.log(obj) to see what's inside. VS Code already knows. It knows better than you.

🛡️ Refactor with Confidence

Changed a property name? TS shouts at you in 50 files so your users don't have to.

Your app has gotten complex. You have props drilling through 47 components. You're guessing what the shape of your API response is. You've discovered JSDoc, PropTypes, and raw hope, and now you're paralyzed by runtime errors.

Just fucking use TypeScript.

"But the setup is too hard!" you cry, whilst spending 3 hours debugging a typo in a variable name. npm install typescript exists. It's literally one line:

tsc --init

"But I heard TypeScript is too restrictive!" Restrictive? It prevents you from accessing properties that don't exist. That's not restrictive, that's called sanity. Your JavaScript is just untyped memory leaks waiting to happen.

"But I like the dynamic nature of JS!" Dynamic? YOU mean chaotic. Does `user.id` exist? Maybe. Is it a string? Probably. Is it `undefined`? Definitely.

Live Demo: Types Being Types
Scroll up. Look at that toggle. That's valid TypeScript code. Imagine that state needed to be shared across 15 components, refactored by a junior dev next week, and read by you in 6 months. That's when you...

(just fucking use TypeScript)

"But it's 2025!" Yeah, and TypeScript has been saving asses since 2012. You know what's also old? C++. Java. Reliable engineering.

Look, I get it. You want to move fast. But you know what's actually fast? Autocomplete. Refactoring a generic in 2 seconds instead of `grep`-searching your entire codebase. Having a compiler that screams at you before your users do.

Just. Fucking. Use. TypeScript.

Your app will thank you. Your coworkers will thank you. Your future self, debugging a race condition at 2am, will especially thank you.

Fine, you want alternatives?

  • JSDoc - Actually supports types. Good for small scripts. Verbose as hell for apps.
  • Flow - Is this still a thing? Facebook moved on. You should too.
  • ReScript - Cool functional nuances. Good luck finding devs who know it.
  • Raw JavaScript - This is just TypeScript with the safety turned off and the anxiety turned up.

But honestly? For most apps that you actually care about?

Just use TypeScript.