Дата публикации
ai_products

Raincast: ИИ-сервис, который собирает нативные десктоп‑приложения по текстовому описанию

Что появилось / что изменилось

Raincast — это open source‑приложение для macOS, Windows и Linux, которое генерирует нативные десктоп‑приложения из текстового описания на английском. Вы пишете: "Сделай локальный AI‑чат с логами" — получаете готовый проект на React + Tauri с Rust‑бэкендом и бинарником, который можно раздавать пользователям.

Ключевые возможности сейчас:

  • Генерация полноценных Tauri‑приложений, а не прототипов в браузере.
  • 9 готовых шаблонов интерфейса: дашборд, редактор, чат, файловый менеджер, медиаплеер, таблица данных, playground, утилита и универсальный шаблон.
  • Автоматическая генерация Rust‑команд с #[tauri::command] для файлового ввода‑вывода, запуска shell‑команд, системного мониторинга и сетевых запросов.
  • Поддержка нативного оформления окон: прозрачные фоны, размытие в стиле macOS, оверлей‑тайтлбар, произвольные размеры окон.
  • Живой предпросмотр с hot reload — приложение работает прямо во время сборки.
  • One‑click ship: сборка в отдельный бинарник одним действием.

Под капотом Raincast использует несколько ИИ‑провайдеров:

  • Anthropic Claude Sonnet 4.6 (pro) и Claude Haiku 4.5 (fast) — для сложных приложений и более аккуратного кода.
  • Google Gemini 3.1 Pro и Gemini 3 Flash — для быстрой итерации и мультимодальных сценариев.

Пользователь сам указывает API‑ключ в настройках. Проект открыт для pull‑request’ов: разработчики предлагают добавить OpenAI (например, GPT‑4.1), xAI Grok, DeepSeek, Mistral и других через вклад в репозиторий.

Как это работает

Raincast — это десктоп‑IDE, заточенная под генерацию Tauri‑приложений. Вы описываете приложение на английском, Raincast отправляет запрос к выбранному ИИ и получает сразу несколько артефактов:

  • React‑фронтенд.
  • Rust‑бэкенд с #[tauri::command] функциями.
  • Конфигурацию Tauri.

Самое интересное — живой предпросмотр без полной сборки Tauri. Обычно React‑часть общается с Rust‑командами через tauri.invoke(), но до компиляции настоящего бинарника вызывать их нельзя. Raincast обходит это так:

  1. Парсит сгенерированный Rust‑код через AST и ищет все функции с атрибутом #[tauri::command].
  2. На основе этого кода собирает отдельный CLI‑бинарник‑прокси.
  3. Прокси читает JSON из stdin, вызывает нужную функцию и пишет JSON в stdout.
  4. В dev‑режиме invoke() фронтенда уходит не в Tauri‑runtime, а в этот прокси.

В итоге предпросмотр ведет себя как "настоящее" приложение: есть доступ к файловой системе, shell‑командам, системной информации и сети, ещё до финальной сборки. Когда вы нажимаете Ship, Raincast собирает полноценный Tauri‑бинарник с теми же командами, а прокси остается только для разработки.

Для работы нужны Node.js 18+, Rust и системные зависимости Tauri. На macOS можно поставить всё одной командой через скрипт:

curl -fsSL https://raw.githubusercontent.com/tihiera/raincast/main/scripts/install-macos.sh | bash

Есть готовые инсталляторы для Windows (.exe) и Debian/Ubuntu (.deb или .AppImage).

Что это значит для вас

Кому пригодится Raincast:

  • Frontend‑разработчикам, которые не хотят руками настраивать Tauri и Rust. Вы можете описать функциональность, получить рабочий каркас, а дальше дорабатывать код.
  • Продуктовым и design‑инженерам — чтобы быстро собирать нативные утилиты: VPN‑индикаторы, статус‑бар‑приложения, мини‑дашборды.
  • Data‑ и AI‑разработчикам — для локальных UI к моделям и пайплайнам: от чатов с llama.cpp до инструментов визуализации логов и метрик.
  • Инди‑разработчикам игр — как быстрый старт для простых 2D‑игр и прототипов платформеров, где важен нативный билд.

Примеры сценариев из документации:

  • Утилита со "стеклянным" окном, которая показывает статус VPN: публичный IP, геолокация на мини‑карте, пинг, скорость, аптайм и кнопка подключить/отключить.
  • Локальный AI‑чат к серверу llama.cpp с интерфейсом чата, выбором модели и выдвижной консолью с логами и статусом соединения.
  • Сайд‑скроллер в духе Super Mario: пиксель‑арт спрайты, параллакс‑фон, HUD со счетом, монетами и жизнями, частицы при сборе монет и шейк экрана при уроне.
  • Автоматический органайзер файлов: следит за Desktop и Downloads, сортирует файлы по паттернам имен в папки, показывает нотификации в стиле macOS и ленту последних действий.

Где Raincast не поможет:

  • Если вы не готовы описывать интерфейс и логику на английском.
  • Если нужен продакшн‑уровень безопасности и строгий аудит кода — сгенерированный Rust и React всё равно придется внимательно ревьюить.
  • Если вы вообще не хотите трогать код. Raincast скорее ускоряет разработку, чем заменяет её.

Важно: сервис не привязан к конкретному региону, но для работы ИИ‑части нужен доступ к API Anthropic или Google Gemini. Если эти сервисы у вас в сети не открываются, может понадобиться VPN и платный аккаунт у провайдера модели.

Место на рынке

Raincast живет в нише генераторов приложений, которые опираются на стандартный стек и открытый код. Он не тянет вас в закрытую облачную платформу: результат — обычный репозиторий Tauri с React и Rust, который вы можете собрать, форкнуть и развернуть где угодно.

По подходу Raincast ближе к "ИИ‑помощнику в IDE", чем к no‑code‑конструктору. Он не прячет код, а наоборот, сразу генерирует структуру проекта, тесты для подмодулей (например, editkit) и команды сборки (npm run tauri dev, npm run tauri build).

В отличие от браузерных генераторов интерфейсов, здесь есть упор на нативность: системная интеграция через Tauri, доступ к файловой системе, shell, системным API и полноценный бинарник для дистрибуции. Для разработчиков, которые уже смотрят в сторону Tauri вместо Electron, это удобная точка входа.

Прямых сравнений по скорости генерации кода, качеству UI или стоимости вызовов по сравнению с другими AI‑инструментами авторы не приводят. Главная ставка Raincast — открытый репозиторий, расширяемость через pull‑request’ы и возможность подключить свой любимый ИИ‑бэкенд через API‑ключ.


Читайте также

Raincast: ИИ-сервис, который собирает нативные десктоп‑приложения по текстовому описанию — VogueTech | VogueTech