phone_picture

Цель курса

Освоить удобный и современный подход к разработке на Node и TypeScript, создать учебный проект с простой и грамотной архитектурой на основе экосистемы Fastify.

За счёт применения подхода documentation first мы сможем гарантировать наличие одного источника истины для валидации, сериализации и типизации, что сделает систему очень удобной.

Программа курса

урок 1

  • NodeJS и TypeScript
  • Ограничения native TypeScript в Node
  • Настройка рабочего окружения
  • Начало работы с Fastify
  • Базовые настройки и простой роутинг
  • Обзор популярных плагинов

урок 2

  • Знакомство с Ajv-валидатором
  • Настройка Ajv под новшества OpenApi
  • Различия OpenApi и JsonSchema
  • Версии JsonSchema и совместимость с OpenApi
  • Вывод typescript типов из JsonSchema
  • Fastify и TypeProvider

урок 3

  • Погружение в Fastify
  • Middleware, hooks и обработка ошибок
  • Основы валидации и сериализации
  • Подключение Swagger и Swagger UI
  • Примеры создания своих плагинов
  • Практика в рамках простой архитектуры

урок 4

  • Начало работа с БД
  • Mysql vs Sqlite
  • Выбор ORM в зависимости от проекта
  • Начало работы Drizzle ORM
  • ORM как Query Builder
  • Стопроцентная типизация запросов

урок 5

  • Углубление в Drizzle ORM
  • Работы с Drizzle Kit
  • Схемы и миграции
  • Изучение типичных запросов
  • Связи между сущностями
  • Работа с транзакциями

урок 6

  • Создание архитектурной обёртки
  • Идеи и реализация сервисного слоя
  • Fastify и dependency injection
  • Простой DI глобальных сервисов
  • Идеи DI в request scope
  • AsyncLocalStorage и fastify-request-context

урок 7

  • Тренировка в рамках получившегося стека
  • Кастомизация ошибок валидации
  • Асинхронная валидация: unique, exists и т.п.
  • Пользователи и авторизация
  • Access и Refresh токены

урок 8

  • Философия подхода documentation first
  • Знакомство с TypeSpec
  • Генерация и переиспользование JSON-схем
  • Простое развёртывание на сервера
  • Подведение итогов

Преподаватель курса

Дмитрий Лаврик

Профессиональный веб-разработчик

Опыт работы в сфере разработки сайтов более 15 лет. Ориентируется во всех вопросах создания сайтов, от вёрстки до backend-а.

Опытный преподаватель

Начиная с 2011 года, под его руководством тысячи учеников прошли путь от новичков до успешных веб-программистов. Если вы ещё не знакомы с Дмитрием, рекомендуем заглянуть на его youtube-канал, где вы найдете много полезных видео и сможете узнать стиль преподавания Дмитрия.

Дмитрий Лаврик

Что вы получите

Видеозаписи всех уроков

В хорошем качестве с возможностью скачать видео. Продолжительность каждого занятия около двух часов. На уроках разбираются домашние работы учеников и новый материал.

Материалы и исходники

Все примеры, которые мы рассматриваем на уроках, вы получаете в архиве. Таким образом, даже не написав ни строчки кода, вы получаете набор готовых решений, сделанных на уроке.

Доступ в закрытую группу

Во время прохождения курса и после его завершения участники тусуются в рамках закрытой площадки, где помогают друг другу, а также задают вопросы преподавателю и получают ответы на них.

Обзор курса

Внимание! Для прохождения данного курса пригодятся базовые знания в node и typescript.

Если вы хотите подробнее ознакомиться с идеями курса,

посмотрите видео, расположенное рядом

Помимо идей и программы курса в нём подробно рассматриваются преимущества выбранного стека технологий.

Запись на курс

Доступно в формате видеозаписей

со свежего потока (март 2026)

21 000 руб. 10 500 руб.

 
Способы оплаты

Часто задаваемые вопросы

Какие начальные знания необходимы

Понимание основ Node и TypeScript, при этом сложный TS необязателен – жуткие типы изобретать не придётся. Будут полезными и знания основ SQL.

Нужно ли сначала проходить Node Level 1

Желательно. Но если вы ориентируетесь в тех темах, которые прописаны в программе первого уровня, то не обязательно.

Почему выбираем Fastify + Ajv

Это объективно лучший выбор. Для обучения уж точно. Docs first, валидация и сериализация на основе единого источника истины – это очень концептуально и удобно. Если не верите, посмотрите дополнительный ролик.

Почему выбираем Drizzle ORM

Она настолько же крутая в плане TypeScript, как и Prisma, порой даёт выигрыш в производительности, а главное, не генерирует файл с типами на тысячи строк, которые могут подвесить IDE.

В каком направлении развиваться дальше

Данный курс учит основным темам концептуально правильного создания backend на node. Дальше есть масса путей развития: микросервисы на fastify, монолиты на Nest, либо вообще fullstack на Next.

Это идеальный подход или можно ещё лучше

Всегда можно сделать лучше :) Например, на курсах "TypeScript уровень 2" и "Разумный вайбкодинг" мы сделали opensource-пакет nestbox-core, который в весь этот стек добавляет декларативность уровня NestJS.