Документация

Командная строка (CLI)

Интегрируйте JsonForge прямо в ваш терминал. Генерируйте схемы, маппинги и код из пайплайнов CI/CD без графического интерфейса.

npm install -g @jsonforge/cli
Терминал с запуском команды jsonforge generate
Быстрый старт

Установка и инициализация

Инструмент доступен для Node.js и Python сред. Мы рекомендуем использовать npm для доступа к последним обновлениям движка трансформации.

Через npm (Node.js)

# Установить глобально

npm install -g @jsonforge/cli


# Проверить версию

jfc --version

Через pip (Python)

# Установить пакет

pip install jsonforge-cli


# Запуск

jfc init

Справочник

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

Полный набор инструментов для работы с данными. Используйте флаг --help для детальной справки по каждому модулю.

jfc init

Создает стартовый проект с базовой конфигурацией и примерами схем.

jfc init my-project

jfc generate

Генерирует код (TS, Python, Go) на основе локальных JSON схем.

jfc generate --lang typescript

jfc validate

Проверяет валидность JSON файлов против указанной схемы. Возвращает код ошибки 1 при сбое.

jfc validate data.json
Настройка

Файл .jsonforgerc

Все настройки проекта хранятся в корневом файле конфигурации. Это позволяет версионировать ваши правила трансформации вместе с кодом.

  • output_dir: Папка для генерируемых файлов (по умолчанию ./dist).
  • strict_mode: Включает строгую типизацию (запрещает null в required полях).
  • format: Автоматическое форматирование выходного кода (prettier или standard).

// .jsonforgerc

{
  "project": {
    "name": "ecommerce-api",
    "version": "1.0.0"
  },
  "generator": {
    "language": "typescript",
    "output": "./src/models",
    "strict": true,
    "add_examples": true
  },
  "validation": {
    "schema_draft": "2020-12"
  }
}
Продвинутые сценарии

Скриптинг и пайплайны

Используйте CLI для автоматизации рутинных задач. Примеры интеграции в реальные процессы.

Преобразование Legacy JSON в новую схему

Используйте команду transform с указанием входного и выходного профиля маппинга. Это полезно при миграции баз данных.

jfc transform --input legacy_data.json --mapping v1-to-v2.json --output new_data.json
Интеграция с CI/CD (GitHub Actions)

Добавьте шаг валидации схем перед сборкой, чтобы предотвратить слияние сломанных типов.

- name: Validate JSON Schema
  run: jfc validate schemas/**/*.json --strict

Устранение неполадок

Ошибка: "Schema draft not supported" +
Убедитесь, что ваш файл .jsonforgerc указывает на поддерживаемую версию (Draft 7, 2019-09, 2020-12). JsonForge не поддерживает устаревшие спецификации JSON Schema v4.
Проблемы с правами доступа к файлам +
Если генератор не может записать файлы в папку dist, проверьте права доступа к директории. В Linux используйте `chmod -R 755 ./src` перед запуском команды.
Синтаксическая ошибка в маппинге +
Используйте флаг --debug при запуске трансформации. Это выведет подробный стек ошибок с указанием строки и номера символа, где произошел сбой парсинга правил.