phone_picture

Цель курса

Научиться создавать на Next.js полноценные fullstack-приложения. Вместо использования внешнего API, который был чёрным ящиком, мы сами строим не только frontend, но и backend, то есть контролируем все слои приложения в одном репозитории.

Курс является прямым продолжением Next.js Frontend. На нём изучается то, что оставалось за границей чистого frontend-подхода: server actions, работа с ORM, сессии и OAuth, загрузка файлов, отправка email, деплой приложения вместе с базой данных и многое другое.

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

4 сентября, 19:30 — урок 1

  • Основы архитектуры fullstack-приложения
  • Route Handlers: создание собственного API
  • Обработка запросов, статусы и ошибки
  • Варианты валидации данных на сервере
  • Node.js и Edge runtime: что где выполняется
  • Организация серверного кода в проекте

8 сентября, 19:30 — урок 2

  • Подключение SQLite к проекту
  • Знакомство с Drizzle ORM и её настройка
  • Продумывание схемы для БД
  • Миграции и seed-данные
  • Связи между таблицами и типичный CRUD
  • Обработка ошибок БД и ORM

11 сентября, 19:30 — урок 3

  • Запросы к БД из серверных компонентов
  • Паттерны организации слоя данных
  • Кеширование данных в Next.js
  • Использование revalidatePath и revalidateTag
  • Инвалидация кеша при мутациях
  • Стриминг и Suspense: ожидание vs рендеринг по частям

15 сентября, 19:30 — урок 4

  • Server actions: мутации без API-слоя
  • Работа с формами и useActionState
  • Серверная валидация и вывод ошибок
  • Стратегия optimistic updates
  • Server actions и основы безопасности
  • Actions vs route handlers: критерии выбора

18 сентября, 19:30 — урок 5

  • Основы авторизации: сессии и токены
  • JWT vs сессии в базе данных
  • Установка и настройка better-auth
  • Интеграция с Drizzle ORM: адаптер и схема таблиц
  • Работа с сессией на клиенте и сервере
  • Реализация регистрации, login и logout

22 сентября, 19:30 — урок 6

  • OAuth: авторизация через внешние сервисы
  • Защита маршрутов: proxy.ts (бывший middleware)
  • Защита server actions и route handlers
  • Получение пользователя в серверных компонентах
  • Роли пользователей и права доступа
  • Закрытые разделы и админ-панель

25 сентября, 19:30 — урок 7

  • Загрузка и хранение файлов
  • Отправка email из приложения
  • Письма с токенами: подтверждение email и сброс пароля
  • Организация вебхуков для внешних сервисов
  • Периодические и фоновые задачи
  • .env и приватность: граница NEXT_PUBLIC_

29 сентября, 19:30 — урок 8

  • Rate limiter: защита от брутфорса и спама
  • CSRF, XSS и другие уязвимости
  • Деплой на VDS вместе с базой данных
  • Миграции и бэкапы в production
  • Доработка учебного проекта
  • Подведение итогов курса

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

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

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

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

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

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

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

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

8 онлайн уроков

По вторникам и пятницам с 19:30 МСК. Продолжительность каждого занятия около двух часов. На уроках разбираются домашние работы учеников и новый материал.

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

Если вы по какой-то причине не смогли посетить урок, не переживайте, спустя пару часов после окончания занятия он доступен в записи в хорошем качестве :)

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

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

Домашние задания

После каждого урока выдаётся домашнее задание, которое нужно сделать для закрепления пройденного материала. Плохие оценки не ставим – только конструктивные комментарии :)

Обратную связь от преподавателя

Домашнее задание каждого ученика разбирается на уроке. Поэтому максимальный размер группы ограничен, чтобы каждый мог получить комментарии по своей работе.

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

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

Обзор курса

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

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

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

В нём подробно рассказывается об отличиях данной программы от курса Next.js для frontend.

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

Скидка на раннюю запись

21 000 руб. 14 700 руб.

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

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

Какой начальный уровень знаний необходим

Уверенное владение Next.js в объёме курса Next.js Frontend: роутинг, SSR, серверные и клиентские компоненты, работа с внешним API.

Обязательно ли прохождение курса Next.js Frontend

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

Нужен ли опыт в backend и Node.js

Понадобится понимание основ Node.js и механики построения хотя бы простейшего backend. Глубокие знания не нужны, общие моменты и специфику Next.js разберём в рамках курса.

Какие база данных и ORM используются

SQLite, так как его не нужно устанавливать и настраивать отдельно. А у Drizzle ORM лучшая поддержка TypeScript. Подходы универсальны и впоследствии легко переносятся на PostgreSQL и другие СУБД.

Будут ли записи уроков

Да, конечно. Видеозапись и материалы выкладываются в течение нескольких часов после окончания урока.

Будут ли ещё потоки этого курса?

Будут, но, точно, не скоро. Сложные курсы стартуют один-два раза в год.