Перейти к содержанию

Веб-приложения: данные, синхронизация и интерактивность

Эта партия продолжает курсы от веб-приложения к продукту: 100 новых уроков восьми курсов. Каждый курс развивает общий учебный пример и включает последовательное оглавление, переходы между уроками и полный архив исходников.

Все материалы опубликованы. Учебные приложения, зависимости, тесты и измерения не запускались. Примеры написаны по первичной документации; описанные реакции и результаты ожидаемые. Техническая проверка учебных приложений остаётся отдельным этапом.

Восемь курсов

Курс Уроков Общая задача
Angular: кабинет заявок 16 Компоненты, signals, DI, Router, формы, HttpClient, RxJS и состояния интерфейса.
NestJS: API заявок 14 Модули, providers, DTO, guards, PostgreSQL, транзакции, конфликты и OpenAPI.
OpenSearch: поиск по библиотеке 14 Документы, mapping, Bulk, технические термины, запросы, фильтры, facets и reindex.
RabbitMQ: доставка событий 12 Очереди, маршруты, ack, confirms, retries, DLQ, идемпотентность и outbox.
Local-first: заметки и синхронизация 14 IndexedDB, атомарная очередь, стабильные операции, revisions, cursor, конфликты и удаление.
Argo CD: локальный GitOps релиз 10 Git источник, AppProject, manual sync, drift, Kustomize, продвижение и откат.
SVG и Canvas: графический редактор 10 Модель фигур, указатель, камера, слои, история, JSON и экспорт SVG/PNG.
Web Audio: локальная аудиомастерская 10 Локальный звук, кадры, граф, волна, фрагменты, переходы, OfflineAudioContext и WAV.

Учебные маршруты

Кабинет и сервер: Angular → NestJS. Оба курса используют договор «Диспетчера». Angular можно изучать независимо с fixture API; подключение серверного режима описано в исходниках. Nest включает собственные SQL и HTTP-примеры.

Данные и доставка: PostgreSQL → OpenSearch и RabbitMQ. Поиск развивает библиотеку Markdown, а очередь — самостоятельный проект доставки событий. Это связанные знания, не автоматически соединённое приложение.

Работа при недоступной сети: Local-first Блокнот — от атомарного локального сохранения до явной синхронизации и конфликтов. Курс посвящён изменяемым данным; кеш оболочки и новый офлайн-вход не реализованы.

Сопровождение релиза: Docker → Kubernetes → Argo CD. Последняя серия продолжает «Площадку», но включает самостоятельный конечный комплект приложения и локального Git источника.

Браузерные инструменты: редактор схем и аудиомастерская — две отдельные практики нативных API. Первая создаёт JSON/SVG/PNG, вторая обрабатывает локальный звуковой фрагмент и записывает WAV.

Маршруты связывают предпосылки. Конкретные версии, границы интеграции и непроверенные части перечислены в оглавлениях и README. Архивы содержат полные итоговые исходники, а не работающие внешние службы или выполненные снимки всех шагов.

Все 100 уроков

Angular 22: кабинет заявок «Диспетчер»

  1. Компонент Angular и модель заявки
  2. Signals и изменение локального состояния
  3. Computed и отбор заявок
  4. Входные данные компонента строки
  5. DI и общая учебная сессия
  6. Router и адрес отдельной заявки
  7. Ленивые страницы и границы загрузки
  8. Reactive forms и независимый черновик
  9. Проверка формы и понятные сообщения
  10. HttpClient и локальный fixture API
  11. RxJS и актуальность ответа списка
  12. Фильтры списка в URL
  13. Состояния страницы и доступные ошибки
  14. PATCH и конфликт версии редактора
  15. Учебная роль и границы авторизации UI
  16. Передача Angular-кабинета и подключение Nest

