Unlock the full course

You have reached the end of the free trial. Get access to all lessons, challenges, projects & flashcards with a one-time payment that gives you access for 5 years.

Our approach to fair and supportive pricing.

What you will get

What you will learn

This course covers the TypeScript concepts you need when working with web applications. It builds on top of your existing JavaScript knowledge with a unique approach: explaining concepts step by step so you can fully understand how TypeScript works.
The lessons & challenges will guide you through these topics step by step:

  • tsconfig
  • Typed parameters
  • Strict config (no 'any')
  • ESLint
  • Primitive types
  • Union types
  • Type Narrowing
  • Type Alias
  • Array type literal
  • Tuples
  • Literal types
  • Function return type
  • Optional parameters
  • void
  • Callbacks
  • Modules
  • Objects
  • Interfaces
  • OOP
  • Structural type system
  • Substitutability
  • Classes
  • Inheritance
  • Polymorphism
  • unknown
  • Function overload
  • Generics
  • Utility types
  • Records
  • Discriminated unions
  • Intersection types
  • Promises + Fetch
  • DOM interfaces
  • DOM selection
  • DOM Events
  • Ambient Modules
  • Migrating to TypeScript
View all chapters →

Course highlights

Mix-n-match syntax challenges

TypeScript concepts in isolation can be easy to understand. However, when mixed together, it becomes challenging to identify them. That's why the course includes many Mix-n-match challenges where you combine previously learned concepts with new ones.

Book Library — Final Project

Apply everything you've learned by building a Book Library app from scratch using TypeScript. The project covers typed DOM interactions, classes, interfaces, generics, and more.

React + TypeScript video lesson

A dedicated video lesson covering how to use TypeScript with React, so you can confidently apply your TypeScript knowledge in the most popular frontend framework.

Reviews

Through this course, Jad has helped me build the mental models and the foundation that I needed to better understand TypeScript. I can now eliminate those pesky squiggly lines one at a time, while leveraging its powerful type-checking features.

- Mikaël (Student of Learn TypeScript—verified purchase)

This course helps me a lot to organise myself and a nice structure of learning TS is already created for me. I just need to follow the route and do my best to understand. Moreover, it's really easy to understand because Jad provided us with good explanations and immediate practice of learned material.

- Dmytro (Student of Learn TypeScript—verified purchase)

Frequently asked questions

Here are some of the most asked questions. If you have any other question, considercontacting support.

Course content

How much JavaScript experience do I need to have?

You need to be intermediate in JavaScript. You should be familiar with most of the concepts in the JavaScript knowledge map. In general, you should be able to work with arrays, objects, classes, functions, promises, and the DOM.

How much HTML/CSS experience do I need?

You need basic HTML and CSS experience. As long as you can perform some basic DOM operations in JavaScript, that should be enough.

Payment

Is it a one-time payment or subscription?

Yes, it is a one-time payment that gives you access for 5 years.
If you'd like to use the app after those 5 years, you will have to make a new payment. We will not automatically charge your card and there is no automatic renewal.
We believe that you should not have to pay monthly except for Gas, Water & Electricity (and maybe Netflix). This encourages you to take your time while working on the course, rather than rushing it. Note that the payment is only valid for this course.

What happens after my PRO account expires (after 5 years)?

The majority of students will not need to access their accounts past the 5 years mark. After 5 years, your account will be downgraded from PRO. You will have the option to upgrade again. There is no automatic renewal and your card will not be automatically charged.

Can I pay in a different currency?

Yes, you can! You can pay in your own currency so that you don't incur a cost for currency exchange. Contact support if your currency is not available in the dropdown above (subject to availability).
The exchange rates are refreshed on our backend as frequently as every 5 minutes. The latest exchange rate will be used. If you keep the page open for long, you may be seeing an amount based on an outdated exchange rate. You will have to reload the page to get the view the latest price in your currency.

How do you process my payment?

We use Stripe or Paypal to process your payments and your credit card information never touches our servers.

Can I use the account for more than one person?

No, every paid account is meant to be used by one person only. We perform manual and automated checks while guaranteeing privacy.
Your account is tied to your GitHub username.

Do I get access to other courses?

No, other courses on different domains have a different price and PRO membership.

Do you offer a discount for bundles (multiple courses)?

Yes, for courses you haven't purchased yet. You can bundle courses and get a discount. The first bundled course will give you a 10% discount. Every additional course will add a 5% discount.

The bundle discount cannot be combined with other discounts.

Can I gift the course?

Yes, this is possible. Please contact support for more information.

VAT

I am a company registered in the EU. Can I use reverse VAT charge?

Yes, you can! Please note that this has to be done before you pay for the course. You can enter your VAT number by clicking on the EU VAT Reverse Charge toggle. Please note that this is not available if your company is registered in the Netherlands.

How is VAT calculated?

VAT is finalized after you complete the payment because only then we will be able to know whether VAT should be collected or not. In both cases, the price will not change as the VAT is extracted from the amount you pay. You will be able to see whether VAT has been charged or not in your invoice.

Invoicing

Can I get an invoice?

You will automatically receive a (Business to Consumer) invoice after your payment by email. You will have the option to update this invoice with your (company) details within 30 days. Please note that if you require an EU VAT reverse charge invoice, then you should click on the EU VAT Reverse Charge toggle and enter your VAT number before making the purchase.

What are the company details?

The company is registered in the Netherlands. You can find the company details below:

Company name: Jad Joubran B.V.
Chamber of Commerce number: 82283095
VAT Number: NL862410228B01

PRO Account

Will I be able to jump to any chapter once I upgrade?

Not before you solve the previous chapters. The chapters are sequential because the topics build on top of each other. Even when you upgrade to PRO, you will have to go through them one by one. However, you have the option to jump to a specific chapter from the help menu by selecting Course Progress > skip to a chapter or ask support to unlock all chapters so you can freely move around.

Do I get a certificate of completion?

Yes, you can get a signed certificate of completion with your full name once you finish the entire course.

Can I extend my PRO account beyond 5 years?

Unfortunately not, the PRO account is linked to your purchase date and cannot be extended or modified as it's used for accounting purposes.

Where will I be after finishing this course?

You will be able to confidently add TypeScript to any JavaScript project and work in typed codebases. You will understand the type system deeply enough to handle real-world TypeScript in professional settings.

Companies & Universities

Can I get a group discount?

Group discounts are available for groups of 5, 10, 15, 20 and above. Please use the help center to contact us with the approximate size of your group.

I am a university instructor. Is this course suitable for my students?

Absolutely! The course is already being used in conjunction with university material at some universities. Please use the help center to contact us with the approximate number of students.

Curious to know what we shipped recently? Check out our public-facing Trello board.