Набор компонентов для Rust GUI с более чем 75 стилизованными компонентами для кроссплатформенных приложений на GPUI.
longbridge/nsh
Rust-движок для кроссплатформенных нативных интерфейсов: пишите приложения на Rust или TSX и используйте виджеты каждой платформы.
- Звёзды
- 518
- Форки
- 31
- Открытые issues
- 20
- Последний коммит
- 2 часа назад
Что это?
NSH (Native Shell) — Rust-движок для создания кроссплатформенных приложений и интерфейсов, генерируемых с помощью AI. Приложение можно написать на Rust, на TSX или сочетать оба языка, используя общие компоненты. На каждой платформе интерфейс отображается средствами её собственного UI-тулкита: UIKit на iOS, Android views, AppKit на macOS, Win32 и Direct2D на Windows, GTK 4 на Linux, GPUI для приложений на GPUI и HTML в вебе.
NSH можно встроить в существующее нативное приложение вместе с такими компонентами, как карты и веб-представления, либо собрать как самостоятельное приложение или статический сайт. Хост-приложения также могут загружать TSX-модули во время выполнения в качестве плагинов: они поставляются в виде подписанных пакетов и запускаются в песочнице, возможности которой задаёт хост.
В проект входят реактивный движок, раскладка Flexbox и Grid, базовый слой UI-компонентов без стилей, классы в стиле Tailwind и единый CLI `nsh` для создания, запуска и упаковки приложений. В проектах на TSX поддерживаются горячие обновления с сохранением состояния.
Ключевые возможности
- 01Пишите приложения на Rust, TSX или обоих языках, используя общий реактивный движок и систему раскладки.
- 02Отображает интерфейс с помощью нативных средств каждой платформы: iOS, Android, macOS, Windows, Linux, GPUI и веб.
- 03Встраивается в существующие нативные приложения или поставляется как самостоятельное приложение либо статический сайт.
- 04Загружает подписанные TSX-модули во время выполнения в песочнице, настроенной хостом.
- 05Предоставляет базовый слой компонентов без стилей и классы в стиле Tailwind для создания собственного дизайна.
- 06Поддерживает горячие обновления TSX и единый CLI `nsh` для сборки и упаковки.
Сценарии использования
- Добавление экрана с нативным видом или плагина в существующее приложение для iOS или Android без его переписывания.
- Поставка приложения с единой кодовой базой, которое работает с нативными виджетами на нескольких настольных и мобильных платформах.
- Доставка обновлений интерфейса в работающее приложение в виде подписанных пакетов TSX.
- Генерация и запуск экранов, созданных AI, с помощью TSX и классов Tailwind.
Быстрый старт
- 1
Установить nsh с помощью Homebrew
brew install longbridge/tap/nsh - 2
Создать приложение TSX
nsh init my-app --template ts - 3
Запустить приложение в macOS
nsh run my-app --target macos
Что важно знать
- Проект находится на ранней стадии и имеет версию 0.1.x, поэтому возможны несовместимые изменения.
- Для iOS, Android и других целевых платформ нужны дополнительные toolchain'ы, например Xcode или Android SDK.
Темы
Частые вопросы
- Что такое nsh?
- Rust-движок для кроссплатформенных нативных интерфейсов: пишите приложения на Rust или TSX и используйте виджеты каждой платформы. NSH (Native Shell) — Rust-движок для создания кроссплатформенных приложений и интерфейсов, генерируемых с помощью AI. Приложение можно написать на Rust, на TSX или сочетать оба языка, используя общие компоненты. На каждой платформе интерфейс отображается средствами её собственного UI-тулкита: UIKit на iOS, Android views, AppKit на macOS, Win32 и Direct2D на Windows, GTK 4 на Linux, GPUI для приложений на GPUI и HTML в вебе.
- nsh можно использовать бесплатно? Какая у него лицензия?
- nsh распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- nsh всё ещё поддерживается?
- Активно поддерживается. Последний коммит в nsh — 21 окт. 2026 г..
- Для чего можно использовать nsh?
- Добавление экрана с нативным видом или плагина в существующее приложение для iOS или Android без его переписывания. Поставка приложения с единой кодовой базой, которое работает с нативными виджетами на нескольких настольных и мобильных платформах. Доставка обновлений интерфейса в работающее приложение в виде подписанных пакетов TSX. Генерация и запуск экранов, созданных AI, с помощью TSX и классов Tailwind.
- Как установить nsh?
- Установить nsh с помощью Homebrew: brew install longbridge/tap/nsh Создать приложение TSX: nsh init my-app --template ts Запустить приложение в macOS: nsh run my-app --target macos
- Где скачать nsh?
- Исходный код и инструкции по установке — на GitHub: https://github.com/longbridge/nsh
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Лёгкий нативный клиент Spotify для компьютера на Rust: воспроизводит музыку локально и поддерживает Spotify Connect в Linux, macOS и Windows.
Фреймворк на Rust для создания компактных и быстрых настольных и мобильных приложений с любым веб-фронтендом и системным webview.
Фреймворк на Go для создания кроссплатформенных десктопных приложений с веб-интерфейсом на React, Vue, Svelte и других фреймворках.
Библиотека Python для создания окон PyQt/PySide без рамки с настраиваемой строкой заголовка, изменением размера и системными эффектами размытия в Windows, Linux и macOS.
Приложение для удалённого рабочего стола с открытым исходным кодом, написанное на Rust и доступное для самостоятельного хостинга, — альтернатива TeamViewer.