No-code решения для разработчиков, о которых мало кто говорит

7e9780825885a8e64ff21c2351fec42d.jpg

Существуют сотни фреймворков, библиотек и платформ для разработки в формате no-code. Сегодня обсудим те из них, что имеют высокие рейтинги на GitHub, но могли пройти мимо вас незамеченными — Formily, Mitosis, APITable, FlowiseAI и ToolJet.

Formily

Это — библиотека для построения веб-форм, распространяемая по лицензии MIT. Она совместима с React и Vue, а также использует JSON Schema для динамической генерации полей ввода. Для построения форм есть специальная среда — Form Builder. По словам разработчиков, проект заточен под корпоративные системы и приложения.

На GitHub он насчитывает более 11 тыс. звезд, и это довольно крупное комьюнити. Но многие обсуждения ведутся на китайском языке, что затрудняет участие в жизни сообщества русскоязычных и даже англоязычных разработчиков. Если вы хотите познакомиться с инструментом, то стоит начинать с документации на английском.

Если говорить об альтернативах для построения форм (которые не обязательно поддерживают формат no-code), то можно выделить библиотеку Formik для React. Она предлагает API для обработки состояний и значений формы, а также сообщений об ошибках. Еще можно отметить vue-formulate для Vue.js, который упрощает работу с формами за счёт единого компонента для разных типов ввода .

Mitosis

Mitosis представила команда Builder.io, которая развивает инструменты design-to-code на базе систем ИИ. Инструмент распространяется под лицензией MIT и позволяет создавать переиспользуемые компоненты для нескольких фреймворков, включая React, Vue, Angular. Цель проекта — избавить команды разработки от необходимости поддерживать «расщепленную» кодовую базу. В качестве промежуточного формата для сериализации компонентов Mitosis  задействует JSON. Например, вот так может выглядеть код компонента на JSX:

export function MyComponent() {
  const state = useStore({
    name: 'Steve',
  });
  return (
    
(state.name = event.target.value)} />
); }

Mitosis преобразует его в следующую JSON-структуру:

{
  "@type": "@builder.io/mitosis/component",
  "state": {
    "name": "Steve"
  },
  "nodes": [
    {
      "@type": "@builder.io/mitosis/node",
      "name": "div",
      "children": [
        {
          "@type": "@builder.io/mitosis/node",
          "name": "input",
          "bindings": {
            "value": "state.name",
            "onChange": "state.name = event.target.value"
          }
        }
      ]
    }
  ]
}

Уже эту структуру можно автоматически трансформировать в компоненты для других фреймворков (например, Angular). Однако сами разработчики все же отмечают несколько ограничений (gotchas), которые необходимо учитывать. В целом, прежде чем начинать работу с решением, стоит ознакомиться с руководством для старта. Кроме того, есть онлайн-площадка для пробного тестирования его возможностей.

APITable

No-code или low-code платформа под AGPL-3.0, которая позиционируется как альтернатива Airtable. APITable позволяет создавать таблицы с гибкими настройками, которые поддерживают различные типы данных и отображений. При этом табличная форма не единственно возможный способ представления данных. Просматривать и редактировать их можно в режимах канбана, календаря, галереи и диаграммы Ганта.

Инструмент будет полезен командам, которые работают с большими объемами данных, нуждающихся в совместной обработке. APITable поддерживает редактирование в реальном времени несколькими пользователями, предлагает возможность комментирования и управления правами доступа (на уровне столбцов и строк в таблицах). APITable имеет 13 тыс. звезд на GitHub.

FlowiseAI

FlowiseAI распространяется под лицензией Apache 2.0. Он предназначен для быстрой сборки, развертывания и тестирования приложений на базе LLM. Интерфейс выстраивается с помощью готовых блоков и функции drag-and-drop.

Архитектура FlowiseAI построена на фреймворке LangGraph. Агентные системы проектируются в виде направленного циклического графа. Каждый узел графа — это самостоятельная единица, выполняющая свои функции, такие как обработка языка или логического условия. Связи между узлами представляют потоки данных, где вывод одного узла становится вводом для последующего, формируя своеобразный пайплайн.

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

Решение поддерживает интеграции, Human-in-the-Loop и может быть развернуто в облаке.

ToolJet

ToolJet — платформа для разработки бизнес-приложений с лицензией AGPL-3.0. По сути, это библиотека предустановленных компонентов и шаблонов. Хотя можно писать и собственные расширяющие плагины и виджеты под специфические требования.

Есть возможность подключать базы данных (PostgreSQL, MongoDB), облачные хранилища, API и сервисы вроде Airtable. Платформа поддерживает drag-and-drop, что упрощает работу с компонентами, такими как таблицы, графики и формы. В то же время разработчики предлагают инструмент tooljet cli для подключения расширений.

ToolJet также подходит для прототипирования и подготовки MVP, но стоит иметь в виду периодические ошибки в новых версиях и сложную начальную настройку. Если эти недостатки являются критическими для проекта, то в качестве альтернативы можно рассмотреть SuperBlock, а также Flowdash.

Получите доступ к надёжной виртуальной инфраструктуре и запустите облачные сервисы без начальных затрат — бесплатно на два месяца.

© Habrahabr.ru