89 lines
2.0 KiB
Markdown
89 lines
2.0 KiB
Markdown
# Design System Generators - VoIdea
|
|
|
|
**Дата:** 2026-05-10
|
|
**Статус:** Backlog
|
|
|
|
---
|
|
|
|
## Обзор
|
|
|
|
Создание CLI-генераторов для конвертации tokens.json в платформо-специфичные форматы.
|
|
|
|
---
|
|
|
|
## Формат
|
|
|
|
Python CLI скрипты в `docs/design-system/generators/`
|
|
|
|
```bash
|
|
python -m generators css # Генерирует CSS Variables
|
|
python -m generators swift # Генерирует Swift
|
|
python -m generators kotlin # Генерирует Kotlin XML
|
|
python -m generators all # Генерирует все форматы
|
|
```
|
|
|
|
---
|
|
|
|
## Генераторы
|
|
|
|
### 1. CSS Generator
|
|
|
|
**Вход:** `docs/design-system/tokens.json`
|
|
**Выход:** `app/design-tokens/css/theme.css`
|
|
|
|
**Формат выхода:**
|
|
```css
|
|
:root {
|
|
--color-primary: #6366F1;
|
|
--color-background-dark: #0F172A;
|
|
--spacing-md: 1rem;
|
|
}
|
|
```
|
|
|
|
### 2. Swift Generator
|
|
|
|
**Выход:** `app/design-tokens/swift/Colors.swift`
|
|
|
|
**Формат выхода:**
|
|
```swift
|
|
struct Colors {
|
|
static let primary = Color(hex: "#6366F1")
|
|
static let backgroundDark = Color(hex: "#0F172A")
|
|
}
|
|
```
|
|
|
|
### 3. Kotlin Generator
|
|
|
|
**Выход:** `app/design-tokens/kotlin/colors.xml`
|
|
|
|
**Формат выхода:**
|
|
```xml
|
|
<resources>
|
|
<color name="primary">#6366F1</color>
|
|
<color name="background_dark">#0F172A</color>
|
|
</resources>
|
|
```
|
|
|
|
---
|
|
|
|
## Интеграция
|
|
|
|
- Генераторы запускаются при изменении `tokens.json`
|
|
- CI/CD автоматизирует генерацию
|
|
- DocAgent обновляет документацию
|
|
|
|
---
|
|
|
|
## TODO
|
|
|
|
- [ ] Создать структуру генераторов
|
|
- [ ] Реализовать CSS Generator
|
|
- [ ] Реализовать Swift Generator
|
|
- [ ] Реализовать Kotlin Generator
|
|
- [ ] Интегрировать в CI/CD
|
|
- [ ] Добавить тесты
|
|
|
|
---
|
|
|
|
*Создано: 2026-05-10*
|
|
*Обновляется автоматически DocAgent* |