·4 мин. чтения

Форматтер JSON для Mac — нативное приложение, работает офлайн

Вставка неотформатированного JSON в браузерный инструмент для чтения — это рутина, которую вы повторяете десятки раз в неделю, даже не задумываясь.

API возвращает ответ на 200 строк JSON, сжатый в одну строку. Вам нужно найти одно вложенное поле. Поэтому вы копируете его, открываете вкладку браузера, переходите на один из десятка сайтов-форматтеров JSON, вставляете, нажимаете «Format» и всматриваетесь в результат. Если в JSON есть что-то чувствительное — токены, данные пользователей, внутренние ID — вы только что отправили это на сторонний сервер.

Это одна из самых частых микро-задач в разработке ПО, и большинство разработчиков решают её самым неэффективным способом.

Подход через терминал

В macOS есть python3, поэтому JSON можно пропустить через python3 -m json.tool в Terminal. Это работает для корректно сформированных данных. Но команда спотыкается на висячих запятых, выдаёт непонятные сообщения об ошибках для некорректного JSON, а результат остаётся запертым в окне терминала. Нет подсветки синтаксиса, нет сворачиваемых узлов и нет способа быстро скопировать вложенный путь.

Некоторые разработчики устанавливают jq через Homebrew — это мощнее, но добавляет ещё одну зависимость и требует изучения его синтаксиса запросов для чего-либо сложнее базового форматирования.

Нативный форматтер JSON прямо на вашем Mac

Bellows включает форматтер JSON как один из 41 встроенного инструмента для разработчиков. Вставьте или введите JSON в панель ввода и мгновенно получите отформатированный, читаемый результат. Подключение к сети не требуется — всё выполняется локально на вашем Mac.

Bellows JSON formatter tool showing formatted output on macOS

Определение содержимого буфера обмена

Скопируйте строку JSON в буфер обмена и откройте Bellows. Приложение распознаёт содержимое JSON и автоматически предлагает форматтер. Никакой навигации по меню — нужный инструмент уже наготове.

Часть большего набора инструментов

Форматирование JSON редко происходит в изоляции. Возможно, вам нужно раскодировать строку Base64, чтобы получить JSON, или извлечь payload из JWT, содержащий JSON, или декодировать URL-параметр, в котором хранится JSON-объект. С 41 инструментом в одном приложении вы можете выполнять эти операции последовательно, не переключаясь между разными утилитами.

Когда это особенно нужно

Отладка payload вебхука в 23:00. Просмотр конфиг-файла, который коллега вставил в Slack. Изучение экспорта Core Data. Проверка структуры мок-ответа перед написанием теста. Именно в такие моменты открывать вкладку браузера тяжелее всего — и именно тогда нативное приложение в строке меню приносит наибольшую пользу.

Получить Bellows в Mac App Store

Следующая статья

Bellows

41 developer tools in one native Mac app — JSON, JWT, Base64, hashes, and more.

Get Bellows on the Mac App Store