Repolode
iced-rs

iced-rs/iced

Una biblioteca de GUI multiplataforma para Rust con un modelo de programación sencillo, seguro en cuanto a tipos e inspirado en Elm.

Estrellas
31,808
Forks
1,709
Issues abiertos
512
Último commit
hace 7 horas

¿Qué es?

Iced es una biblioteca de GUI para Rust que permite crear interfaces de usuario para escritorio y web con una arquitectura al estilo Elm. Una interfaz se divide en estado, mensajes, una función view que representa el estado como widgets y una función update que reacciona a los mensajes modificando el estado. La biblioteca se encarga del diseño y del procesamiento de eventos, así que el código de la aplicación solo describe qué muestra la interfaz y cómo responde.

Iced está dirigido a Windows, macOS, Linux y la Web. Incluye widgets integrados, como campos de texto y elementos con desplazamiento, admite widgets personalizados y ofrece acciones async de primera clase basadas en futures. Su diseño modular separa un runtime independiente del renderer de los renderers: iced_wgpu usa wgpu para Vulkan, Metal y DX12, mientras que iced_tiny_skia ofrece una alternativa de renderizado por software. Una capa de ventanas conecta estos componentes con el sistema operativo.

El proyecto se describe como software experimental, por lo que su API todavía puede cambiar entre versiones.

Funciones clave

  • 01Modelo de estado, mensajes, view y update al estilo Elm, con mensajes seguros en cuanto a tipos
  • 02Compatibilidad multiplataforma con Windows, macOS, Linux y la Web
  • 03Widgets integrados, incluidos campos de texto y elementos con desplazamiento, además de compatibilidad con widgets personalizados
  • 04Renderers basados en wgpu (Vulkan, Metal, DX12) y una alternativa de renderizado por software con tiny-skia
  • 05Acciones async de primera clase mediante futures

Casos de uso

  • Crear una aplicación de escritorio multiplataforma usando solo Rust
  • Crear una herramienta o utilidad pequeña con una interfaz de aspecto nativo
  • Integrar un runtime de GUI independiente del renderer en un sistema existente
  • Explorar una arquitectura al estilo Elm en código de GUI para Rust

Inicio rápido

  1. 1

    Añade el crate iced a tu proyecto de Rust

  2. 2

    Lee el libro, la documentación y los ejemplos para obtener más información

Antes de usarlo

  • El README indica que Iced es actualmente un software experimental.
  • El README describe el proyecto como incipiente y señala que puede haber cambios incompatibles entre versiones.

Temas

Preguntas frecuentes

¿Qué es iced?
Una biblioteca de GUI multiplataforma para Rust con un modelo de programación sencillo, seguro en cuanto a tipos e inspirado en Elm. Iced es una biblioteca de GUI para Rust que permite crear interfaces de usuario para escritorio y web con una arquitectura al estilo Elm. Una interfaz se divide en estado, mensajes, una función view que representa el estado como widgets y una función update que reacciona a los mensajes modificando el estado. La biblioteca se encarga del diseño y del procesamiento de eventos, así que el código de la aplicación solo describe qué muestra la interfaz y cómo responde.
¿iced es gratuito? ¿Qué licencia tiene?
iced es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿iced sigue mantenido?
Mantenimiento activo. El último commit de iced fue el 21 oct 2026.
¿Para qué puedo usar iced?
Crear una aplicación de escritorio multiplataforma usando solo Rust Crear una herramienta o utilidad pequeña con una interfaz de aspecto nativo Integrar un runtime de GUI independiente del renderer en un sistema existente Explorar una arquitectura al estilo Elm en código de GUI para Rust
¿Cómo se instala iced?
Añade el crate iced a tu proyecto de Rust Lee el libro, la documentación y los ejemplos para obtener más información
¿Dónde consigo iced?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/iced-rs/iced

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

Proyectos relacionados