2026-01-29 16:00:19 +03:00
---
2026-01-29 16:18:06 +03:00
title: Технологии и библиотеки
2026-04-20 06:40:34 +03:00
scope: basics
keywords: [стек, React, TypeScript, Next.js, Mantine, библиотека, зависимость]
when: "Выбор библиотеки или технологии, проверка допустимости зависимости"
2026-01-29 16:00:19 +03:00
---
2026-01-29 16:18:06 +03:00
# Технологии и библиотеки
2026-01-29 16:00:19 +03:00
2026-03-31 15:18:00 +03:00
Этот раздел описывает базовый стек технологий и библиотек, принятый в проекте.
2026-01-29 16:00:19 +03:00
2026-02-01 13:15:00 +03:00
## Что используем
2026-01-29 16:00:19 +03:00
2026-02-01 13:15:00 +03:00
### Стек
2026-03-31 15:18:00 +03:00
- `React` / `TypeScript` — основной стек для UI и приложения.
- `Next.js` — для продуктовых сайтов.
2026-02-01 13:15:00 +03:00
### Архитектура
2026-03-31 15:18:00 +03:00
- `FSD (Feature-Sliced Design)` — структура проекта и границы модулей. Используется кастомизированная версия — подробнее в разделе [Архитектура ](/basics/architecture ).
2026-02-01 13:15:00 +03:00
### UI компоненты
2026-03-31 15:18:00 +03:00
- `Mantine UI` — базовые UI-компоненты.
2026-02-01 13:15:00 +03:00
2026-03-31 15:18:00 +03:00
### Работа с данными (API)
- `@gromlab/api-codegen` — генерация API‑ клие нто в и типов.
- `SWR` — получение, кеширование, ревалидация, дедубликация.
- `SWR (useSWRSubscription)` — сокеты, реалтайм подписки.
2026-02-01 13:15:00 +03:00
### Store
2026-03-31 15:18:00 +03:00
- `Zustand` — глобальное состояние.
2026-02-01 13:15:00 +03:00
### Локализация
2026-03-31 15:18:00 +03:00
- `i18next (i18n)` — локализация всех пользовательских текстов.
2026-02-01 13:15:00 +03:00
### Тестирование
2026-03-31 15:18:00 +03:00
- `Vitest` — тестирование.
2026-02-01 13:15:00 +03:00
### Стили
2026-03-31 15:18:00 +03:00
- `PostCSS Modules` — изоляция стилей.
- `Mobile First` — подход к адаптивной верстке.
- `clsx` — конкатенация CSS‑ кла с с о в.
2026-02-01 13:15:00 +03:00
### Генерация
2026-03-31 15:18:00 +03:00
- `@gromlab/create` — шаблонизатор для создания слоёв и других файлов из шаблонов.