Курс по NestJS для разработки серверных приложений с REST API, TypeORM и Prisma, middleware, guards, interceptors, Swagger и двумя практическими проектами для закрепления навыков.
В этом курсе мы научимся разрабатывать серверные приложения с использованием Nest.js. Разберем создание REST API, работу с базами данных через TypeORM и Prisma ORM, настройку валидации с помощью декораторов, а также использование динамичных модулей и Http Module. Мы также освоим работу с middleware, guards, interceptors и filters, а также настроим Swagger. В конце курса реализуем практический проект — сервис по сокращению ссылок. Дополнительно рассмотрим основы GraphQL и WebSocket.
Знакомство с Nest.js и его философией. Поговорим о преимуществах фреймворка, его архитектуре и стиле разработки. Создадим первое приложение и разберём структуру проекта.
Разбираем внутреннюю структуру Nest.js, роль модулей, контроллеров и сервисов. Понимание архитектуры поможет правильно разделять ответственность между компонентами.
Изучаем декораторы для контроллеров, методов и параметров. Создаём сущности и настраиваем базовый REST API.
Настройка DTO и валидация входящих данных через декораторы. Рассматриваем обработку ошибок и безопасное API.
Подробно разбираем ключевые декораторы фреймворка: Module, Controller, Injectable, Param, Body и другие. Понимаем, как они управляют структурой и поведением приложения.
Интеграция TypeORM, создание сущностей, репозиториев и связей между таблицами.
Настройка Prisma ORM в Nest.js: генерация моделей, взаимодействие с базой и выполнение CRUD-операций.
Настройка middleware для обработки запросов и pipes для трансформации и валидации данных перед попаданием в контроллеры.
Рассматриваем защиту и управление доступом в приложении через guards, обработку и модификацию запросов с помощью interceptors, а также обработку ошибок через filters.
Настройка Swagger для документации API. Создание OpenAPI спецификаций, чтобы тестировать эндпоинты и делиться документацией.
Реализация безопасного входа через JWT. Создаем сервис авторизации, обсуждаем хранение токенов и защиту эндпоинтов.
Основы GraphQL в Nest.js: создание схем, резолверов и запросов. Настройка интеграции с существующим REST API.
Настройка WebSocket в Nest.js для real-time взаимодействия. Примеры подписок и отправки сообщений в реальном времени.
Unit и E2E тесты в Nest.js. Настройка тестовой среды и примеры проверки контроллеров и сервисов.
Работа с HttpModule на примере Spotify API. Настройка запросов к внешним сервисам и обработка ответов.
Создание и использование динамических модулей в Nest.js для более гибкой архитектуры и переиспользования кода.
Загрузка и обработка файлов в приложении. Настройка CORS для безопасного взаимодействия фронтенда с бэкендом.
Планирование задач через Cron, настройка версионирования API и логирование событий приложения. Полезные инструменты для продакшн-сервиса.
Реализуем полный практический проект - сервис для сокращения ссылок, объединяющий все изученные концепции Nest.js.
Отслеживайте прогресс, проходите уроки в удобном темпе и получайте максимум от курса
Начать просмотр