Repolode
longbridge

longbridge/nsh

Un motor en Rust para crear interfaces nativas multiplataforma: permite desarrollar apps en Rust o TSX y renderizarlas con los widgets propios de cada plataforma.

Estrellas
518
Forks
31
Issues abiertos
20
Último commit
hace 2 horas

¿Qué es?

NSH (Native Shell) es un motor en Rust para crear apps multiplataforma e interfaces generadas con IA. Puedes desarrollar una app en Rust, en TSX o combinando ambos con componentes compartidos. Cada plataforma renderiza la interfaz con su propio toolkit: UIKit en iOS, Android views, AppKit en macOS, Win32 y Direct2D en Windows, GTK 4 en Linux, GPUI para apps de GPUI y HTML en la web.

NSH se puede integrar en una app nativa existente junto con componentes como mapas y vistas web, o empaquetar como una app independiente o un sitio web estático. Los hosts también pueden cargar módulos TSX en tiempo de ejecución como plugins; estos se distribuyen en paquetes firmados y se ejecutan en un sandbox con las capacidades configuradas por el host.

El proyecto incluye un motor reactivo, layouts flexbox y grid, una capa base de componentes UI sin estilos, clases al estilo de Tailwind y una única CLI, `nsh`, para crear, ejecutar y empaquetar apps. Los proyectos TSX admiten actualizaciones en caliente que conservan el estado.

Funciones clave

  • 01Desarrolla apps en Rust, TSX o ambos, con un motor reactivo y un sistema de layout compartidos.
  • 02Renderiza la interfaz con la UI nativa de cada plataforma: iOS, Android, macOS, Windows, Linux, GPUI y la web.
  • 03Se integra en apps nativas existentes o se distribuye como app independiente o sitio web estático.
  • 04Carga módulos TSX firmados en tiempo de ejecución dentro de un sandbox configurado por el host.
  • 05Incluye una capa base de componentes sin estilos y clases al estilo de Tailwind para crear diseños personalizados.
  • 06Ofrece actualizaciones en caliente para TSX y una única CLI, `nsh`, para compilar y empaquetar.

Casos de uso

  • Añadir una pantalla con apariencia nativa o un plugin a una app existente de iOS o Android sin reescribirla.
  • Distribuir una app desde una única base de código que funcione con widgets nativos en varias plataformas de escritorio y móviles.
  • Entregar actualizaciones de UI a una app en ejecución mediante paquetes TSX firmados.
  • Generar y ejecutar pantallas creadas con IA usando TSX y clases de Tailwind.

Inicio rápido

  1. 1

    Instalar nsh con Homebrew

    brew install longbridge/tap/nsh
  2. 2

    Crear una aplicación TSX

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

    Ejecutar la aplicación en macOS

    nsh run my-app --target macos

Antes de usarlo

  • El proyecto aún está en una versión inicial 0.1.x, por lo que puede haber cambios incompatibles.
  • iOS, Android y otros destinos requieren toolchains adicionales, como Xcode o Android SDK.

Temas

Preguntas frecuentes

¿Qué es nsh?
Un motor en Rust para crear interfaces nativas multiplataforma: permite desarrollar apps en Rust o TSX y renderizarlas con los widgets propios de cada plataforma. NSH (Native Shell) es un motor en Rust para crear apps multiplataforma e interfaces generadas con IA. Puedes desarrollar una app en Rust, en TSX o combinando ambos con componentes compartidos. Cada plataforma renderiza la interfaz con su propio toolkit: UIKit en iOS, Android views, AppKit en macOS, Win32 y Direct2D en Windows, GTK 4 en Linux, GPUI para apps de GPUI y HTML en la web.
¿nsh es gratuito? ¿Qué licencia tiene?
nsh es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿nsh sigue mantenido?
Mantenimiento activo. El último commit de nsh fue el 21 oct 2026.
¿Para qué puedo usar nsh?
Añadir una pantalla con apariencia nativa o un plugin a una app existente de iOS o Android sin reescribirla. Distribuir una app desde una única base de código que funcione con widgets nativos en varias plataformas de escritorio y móviles. Entregar actualizaciones de UI a una app en ejecución mediante paquetes TSX firmados. Generar y ejecutar pantallas creadas con IA usando TSX y clases de Tailwind.
¿Cómo se instala nsh?
Instalar nsh con Homebrew: brew install longbridge/tap/nsh Crear una aplicación TSX: nsh init my-app --template ts Ejecutar la aplicación en macOS: nsh run my-app --target macos
¿Dónde consigo nsh?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/longbridge/nsh

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados