Об этом инструменте
Код приходит минифицированным из сборки или неопрятным после быстрой вставки, а вам нужно обратное. Этот форматтер делает и то и другое: форматирует, разворачивая и делая отступы в HTML, CSS или JavaScript ради читаемости, или минифицирует, сжимая его для отгрузки. Минификацию JavaScript выполняет Terser, а CSS — CSSO, те же проверенные инструменты, что и в настоящих сборочных конвейерах.
Всё работает локально в браузере, поэтому даже проприетарный код остаётся на вашей машине. Выберите язык, выберите форматирование или минификацию и скопируйте результат.
Частые вопросы
В чём разница между «beautify» (форматирование) и «minify» (минификация)?
Форматирование добавляет отступы и переносы строк, чтобы код было легко читать; минификация убирает пробелы, комментарии и сокращает имена, чтобы файл был максимально компактным для продакшена. Используйте форматирование во время разработки и минификацию перед публикацией.
Меняет ли минификация поведение моего кода?
Не должна — минификаторы переписывают только тот синтаксис, который доказуемо эквивалентен (переименование локальных переменных, удаление мёртвого кода и т.п.). Если минифицированный код ведёт себя иначе, обычно это значит, что исходный код полагался на особенности, чувствительные к пробелам, либо парсер минификатора обнаружил реальную ошибку.
Мой код куда-то загружается?
Нет. И форматирование, и минификация выполняются полностью в вашем браузере с помощью JavaScript-библиотек (js-beautify, Terser, csso), которые загружаются один раз и работают локально. Ваш код никогда не покидает эту страницу.
Какие языки поддерживает этот форматтер?
JavaScript, CSS и HTML. Минификация JS использует Terser, CSS — csso, а минификация HTML — это лёгкий собственный алгоритм, который сохраняет содержимое тегов <pre>, <script> и <style>.
Почему вместо отформатированного результата я получил синтаксическую ошибку?
Форматтер разбирает ваш код перед форматированием или минификацией, поэтому настоящая синтаксическая ошибка (непарная скобка, лишняя запятая) сообщается с номером строки, а не тихо превращается в испорченный вывод.