В $mol добавили поддержку Node.js для хранения данных и новые инструменты интерфейса

В обзоре изменений $mol и Giper Dev за август и сентябрь — поддержка Node.js в $mol_storage, новые возможности редактора и инструменты интерфейса. Рассказываем, что стоит проверить разработчикам.

· 4 мин чтения · 5 комментариев

5 октября 2026 года Хабр опубликовал обзор изменений в $mol и Giper Dev за август и сентябрь. В $mol_storage добавили поддержку Node.js, развивают WYSIWYG-редактор и инструменты для интерфейсов, а в $mol_link усилили защиту. Тем, кто работает с $mol, стоит проверить методы хранилища и редактор на своих сценариях; GTK-модуль пока разумнее оценивать как раннюю разработку.

Хранилище, клавиатура и редактирование текста

$mol_storage теперь поддерживает Node.js и позволяет получать статистику по файловой системе через методы $mol_storage. used(), free() и total() показывают занятый, свободный и общий объём в байтах. portion() возвращает долю использования, а level() — его логарифмический уровень. Если приложению нужны такие данные, методы можно проверить отдельно, прежде чем встраивать их в интерфейс.

Для горячих клавиш появился $mol_hotkey2. Сочетание связывают с действием декларативно, в структуре компонента, без отдельной ручной обработки событий. Обзор также упоминает плагин для Ctrl + A и Ctrl + C, но не объясняет, как именно он работает. По одному названию обещать ему место в проекте я бы не стала.

WYSIWYG-редактор сначала получил базовое форматирование внутри строки, затем — работу с блоками. Тип абзаца теперь меняют через выбор блока; команды форматирования текста вынесены в другое меню. Вложенность регулируют клавишами: Tab перемещает текущий блок на уровень глубже, Shift + Tab возвращает выше.

Редактор можно попробовать, но его функциональность ещё развивается. Наличие блочного форматирования не означает, что все способы работы со структурированным текстом уже предусмотрены. Особенно если пользователи любят вставлять, перемещать и переделывать содержимое не в том порядке, который был нарисован в макете.

GTK, отзывы и безопасность

Отдельный GTK-модуль позволяет использовать GTK в проектах экосистемы $mol и создавать нативные интерфейсы без WebView. Это попытка применить подход $mol за пределами браузера, в том числе для экспериментов с desktop-приложениями. Проект пока на ранней стадии: считать его готовым решением для любого такого приложения было бы поспешно.

В b-on-g появился компонент feedback2 для сбора отзывов и просмотра отправленных сообщений. При подключении ему задают идентификатор; перед добавлением в проект можно изучить демо формы. Для небольшого сервиса или документации это способ не собирать интерфейс обратной связи с нуля.

В обзоре также упомянуты jack.tree, обновление документации smalljs и публикация music v1.**. По jack.tree автор даёт ссылки на отдельную статью и обсуждение, но не описывает инструмент в самом обзоре. Изменения в music тоже не раскрыты: для них обещан отдельный материал. Поэтому делать выводы об их возможностях по этому списку рано.

Из изменений безопасности названы фильтрация скриптовых протоколов в $mol_link и закрытая проблема в Giper Baza. Подробностей о проблеме Baza обзор не приводит; тем, кому они нужны для оценки обновления, лучше открыть задачу в репозитории. Заодно можно сопоставить эту новость с обновлениями безопасности Next.js: оба повода полезнее проверять по конкретным зависимостям проекта, а не по слову «безопасность» в заголовке.

Что проверить в своём проекте

Разработчикам на $mol стоит начать с задач, которые уже есть в приложении. Нужна статистика файловой системы в среде Node.js — проверить методы $mol_storage. Много клавиатурных действий — посмотреть, удобно ли описывать их через $mol_hotkey2 рядом с действиями компонентов. Короткий пример API помогает разобраться с идеей, но не заменяет проверку в собственном интерфейсе.

Если пользователи пишут структурированный текст, редактор стоит испытать на преобразовании абзацев в блоки и изменении вложенности с клавиатуры. Форму отзывов — на том, как команда собирается принимать и просматривать сообщения. Владельцам сайтов и маркетологам важнее понять, нужна ли людям такая точка обратной связи, чем пополнить список подключённых компонентов.

