TypeScript, part 1
Type theory

The course will introduce you to the foundation on which all the magic of TypeScript is built --- with a system of static data type analysis. You will get acquainted with the theory of types and learn how to use type annotation and generic programming in practice, you will be able to manage conditional types.

After completing the course, you will be able to confidently use TypeScript in any projects --- both front-end and back-end.

Required knowledge: JavaScript

Flexible timing: start now and move comfortably

Start for $154

Why learn TypeScript

TypeScript is one of the most popular and sought-after technologies at the moment, as it allows you to write code more efficiently and reliably.

64% of vacancies

middle front-end developer in product companies require knowledge of TypeScript *

90% developers

want to use or learn TypeScript**


TypeScript downloads have increased over the past year***

1.5 times

more popular than React, Vue and Angular combined***

* data on vacancies for developers with more than 1 year of experience, August 2021
** StateofJS study, 2020
*** according to

TypeScript can be used effectively both on its own and in conjunction with all popular front-end frameworks.

TypeScript on the Competence Map of a Front-End Developer

Familiarity with or use of TypeScript is essential for the middle front-end developer in the market.

After completing the course, you will be able to

Understand how TypeScript works internally

Use TypeScript correctly in any projects

Reduce the risk of forgotten defects in the code

Course program

To develop solid static code typing skills, you'll receive 9 hands-on activities covering topics from primitive and struct types to conditional types.

Section 1

Introduction. What is TypeScript for?

Section 2

Type equivalence

Section 3

Union and intersection of types, specialization of types

Section 4

Generic TypeScript Programming

Section 5

Type Manipulation at Design Time

Section 6

What's next?

How is the course going?

The course involves self-study of the material in a comfortable mode for you. You can start learning right now.

The program is divided into modules, each of which allows you to gradually master the skill from simple basics to complex subtleties.

Each module consists of:


Structured information needed to master a part of a skill


Examples of solving typical problems that will allow you to understand how theory turns into real practice

Practical task

For self-consolidation of the received theory. For each task, after completing it, you will receive a step-by-step solution to compare it with your own and make sure that it was completed correctly


For the final fixing of the material. It will allow you to make sure that you have learned everything exactly and you can move on.

To developers from developers

Made for developers who have little time to learn. On each course you will receive:


Links theory to typical tasks in the market. You will have an understanding of where and how to apply the resulting theory.


Built from simple to complex. You can easily immerse yourself in the topic, even if you didn’t know anything about it before.


Up-to-date and updated theory, tested by the market. No "water" - you will receive only the necessary knowledge.


Created around each course. It will help you answer questions and deepen your knowledge.

The community of each course consists of authors, experienced developers, and students who have taken or are taking this course.
The community not only helps in mastering the material, but also constantly makes the course better.

It suits you if:

You want to earn more or change jobs, but you don’t know in which direction to develop.

You want to learn a specific skill but don't know how

You do not want to waste time searching for relevant information on the topic

You need a specific teaching methodology and only the necessary information

You want to make sure that the acquired knowledge is learned in practice

We have experience, research and methodology on our side

An experience

We have been building a relationship with the commercial development market for 9 years. We train beginner developers and see how they become experienced specialists.


Before launching a course, we make sure that it provides a sought-after professional skill.


We communicate with the web developer community and therefore understand how to teach. We minimize the time from studying the theory to solving typical problems.

What the developers say

Start «TypeScript, part 1.
Type theory»