![DBSpec](https://unpkg.com/@ai-devtools/dbspec/assets/logo.png)

# DBSpec

DBSpec - CLI/TUI-инструмент для проектирования реляционных баз данных через проверяемый workflow.

Он помогает командам работать со схемой БД как с инженерным артефактом: использовать XLSX как удобную поверхность редактирования, хранить SSOT в JSONL, валидировать структуру, импортировать PostgreSQL-схемы, генерировать SQLAlchemy models и управлять Alembic migrations.

## Установка

```bash
npm i -g @ai-devtools/dbspec
```

После установки доступна команда:

```bash
dbspec --help
```

## Для чего нужен DBSpec

- проектировать структуру БД в spreadsheet-friendly формате;
- синхронизировать XLSX и `.dbspec/data/*.jsonl`;
- проверять SSOT и подключенную DB-схему;
- импортировать PostgreSQL metadata в SSOT;
- генерировать SQLAlchemy models;
- сопровождать Alembic migrations через CLI и TUI.

## Основные команды

```bash
dbspec init
dbspec xlsx --template
dbspec sync
dbspec validate --target=ssot
dbspec gen models
dbspec migrations --help
dbspec tui
```

## Как устроена npm-установка

Пакет `@ai-devtools/dbspec` устанавливает команду `dbspec` и автоматически подтягивает platform package для текущей ОС и архитектуры.

Поддерживаемые runtime packages:

- `@ai-devtools/dbspec-linux-x64`;
- `@ai-devtools/dbspec-macos-arm64`;
- `@ai-devtools/dbspec-windows-x64`.

Все runtime packages поставляются в onedir layout, чтобы команда `dbspec` стартовала без onefile extraction overhead.
