- Добавлена документация SLM-архитектуры, базовых правил и прикладных разделов - Добавлены разделы: стили, SVG-спрайты, шаблоны генерации, PostCSS, REST, Realtime - Удалены устаревшие файлы (спрайты, скрипты, стили из app/)
52 lines
2.7 KiB
Markdown
52 lines
2.7 KiB
Markdown
---
|
||
title: Создание проекта из шаблона
|
||
description: Создание нового проекта на основе готового шаблона.
|
||
keywords: [создать проект из шаблона, шаблон, template, tiged, degit, клонировать шаблон, эталонный шаблон, быстрый старт, scaffold, новый проект]
|
||
---
|
||
|
||
# Создание проекта из шаблона
|
||
|
||
Создание нового проекта на основе готового шаблона.
|
||
|
||
## Что внутри
|
||
|
||
Шаблон — готовый скелет проекта с применёнными правилами стайлгайда:
|
||
|
||
- **Стек:** Next.js (App Router), TypeScript, React.
|
||
- **Архитектура:** структура папок по SLM, алиасы импортов.
|
||
- **Качество кода:** Biome (линтер и форматер), настройки VS Code.
|
||
- **Стили:** PostCSS Modules с плагинами, токены, медиа-брейкпоинты.
|
||
- **Ассеты:** генерация SVG-спрайтов.
|
||
- **Кодогенерация:** шаблоны для страниц, компонентов, хуков, сторов.
|
||
в
|
||
## Установка
|
||
|
||
1. Склонировать шаблон в родительском каталоге будущего проекта:
|
||
|
||
```bash
|
||
npx tiged git@gromlab.ru:templates/nextjs.git my-app
|
||
```
|
||
|
||
`tiged` копирует снимок репозитория без истории git. Имя каталога (`my-app`) заменяется на нужное.
|
||
|
||
2. Установить зависимости:
|
||
|
||
```bash
|
||
cd my-app
|
||
npm install
|
||
```
|
||
|
||
3. Проверить сборку:
|
||
|
||
```bash
|
||
npm run build
|
||
```
|
||
|
||
Сборка должна завершиться без ошибок.
|
||
|
||
## Правила
|
||
|
||
- **Шаблон — источник истины.** Не добавлять, не удалять и не переименовывать файлы шаблона «для приведения к канону»: шаблон уже канонический. Любое несоответствие — баг шаблона, а не проекта.
|
||
- **Менеджер пакетов — npm.** Отклонение (pnpm, yarn, bun) — только по явному решению с пониманием, что стайлгайд этого не предусматривает.
|
||
- **Не инициализировать git заново** автоматически. `tiged` намеренно не создаёт `.git/` — решение о репозитории принимает разработчик.
|