Repolode
longbridge

longbridge/nsh

基于 Rust 的原生跨平台 UI 引擎,可用 Rust 或 TSX 编写应用,并使用各平台原生控件渲染。

Star
518
Fork
31
未关闭 Issue
20
最近提交
2小时前

这是什么?

NSH(Native Shell)是一个用 Rust 编写的引擎,用于构建跨平台应用和 AI 生成的界面。开发者可以用 Rust、TSX,或两者混合编写应用。各平台使用自身的 UI 框架渲染:iOS 使用 UIKit,Android 使用原生 View,macOS 使用 AppKit,Windows 使用 Win32 与 Direct2D,Linux 使用 GTK 4,GPUI 应用使用 GPUI,Web 端使用 HTML。

NSH 既可以嵌入已有的原生应用,与地图、网页视图等组件并存,也可以打包为独立应用或静态网站。宿主应用还可以在运行时以插件形式加载 TSX 模块,模块以签名包分发,并在宿主配置能力的沙箱中运行。

项目提供响应式引擎、flexbox 与 grid 布局、无样式的基础组件层、Tailwind 风格的类名,以及用于创建、运行和打包应用的 `nsh` 命令行工具。TSX 项目支持保留状态的热更新。

核心功能

  • 01可用 Rust、TSX 或两者混合编写应用,共享同一响应式引擎和布局系统。
  • 02在 iOS、Android、macOS、Windows、Linux、GPUI 和 Web 上使用各平台原生 UI 渲染。
  • 03可嵌入已有原生应用,也可打包为独立应用或静态网站。
  • 04在宿主配置的沙箱中运行时加载签名的 TSX 模块。
  • 05提供无样式基础组件层和 Tailwind 风格类名,便于自定义设计。
  • 06TSX 项目支持热更新,并提供统一的 `nsh` 命令行工具用于构建和打包。

适用场景

  • 在已有 iOS 或 Android 应用中加入原生风格的界面或插件,无需整体重写。
  • 用一套代码库发布到多个桌面和移动平台,并使用各平台原生控件。
  • 以签名 TSX 包的形式向正在运行的应用推送界面更新。
  • 用 TSX 和 Tailwind 类名运行 AI 生成的界面。

快速上手

  1. 1

    用 Homebrew 安装 nsh

    brew install longbridge/tap/nsh
  2. 2

    创建一个 TSX 应用

    nsh init my-app --template ts
  3. 3

    在 macOS 上运行应用

    nsh run my-app --target macos

使用前须知

  • 项目仍处于早期 0.1.x 版本,可能出现破坏性变更。
  • iOS、Android 等目标平台需要额外的工具链,例如 Xcode 或 Android SDK。

标签

常见问题

nsh 是什么?
基于 Rust 的原生跨平台 UI 引擎,可用 Rust 或 TSX 编写应用,并使用各平台原生控件渲染。 NSH(Native Shell)是一个用 Rust 编写的引擎,用于构建跨平台应用和 AI 生成的界面。开发者可以用 Rust、TSX,或两者混合编写应用。各平台使用自身的 UI 框架渲染:iOS 使用 UIKit,Android 使用原生 View,macOS 使用 AppKit,Windows 使用 Win32 与 Direct2D,Linux 使用 GTK 4,GPUI 应用使用 GPUI,Web 端使用 HTML。
nsh 可以免费使用吗?用的什么许可证?
nsh 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
nsh 还在维护吗?
活跃维护中。nsh 最近一次提交是在 2026年10月21日。
nsh 适合用来做什么?
在已有 iOS 或 Android 应用中加入原生风格的界面或插件,无需整体重写。 用一套代码库发布到多个桌面和移动平台,并使用各平台原生控件。 以签名 TSX 包的形式向正在运行的应用推送界面更新。 用 TSX 和 Tailwind 类名运行 AI 生成的界面。
nsh 怎么安装和运行?
用 Homebrew 安装 nsh: 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

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目