--- title: Технологии и библиотеки scope: basics keywords: [стек, React, TypeScript, Next.js, Mantine, библиотека, зависимость] when: "Выбор библиотеки или технологии, проверка допустимости зависимости" --- # Технологии и библиотеки Этот раздел описывает базовый стек технологий и библиотек, принятый в проекте. ## Что используем ### Стек - `React` / `TypeScript` — основной стек для UI и приложения. - `Next.js` — для продуктовых сайтов. ### Архитектура - `SLM Design (Scoped Layered Module Design)` — модульная архитектура: слои, модули, направление зависимостей. Подробнее в разделе [Архитектура](/basics/architecture). ### UI компоненты - `Mantine UI` — базовые UI-компоненты. ### Работа с данными (API) - `@gromlab/api-codegen` — генерация API‑клиентов и типов. - `SWR` — получение, кеширование, ревалидация, дедубликация. - `SWR (useSWRSubscription)` — сокеты, реалтайм подписки. ### Store - `Zustand` — глобальное состояние. ### Локализация - `i18next (i18n)` — локализация всех пользовательских текстов. ### Тестирование - `Vitest` — тестирование. ### Стили - `PostCSS Modules` — изоляция стилей. - `Mobile First` — подход к адаптивной верстке. - `clsx` — конкатенация CSS‑классов. ### Генерация - `@gromlab/create` — шаблонизатор для создания слоёв и других файлов из шаблонов.