Dart Class → JSON Schema генератор

Ввод Dart код

Загрузка редактора…

Вывод JSON Schema

Настройки

Выберите класс, который будет root для JSON Schema.

Парсинг выполняется полностью в браузере. Ваш код не покидает страницу.

Вставьте ваши Dart классы, чтобы сразу получить JSON Schema.

Поддерживаются null safety, коллекции, maps и вложенные объекты.

Как конвертировать классы Dart в JSON Schema — пошаговая инструкция

Этот онлайн конвертер (Dart class → JSON Schema) помогает генерировать JSON Schema из реальных моделей (DTOs, structs и classes), чтобы валидировать payloads, делиться контрактами и генерировать mock JSON.

  1. Шаг 1 — Вставьте исходник Dart

    • Вставьте модели, которые хотите документировать, в левый редактор.
    • Добавьте все типы, на которые есть ссылки, в тот же сниппет, чтобы сгенерировались definitions.
    • Нажмите Пример, чтобы загрузить пример и увидеть ожидаемый формат.
  2. Шаг 2 — Выберите Корневой тип (если нужно)

    • Если найдено несколько definitions, выберите корневой тип, который соответствует вашему API payload.
    • Выходная схема строится вокруг выбранного root и может включать дополнительные definitions для связанных типов.
  3. Шаг 3 — Проверьте JSON Schema

    • Проверьте типы, required vs optional поля и вложенные структуры объектов/массивов.
    • Обратите внимание на definitions и $ref когда модели ссылаются друг на друга.
    • Скопируйте или скачайте схему для валидации, документации или schema-first разработки.
  4. Шаг 4 — Валидируйте или сгенерируйте mock JSON

    • Нажмите Сгенерировать мок-данные чтобы открыть Генератор моков с предзаполненной схемой.
    • Проверяйте реальные payloads по схеме, чтобы раньше замечать breaking changes.
    • Если вы используете продвинутую композицию схемы (например anyOf/oneOf/allOf), проверьте результат полноценным валидатором вроде Ajv.

Заметка о поддержке keywords

Сгенерированные схемы могут включать $ref и при необходимости можно добавить anyOf, oneOf, или allOf. Для сложных схем используйте полноценный JSON Schema validator и при необходимости сделайте dereference перед генерацией моков.

Связанные инструменты JSON Schema и генерации кода

Используйте эти инструменты, чтобы валидировать схемы, генерировать mock payloads, форматировать JSON-примеры и синхронизировать код и контракты.

Часто задаваемые вопросы

Какой Dart код поддерживается?

Классы с типизированными полями, null safety, списками, maps и вложенными объектами. Вставьте несколько связанных классов, чтобы получить definitions.

Как типы Dart мапятся в JSON Schema?

String/num/int/double/bool мапятся в JSON Schema типы. List<T> становится array, Map со строковыми ключами — object. Nullable типы трактуются как optional или union с null.

Можно ли выбрать root класс?

Да. Если классов несколько — выберите root в настройках.

Как сгенерировать mock JSON по схеме?

После генерации схемы нажмите "Сгенерировать мок-данные", чтобы открыть Генератор моков с предзаполненной схемой.

Dart Class → JSON Schema генератор | JSONSwiss