S.Gromov 7382499886 refactor: привести проект к стайлгайду
- Убран FC из всех шаблонов и компонентов
- Заменён interface на type, .interface.ts на .type.ts
- Добавлен паттерн Params/Props/RootAttrs в типы
- Деструктуризация пропсов перенесена в тело компонента
- Добавлены styles/ и types/ для feature, entity, widget, screen
- Добавлен расширенный JSDoc-шаблон с назначением и сценариями
- Исправлен баг в index.ts шаблона component
- Добавлены .editorconfig, .env.example
- Добавлен organizeImports.biome в .vscode/settings.json
- Исправлен .gitignore для .env.example
- Переписан README под проект-шаблон
- Удалён CLAUDE.md
2026-04-02 17:01:22 +03:00

Next.js Template

Шаблон проекта на Next.js, построенный по стайлгайду.

Стек

  • Next.js 16 — фреймворк
  • React 19 / TypeScript 5 — UI и типизация
  • Mantine UI 8 — компоненты
  • Zustand 5 — глобальное состояние
  • SWR 2 — получение данных
  • PostCSS Modules — стили
  • Biome — линтер и форматтер
  • clsx — конкатенация CSS-классов

Архитектура

Проект использует кастомизированный FSD (Feature-Sliced Design):

src/
├── app/        # Роутинг Next.js, провайдеры, глобальные стили
├── screens/    # Собранные страницы (UI)
├── layouts/    # Каркасы и шаблоны страниц
├── widgets/    # Крупные самостоятельные блоки интерфейса
├── features/   # Пользовательские сценарии
├── entities/   # Бизнес-сущности
└── shared/     # Переиспользуемый код (UI, утилиты, типы)

Зависимости идут строго сверху вниз: app -> screens -> layouts -> widgets -> features -> entities -> shared.

Быстрый старт

npx tiged git@gromlab.ru:templates/nextjs.git my-app
cd my-app
npm install
npm run dev

Генерация кода

Модули создаются из шаблонов .templates/:

npx @gromlab/create component button src/shared/ui
npx @gromlab/create feature auth src/features
npx @gromlab/create widget header src/widgets
npx @gromlab/create entity user src/entities
npx @gromlab/create layout admin src/layouts
npx @gromlab/create screen profile src/screens
npx @gromlab/create store auth src/shared/model

Скрипты

Команда Описание
npm run dev Запуск dev-сервера
npm run build Сборка для продакшена
npm run start Запуск продакшен-сервера
npm run lint Проверка кода (Biome)
npm run format Форматирование кода (Biome)
Description
No description provided
Readme 572 KiB
Languages
TypeScript 79.4%
CSS 16.2%
JavaScript 4.4%