01. HTML
Скелет веба. Научись создавать семантическую разметку, формы, таблицы, SEO-теги. Без этого никуда.
- Семантические теги: header, main, section, article
- Формы и валидация
- Доступность (a11y) — aria-метки
- SEO-разметка, Open Graph
102. CSS
Красота и отзывчивость. Освой Flex, Grid, анимации и препроцессоры.
- Flexbox / Grid — полная верстка
- Адаптивность, медиазапросы
- Анимации, transition, keyframes
- SCSS / модули / styled components
203. JavaScript
Мозг фронтенда. Переменные, циклы, функции, события, асинхронность.
- ES6+: let, const, стрелки, деструктуризация
- Промисы, async/await
- DOM, события, обработчики
- LocalStorage, fetch, работа с API
304. React
Библиотека для интерфейсов. Начни с компонентов и JSX.
- Компоненты: функциональные vs классовые
- JSX, props, children
- Условный рендеринг, списки
- Жизненный цикл, useEffect
405. React Hooks
Современный React без классов. Хуки — твои лучшие друзья.
- useState, useEffect, useContext
- useReducer, useMemo, useCallback
- useRef, useLayoutEffect
- Кастомные хуки — переиспользование логики
506. TypeScript
Типизация спасает от багов. Строгость и предсказуемость.
- Интерфейсы, типы, enums
- Generics — дженерики
- Типизация пропсов React
- Utility Types: Pick, Omit, Partial
607. Data Structures
Массивы, объекты, стеки, очереди. Для собесов и архитектуры.
- Массивы: map, filter, reduce
- Объекты и хеш-таблицы
- Стек, очередь, связные списки
- Деревья, графы — базово
708. Next.js
Фреймворк на React. SSR, SSG, файловая маршрутизация.
- Pages & App Router
- SSR, SSG, ISR
- API routes
- Оптимизация изображений и шрифтов
809. Next Router
Навигация в Next. Динамические роуты, middleware, layout.
- Динамические маршруты [id]
- useRouter, Link
- Middleware для редиректов
- Группировка и layout
910. Компоненты
Архитектура. Разделяй и властвуй, переиспользуй.
- Атомарный дизайн (атомы, молекулы)
- Композиция vs наследование
- Render props, children as function
- Выделение логики в хуки
1011. Redux Toolkit
Глобальный стейт без боли. Слайсы, thunk, devtools.
- configureStore, createSlice
- Actions, reducers, immer
- createAsyncThunk
- Devtools, middleware
1112. RTK Query
Работа с API в Redux. Кэширование, инвалидация, мутации.
- createApi, fetchBaseQuery
- Хуки useQuery, useMutation
- Автоматическое кэширование
- Инвалидация тегов
1213. AJAX / NestJS
HTTP-запросы, REST, бэкенд-контекст. Понимай, с чем работаешь.
- fetch, axios
- REST-принципы
- NestJS: контроллеры, провайдеры
- CORS, заголовки
1314. WebSocket
Реалтайм. Чаты, уведомления, live-обновления.
- WebSocket-соединение
- socket.io
- Обработка событий
- Комнаты, broadcast
1415. Обработка ошибок
Не дай приложению упасть. try/catch, ErrorBoundary.
- try/catch в асинхронных операциях
- Error Boundary в React
- HTTP-ошибки и статусы
- Логирование ошибок
1516. Переиспользуемые компоненты
Напиши один раз — используй везде. Гибкость и абстракция.
- Составные компоненты (compound)
- HOC (higher-order components)
- Полиморфные компоненты
- Слоты и контекст
1617. Правильный UX
Забота о пользователе. Состояния загрузки, скелетоны, фокусы.
- Скелетоны, лоадеры
- Состояния ошибок
- Фокус клавиатуры, tabindex
- Микроанимации
1718. React Hook Form
Формы без боли. Производительность, валидация.
- useForm, register, handleSubmit
- Валидация (Yup, Zod)
- Контролируемые vs неконтролируемые
- Массивы полей
1819. Code Style
Код, который не стыдно показать. Линтеры, форматеры.
- ESLint, Prettier
- Husky, lint-staged
- Соглашения в команде
- Чистый код (Роберт Мартин)
1920. Сборщики и импорты
Webpack, Vite. Алиасы, бандлы, окружения.
- Vite / Webpack config
- Алиасы (@/components)
- Разделение чанков
- Переменные окружения
2021. Настройка сложных приложений
Архитектура, монорепа, env, конфиги.
- Feature-Sliced Design
- Монорепозитории (Turborepo)
- Настройка CI/CD
- Мультиокружение
2122. Оптимизация
Скорость загрузки, рендеринга. Lighthouse 100.
- Code splitting, lazy loading
- Мемоизация (memo, useMemo)
- Оптимизация изображений
- Аудит Lighthouse
2223. Тестирование (Vitest)
Уверенность в коде. Юниты, компоненты, e2e.
- Настройка Vitest
- describe, it, expect
- React Testing Library
- Моки и снепшоты
23