What it is
TypeScript is a programming language from Microsoft that adds static types to JavaScript. You describe the shape of your data, and the compiler checks that the code uses it consistently before anything runs. It then compiles to plain JavaScript, so it runs anywhere JavaScript runs: in browsers, on Node servers and inside React Native apps on a phone.
Types are optional and can be added gradually, which lets an existing JavaScript codebase move over one file at a time. Editors use the type information for autocomplete, inline errors and safe renaming across a whole project. Those benefits grow with the size of the codebase and the number of people working in it.
How I use it
- Part of the Rental Pilot stack alongside React and React Native.
- Used in the Rail & Sail Montessori House site with Next.js 14, React 18 and Tailwind.
- Treated as a first check, not the last one: every change with a screen is rendered in a real browser or device before it ships.
TypeScript earns its place once a codebase is big enough that nobody remembers every data shape. I use it because rental agreements, invoices and payroll records have a lot of fields, and a type error at build time is much cheaper than a wrong number on an invoice. Passing a type check is still not verification, so every change is also looked at on screen.
Questions
Do you write TypeScript or JavaScript?
Both. TypeScript is part of the stack for Rental Pilot's React and React Native apps, and plain JavaScript still turns up in smaller pieces and older systems.
Is a passing type check enough to ship?
No. Types catch a useful class of mistakes, but every change with a screen is also rendered in a browser or on a device and checked before it goes out.