Files
nextjs-style-guide/docs/ru/workflow/creating-pages.md
S.Gromov 99c0995cb6
All checks were successful
CI/CD Pipeline / docker (push) Successful in 1m10s
CI/CD Pipeline / deploy (push) Successful in 8s
feat: генерация llms.txt, лендинг с выбором языка и ZIP-архивов
- удалён concat-md.js: вместо единого RULES.md теперь llms.txt
- добавлен generate-llms.ts: собирает llms.txt из sidebar config, копирует
  .md-файлы для отдачи LLM и упаковывает ZIP-архивы по локалям
- добавлен корневой /llms.txt как роутер на /ru/llms.txt и /en/llms.txt
- добавлен манифест /manifest.json со ссылками и версией сборки
- добавлен лендинг docs/index.md (layout: false) с автоопределением
  языка, переключателями языка и темы
- английская локаль временно заблокирована: карточки как заглушки,
  ссылка на /en/ в роутере без href
- добавлены поля llmsBlockquote и llmsContext в локали для
  технодокументационного описания в llms.txt
- разделены VitePress-локали: root (только лендинг), ru (/ru/), en (/en/)
- добавлен srcExclude: ['public/**'] чтобы VitePress не рендерил
  сгенерированные .md как страницы
- добавлен Vite-плагин для отдачи .txt и .md с charset=utf-8
- добавлена секция в Caddyfile для текстовых файлов
- BUILD_VERSION пробрасывается из Gitea CI через docker --build-arg
  и подставляется в лендинг через Vite define
- Dockerfile: установка zip, npm run llms перед npm run build
- обновлены внутренние ссылки в docs/ru/**/*.md на префикс /ru/
- обновлены AGENTS.md и CONTRIBUTING.md под новый процесс
- README/README_RU генерируются из docs/{lang}/index.md, остаются в репо
2026-04-25 18:06:27 +03:00

1.7 KiB
Raw Blame History

title
title
Добавление страницы

Добавление страницы

Как добавить новую страницу в проект по стандартам этого руководства.

Что нужно знать

Страница в проекте — это два файла: экран в src/screens/ (вся логика, стили, зависимости) и page.tsx в src/app/ (точка входа для роутинга Next.js). Экран генерируется из шаблона, page.tsx создаётся вручную.

Порядок действий

  1. Сгенерировать экран из шаблона screen в папку src/screens/.

  2. Заполнить экран логикой и стилями.

  3. Создать page.tsx в нужном маршруте src/app/. Файл страницы должен быть тонким — только metadata и рендер экрана. Никакой логики, стилей и хуков в page.tsx не размещается — всё это живёт в экране.

Правила

  • Ручное создание файловой структуры экрана запрещено — только генерация из шаблона.
  • Логика, стили и зависимости размещаются в экране, не в page.tsx.
  • Каждая страница содержит metadata с title и description.

Примеры page.tsx и metadataPage-level компоненты.