inflearn logo

Seriously! TypeScript — From Type Design to Type-Level Programming

Do you add type annotations, yet do invalid data still only blow up at runtime? This course, based on TypeScript 7, covers everything from designing domains so invalid states cannot compile in the first place to writing programs that run inside the type checker. You’ll build five CLIs yourself, and by the end, complete a compiler that compiles your own small language into JavaScript.

2 learners are taking this course

Level Basic

Course period Unlimited

JavaScript
JavaScript
Functional Programming
Functional Programming
TypeScript
TypeScript
Node.js
Node.js
JavaScript
JavaScript
Functional Programming
Functional Programming
TypeScript
TypeScript
Node.js
Node.js

What you will gain after the course

  • Discriminated unions, branded types, and exhaustiveness checks let you model domains that catch invalid states at compile time.

  • By representing side effects as data and separating the structure so they are interpreted in a single layer, you can design applications that are easier to test.

  • You can implement and debug/test type-level Map, Filter, and Reduce using conditional types, infer, tuple recursion, and template literal types.

  • You can design a CLI that enforces the call order and protocol through types, infers query results, and checks the connections between steps in an image-processing pipeline.

  • Complete tinylang, a compiler for a small language featuring a lexer, parser, type checker, and code generator.

  • Build five independently deployable CLIs yourself: envcheck, ledger, dbq, imgfx, and tinylang.

Recommended for
these people

Who is this course right for?

  • A developer who uses TypeScript but bypasses compilation errors with `any` and `as`, only to discover bugs at runtime

  • A developer who wants to learn how to understand and design complex generics and conditional types themselves

  • A developer who wants to enforce the team’s rules and call order through compile errors instead of comments

  • Those familiar with JavaScript who want to explore type systems in depth as a programming language.

Need to know before starting?

  • Those who have taken the Inflearn “Real! JavaScript” course

  • Understanding JavaScript Runtime Behavior: Closures, Prototypes, `this`, Asynchrony, Symbols, Iterators and Generators, Modules

  • Experience running commands in the terminal (hands-on practice will be conducted on macOS)

Hello
This is codingmax

Career Verified

768

Learners

50

Reviews

18

Answers

4.9

Rating

6

Courses

Hello. I run HyperStep, an educational content company, and create content that explains mathematics and programming in an easy and intuitive way.

Current) CEO of HyperStep, an educational content company
Over 20 years of software development experience

Ex-Coupang
Ex-Hyperconnect
Ex-Kakao
Ex-Kakao Entertainment
Ex-Polaris Office (Infraware)

 

CodingMax-CodingMax
📺https://www.youtube.com/@coding-max
📘https://www.codingmax.net

More

Curriculum

All

248 lectures ∙ (57hr 55min)

    Published: 
    Last updated: 

    Reviews

    Not enough reviews.
    Please write a valuable review that helps everyone!

    codingmax's other courses

    Check out other courses by the instructor!

    Similar courses

    Explore other courses in the same field!

    Limited time deal

    $38.50

    50%

    $77.00