DECHY logo

Ctrl K or / to search, arrows to move, Enter to open

Language

TypeScript development

TypeScript adds a description of the data to JavaScript, and checks the code against it before anything runs. We write most new web and server code in it, and we move older JavaScript across in stages.

  • 1,200+ clients helped
  • Building since 2010
  • 15 services, one team
  • 50+ technologies

At a glance

What it is

TypeScript is JavaScript with a description of what each piece of data looks like, so many mistakes are caught while the code is written instead of after release.

What it means

JavaScript that knows what it is handling

TypeScript is JavaScript with types: a written description of what each value is. A checker reads those descriptions and reports where the code does not match, before it ever runs.

That matters most where several people change the same code over time. The descriptions act as documentation that cannot go out of date, because the checker would complain.

It compiles to ordinary JavaScript, so it runs anywhere JavaScript does: in browsers, on servers, and in tools. Nothing about your hosting has to change.

A laptop with code on its screen on a busy desk

Adopting it

Moving an existing project across

  1. Turn on the checker gently

    We add TypeScript to the project in a permissive mode, so existing files keep working while new files are checked.

    What it produces

    • Configuration
    • First typed files
  2. Type the edges first

    We describe the data that enters and leaves the system, such as responses from an API (a way for programs to exchange data) and form input, because that is where mistakes begin.

    What it produces

    • Shared data types
  3. Convert by importance

    We move the files that change most, or hurt most when they break, and leave stable code alone.

    What it produces

    • Converted modules
    • Fewer runtime errors
  4. Tighten the rules

    As coverage grows, we turn on stricter checking, one rule at a time.

    What it produces

    • Stricter configuration

What DECHY can do

Working with TypeScript

New projects

  • Web applications and portals written in TypeScript from the first day.
  • Server code that shares data descriptions with the interface.

Existing projects

  • A staged move from JavaScript.
  • Reviews that show where the riskiest untyped code is.

Team practice

  • Conventions that keep types useful, not decorative.
  • Handover notes and developer guidance.

Options

TypeScript compared with other choices

Suits

Web interfaces and server code that several people maintain.

Trade-off
A setup step, and some learning for developers new to types.

Typical uses

Where TypeScript pays for itself

  1. A web application that several people change

    Shared descriptions of the data keep one person's change from breaking another's screen.

  2. A back end that serves a web and a mobile app

    One set of data descriptions shared by every client, so the app and the site agree.

  3. Integrations with outside services

    Careful handling of data from payment, shipping, and customer-record systems, where surprises are expensive.

  4. A long-lived codebase

    Code that will be maintained for years by people who did not write it.

Common questions

Questions about TypeScript

Does TypeScript make the site faster?

No. It is removed before the code runs. The benefit is fewer mistakes and easier changes, not speed.

Will it slow development down?

A little at the start, and noticeably less later. Changes to shared code become safer, which is where time is usually lost.

Can we mix TypeScript and JavaScript?

Yes. That is how most migrations work, and it lets the move happen alongside normal feature work.

Is it only for front-end code?

No. It is used just as often on servers, including with frameworks such as Next.js.

Have a different question?

Tell us what you are weighing up and we will answer it plainly.

Ask a question

Already a client? Email support@dechytech.com

Technical depth

How we build with TypeScript

What we settle early on TypeScript work: strictness, types at the boundary, and avoiding false confidence, so nothing surprises your team later.

We aim for strict mode on new code. The checker finds more problems, and the cost of turning it on later is higher than starting with it.

Tell us about the codebase

Describe the project, how many people change it, and what breaks most. We will say whether to start in TypeScript or move there in stages.