add: Описание npm-сборки пакетов статики (alpine, htmx, tailwind)

This commit is contained in:
2026-08-13 19:12:46 +03:00
parent ceba4b8e07
commit b75801ffdc
+67
View File
@@ -0,0 +1,67 @@
# frontend-assembly
Эта папка отвечает за сборку всех фронтенд-зависимостей проекта HYPN0.
Каждый подкаталог — отдельный инструмент, который собирается в готовый бандл/статик.
## Что здесь лежит
### `tailwind/` — сборка Tailwind CSS v3.4
```
tailwind/
├── package.json # Зависимости: tailwindcss@3.4, postcss, autoprefixer
├── package-lock.json # Фиксация версий
└── build-tailwind.sh # ← запускается из корня проекта
```
**Что делает:**
- `build-tailwind.sh` создаёт временные файлы (`tailwind.config.js`, `postcss.config.js`, `input.css`),
запускает `npm ci` + `npm run build`, собирает `public/static/css/tailwind.min.css`,
затем удаляет временные файлы.
- Результат: `public/static/css/tailwind.min.css` — минифицированный CSS со всеми
используемыми утилитами + кастомные стили из `hypn0/templates/css/tailwind-custom.css`.
### `htmx/` — сборка htmx
```
htmx/
├── package.json
└── package-lock.json
```
### `alpine/` — сборка Alpine.js
```
alpine/
├── package.json
└── package-lock.json
```
## Как запускать сборки
Из корня проекта:
```bash
# Tailwind CSS
bash scripts/build-tailwind.sh
# htmx
bash scripts/build-htmx.sh
# Alpine.js
bash scripts/build-alpine.sh
```
Каждый скрипт сам делает всё:
1. проверяет наличие `npm`;
2. создаёт временные файлы;
3. устанавливает зависимости через `npm ci`;
4. запускает `npm run build`;
5. кладёт готовый бандл в `public/static/...`;
6. удаляет временные файлы.
В рабочем дереве не остаётся мусора от сборки.
## Кодовая статика
В будущем — возможно, сборка CodeMirror 6 для админки Django.