NestJS 12: API заявок «Диспетчер»

  1. NestJS и договор API диспетчера
  2. Модули Nest и область доступности provider
  3. Providers и разделение HTTP, правил и SQL
  4. Контроллер заявок и HTTP-маршруты
  5. DTO и проверка тела PATCH
  6. Query DTO и буквальный поиск заявок
  7. Guards и серверное право изменения
  8. Interceptor и идентификатор запроса
  9. PostgreSQL и жизненный цикл пула
  10. Репозиторий и параметризованные запросы
  11. Транзакция изменения и конфликт version
  12. Фильтр исключений и единый ответ отказа
  13. OpenAPI и согласованная документация API
  14. Конфигурация и передача NestJS API

Индекс: OpenSearch для Markdown-библиотеки

  1. Поисковый индекс как отдельная копия библиотеки
  2. Подготовка Markdown для поисковой записи
  3. Явные mappings для текста и точных значений
  4. Русский анализатор и технические обозначения
  5. Пакетный импорт и ошибки отдельных документов
  6. Поиск по заголовку и основному тексту
  7. Фильтры рубрики, метки и видимости
  8. Фасеты и область подсчёта групп
  9. Подсветка совпадений без исполнения HTML
  10. Управление ранжированием через контрольные запросы
  11. Изменения и удаления через манифест импорта
  12. Перенос схемы и атомарное переключение aliases
  13. Публичный gateway и пределы поискового запроса
  14. Сопровождение и передача проекта Индекс

Доставка: события публикации через RabbitMQ

  1. Событие публикации и границы доставки
  2. Соединение, канал и долговечная топология
  3. Издатель сообщения и свойства конверта
  4. Exchanges и независимые маршруты получателей
  5. Подтверждение после фиксации эффекта
  6. Publisher confirms и неизвестный исход публикации
  7. Отложенный повтор для одного обработчика
  8. Очередь отказов и осознанный повтор
  9. Идемпотентный эффект и квитанция inbox
  10. Восстановление соединения и порядок редакций
  11. API публикации и transactional outbox
  12. Наблюдение и передача проекта Доставка

Local-first заметки и явная синхронизация

  1. Локальная запись и границы синхронизации
  2. Схема IndexedDB для записей и очереди
  3. Атомарное сохранение заметки и outbox
  4. Стабильный ID операции и неизменяемый снимок
  5. Серверный revision и журнал изменений
  6. Отправка outbox и подтверждение снимка
  7. Получение изменений и атомарный cursor
  8. Сравнение версий и ручное объединение
  9. Удаление заметки и tombstone
  10. Повторы, отключение сети и прогресс
  11. Несколько вкладок и несколько устройств
  12. Квоты браузера и экспорт заметок
  13. Аккаунт, локальная база и прекращение сессии
  14. Передача Блокнота и сценарии восстановления

Argo CD: локальный GitOps релиз

  1. Git как источник желаемого состояния
  2. Локальный bootstrap и читаемый Git источник
  3. Application и границы AppProject
  4. Первый manual sync и состояние приложения
  5. Diff и drift после ручного изменения
  6. Kustomize base и окружения dev/stage
  7. Продвижение релиза из dev в stage
  8. Rollback revision и исправление Git
  9. Prune, полномочия и ссылки на Secret
  10. Передача GitOps проекта и восстановление источника

SVG и Canvas: графический редактор

  1. Документ, фигура и координаты редактора
  2. SVG из данных, без HTML-строк
  3. Координаты указателя и попадание в фигуру
  4. Перемещение и команды изменения
  5. Масштаб и перемещение камеры
  6. Выделение, порядок и свойства фигур
  7. Отмена действий и границы операции
  8. Сохранение документа и проверка импорта
  9. Экспорт изображения через Canvas
  10. Доступное управление и передача редактора

Web Audio: локальная аудиомастерская

  1. Звуковой файл, семпл и контракт редактора
  2. Декодирование локального файла
  3. AudioContext и управляемое воспроизведение
  4. Звуковой граф и громкость без скачка
  5. Волна и временная шкала
  6. Выделение и воспроизведение фрагмента
  7. Плавное начало и окончание фрагмента
  8. OfflineAudioContext и результат обработки
  9. WAV PCM16: от семплов к файлу
  10. Ограничения, ошибки и передача аудиоредактора

Все курсы.