GTK пока имеет смысл рассматривать отдельно от текущих задач сайта: он касается нативных интерфейсов и находится на раннем этапе. А после сообщений о $mol_link и Giper Baza команде стоит проверить, затрагивают ли изменения используемые ею проекты. Обзор обозначает исправления, но не даёт достаточно деталей, чтобы делать более широкие выводы.

Моё мнение: сценарий важнее списка новинок

Мне интереснее всего редактор: здесь меняется не только набор кнопок, но и то, как человек управляет структурой текста. Меню можно нарисовать быстро; сделать вложенные блоки понятными после нескольких правок — уже другая задача. Я бы открыла демо и проверила странные крайние случаи до разговора о том, как аккуратно выглядит панель инструментов.

Я бы не складывала все пункты обзора в корзину «берём в работу». У GTK обозначена ранняя стадия, редактор развивается, а по части проектов подробностей нет. Лучше выбрать один нужный сценарий и проверить его прототипом. «Поставим всё выше» не было стратегией для интерфейса; «подключим всё новое» для продукта тоже не стало.

Источники

Откуда новость. Текст — пересказ своими словами, факты — из источника, мнение — автора.

  1. Новости $mol и Giper Dev habr.com

Об авторе

Аня Млынарек

UX/UI-дизайнер

Проектирую интерфейсы для сервисов и периодически объясняю командам, почему «поставить всё выше» — не стратегия. Люблю прототипы, в которых можно проверить не только красоту, но и странные крайние случаи.

Все публикации автора

Дизайн 4 мин чтения

Google открыла формат DESIGN.md для передачи дизайн-системы AI-агентам

Google представила открытую альфа-спецификацию DESIGN.md для передачи визуальных правил AI-агентам. Файл описывает дизайн-систему и помогает создавать интерфейсы в едином стиле.

Бэкенд 3 мин чтения

Next.js выпустил обновления безопасности для веток 15.5 и 16.3

Next.js выпустил версии 16.3.8 и 15.5.27, исправляющие уязвимости кеширования, раскрытия данных и оптимизации изображений. Командам рекомендуют обновить приложения и проверить используемые функции.

Фронтенд 3 мин чтения

Bez генерирует браузерный движок по веб-спецификациям и тестам

Bez создаёт браузерный движок по веб-спецификациям, сверяя результат с Chromium, Firefox и WebKit. Проект пока на ранней стадии, а опубликованные показатели не означают готовность движка.

Написать комментарий

Не публикуется. Пришлём ссылку, чтобы подтвердить комментарий.

Без ссылок и рекламы. Первый комментарий публикуется после проверки. Отправляя комментарий, вы соглашаетесь с политикой конфиденциальности.

  1. Не стал бы объединять эти изменения под выводом, что их уже стоит проверять в проекте: для $mol_storage важны детали поведения в Node.js — например, что именно означают free() и total() для выбранной файловой системы и как обрабатываются ошибки. Без этого интеграция может добавить больше поддержки, чем пользы.

    1. Тут ещё вопрос к `portion()` и `level()` — они считают те же значения для выбранной файловой системы или могут отличаться от системных утилит?

      1. Аня Млынарек Автор публикации

        По описанию, `portion()` и `level()` производные от `used()`, `free()` и `total()`, так что должны опираться на ту же выбранную файловую систему. Но совпадение с системными утилитами я бы не обещала: там могут отличаться трактовка доступного места и обработка ошибок — это как раз стоит сверить на конкретном окружении.

        1. Верно ли, что `portion()` считает долю как `used() / total()`, а `level()` применяет логарифм к этой доле? Важно уточнить формулу: от неё зависит, как интерпретировать значения в интерфейсе.

          1. Аня Млынарек Автор публикации

            Точную формулу из этих изменений я не подтверждала бы: в описании сказано лишь, что `portion()` и `level()` показывают производные показатели использования. `used() / total()` звучит правдоподобно, но прежде чем трактовать `level()` как логарифм этой доли в интерфейсе, лучше сверить реализацию — крайние значения там особенно весело ломают ожидания.