S.Gromov bf1781f143
All checks were successful
CI/CD Pipeline / docker (push) Successful in 45s
CI/CD Pipeline / deploy (push) Successful in 7s
docs: переработать архитектуру и прикладные разделы компонента и модуля
- обновлена каноническая спецификация SLM Design из slm-design.gromlab.ru
- файлы архитектуры перенесены из reference/ в basics/architecture/
- добавлена предупреждающая плашка о локальной копии архитектуры
- infrastructure/ переименован в infra/ по канону спецификации
- прикладной раздел «Компонент» переписан: определение заменено ссылкой на архитектуру, добавлен пример UserStatus с типами, стилями и JSDoc
- прикладной раздел «Модуль» переписан: показаны три типа модулей (UI, бизнес, инфраструктурный), добавлен пример фабрики бизнес-модуля
- добавлен запрет ручного создания компонентов: только через кодогенератор
- обновлён раздел типизации: возвращаемый тип React-компонентов не указывается
- обновлён шаблон компонента в templates-create: суффикс -props.type.ts
- обновлены ссылки в page-level, project-structure, aliases
- сгенерированы llms.txt, llms-full.txt, README и публичные копии
2026-05-03 04:22:26 +03:00
2025-07-25 00:11:30 +03:00
2026-04-27 10:12:30 +03:00

NextJS Style Guide

Стандарты разработки фронтенд-приложений на Next.js и TypeScript.

Сайт: https://nextjs-style-guide.gromlab.ru

Использование

Для AI-агентов:

  • llms.txt — Карта разделов, оглавление со ссылками на разделы.
  • llms-full.txt — Вся документация одним файлом.

Для проекта:

  • nextjs-style-guide.zipНабор Markdown-файлов для распаковки в ./ai/nextjs-style-guide/ или другую папку проекта.

Структура документации

Подсказки

Подсказки — короткие ответы на типовые вопросы и решения для спорных ситуаций.

Базовые правила

Каким должен быть код — стандарты, не привязанные к конкретной технологии.

Раздел Отвечает на вопрос
Технологии и библиотеки Какой стек используем?
Именование Как называть файлы, переменные, компоненты, хуки?
SLM Design Что такое SLM и зачем она нужна?
Архитектура: Слои Какие слои есть и как между ними устроены зависимости?
Архитектура: Модули Что такое модуль и как он устроен?
Архитектура: Сегменты Какие сегменты есть внутри модуля?
Стиль кода Как оформлять код: отступы, кавычки, импорты, early return?
Документирование Как писать JSDoc: что документировать, а что нет?
Типизация Как типизировать: type vs interface, any/unknown?

Создание проекта

Как начать новый проект — варианты установки и эталонный набор инструментов.

Раздел Отвечает на вопрос
Создание проекта из шаблона Как начать проект из готового шаблона?
Создание проекта вручную Как поднять проект с нуля без шаблона?
Чистая установка Next.js Как поставить голый Next.js под дальнейшую сборку?

Настройка

Как сконфигурировать проект — пошаговая настройка инструментов и инфраструктуры.

Раздел Отвечает на вопрос
Алиасы импортов Как настроить алиасы импортов?
Biome Как настроить линтер и форматтер?
PostCSS Какие плагины PostCSS нужны и как их настроить?
Стили Как подключить базовые стили и токены?
SVG-спрайты Как подключить генерацию SVG-спрайтов?
Шаблоны генерации Как подключить шаблоны для кодогенерации?
VS Code Как настроить редактор для проекта?

Использование

Как это устроено и как этим пользоваться — структура, примеры и правила для конкретных областей.

Раздел Отвечает на вопрос
Структура проекта Как организованы папки и файлы по SLM?
Компоненты Как устроен компонент: файлы, пропсы, clsx?
Файлы роутинга Как описывать layout, page, loading, error, not-found?
Шаблоны и генерация кода Как работают шаблоны, синтаксис и инструменты генерации?
Стили Как писать CSS: вложенность, медиа, токены?
SVG-спрайты Как использовать SVG-спрайты в коде?
Изображения (не заполнен)
Видео (не заполнен)
Stores (не заполнен)
Хуки (не заполнен)
Шрифты (не заполнен)
Локализация (не заполнен)

Данные

Как работать с источниками данных — REST, realtime и потребление в компонентах.

Раздел Отвечает на вопрос
Источники данных Как устроена работа с данными в проекте?
REST: Автоматическая генерация Как сгенерировать REST-клиент автоматически из OpenAPI?
REST: Ручное создание Как написать REST-клиент вручную?
REST: Серверные компоненты Как получать данные в серверных компонентах?
REST: Клиентские компоненты Как получать данные в клиентских компонентах?
Realtime Как работать с realtime-каналами и сокетами?
Description
Languages
TypeScript 97.7%
Dockerfile 1.3%
CSS 1%