Repolode
iced-rs

iced-rs/iced

Кроссплатформенная GUI-библиотека для Rust с простой типобезопасной моделью разработки в духе Elm.

Звёзды
31,808
Форки
1,709
Открытые issues
512
Последний коммит
7 часов назад

Что это?

Iced — GUI-библиотека для Rust, с помощью которой можно создавать интерфейсы для десктопа и веба, используя архитектуру в стиле Elm. Интерфейс состоит из состояния, сообщений, функции view, которая отображает состояние в виде виджетов, и функции update, которая реагирует на сообщения, изменяя состояние. Библиотека берет на себя компоновку и обработку событий, поэтому в коде приложения нужно описать только то, что отображает интерфейс и как он реагирует.

Iced работает в Windows, macOS, Linux и Web. В библиотеку входят готовые виджеты, например поля ввода текста и прокручиваемые области; также можно создавать собственные виджеты. Для асинхронных действий предусмотрена полноценная поддержка на основе futures. Модульная архитектура отделяет runtime, не зависящий от рендерера, от самих рендереров: iced_wgpu использует wgpu для Vulkan, Metal и DX12, а iced_tiny_skia служит программным запасным вариантом. Связать эти компоненты с операционной системой помогает оконная оболочка.

Авторы называют проект экспериментальным ПО, поэтому API может меняться от релиза к релизу.

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

  • 01Модель в стиле Elm с состоянием, сообщениями, функциями view и update и типобезопасными сообщениями
  • 02Поддержка Windows, macOS, Linux и Web
  • 03Готовые виджеты, включая поля ввода текста и прокручиваемые области, а также поддержка собственных виджетов
  • 04Рендереры на основе wgpu (Vulkan, Metal, DX12) и программный запасной вариант на tiny-skia
  • 05Полноценная поддержка асинхронных действий с использованием futures

Сценарии использования

  • Разработка кроссплатформенного десктопного приложения на чистом Rust
  • Создание небольшого инструмента или утилиты с интерфейсом в нативном стиле
  • Встраивание GUI-runtime, не зависящего от рендерера, в существующую систему
  • Изучение архитектуры в стиле Elm в GUI-коде на Rust

Быстрый старт

  1. 1

    Добавьте crate iced в свой проект на Rust

  2. 2

    Чтобы узнать больше, прочитайте книгу, документацию и примеры

Что важно знать

  • В README указано, что Iced в настоящее время является экспериментальным программным обеспечением.
  • В README проект описан как находящийся на ранней стадии; между версиями могут появляться несовместимые изменения.

Темы

Частые вопросы

Что такое iced?
Кроссплатформенная GUI-библиотека для Rust с простой типобезопасной моделью разработки в духе Elm. Iced — GUI-библиотека для Rust, с помощью которой можно создавать интерфейсы для десктопа и веба, используя архитектуру в стиле Elm. Интерфейс состоит из состояния, сообщений, функции view, которая отображает состояние в виде виджетов, и функции update, которая реагирует на сообщения, изменяя состояние. Библиотека берет на себя компоновку и обработку событий, поэтому в коде приложения нужно описать только то, что отображает интерфейс и как он реагирует.
iced можно использовать бесплатно? Какая у него лицензия?
iced распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
iced всё ещё поддерживается?
Активно поддерживается. Последний коммит в iced — 21 окт. 2026 г..
Для чего можно использовать iced?
Разработка кроссплатформенного десктопного приложения на чистом Rust Создание небольшого инструмента или утилиты с интерфейсом в нативном стиле Встраивание GUI-runtime, не зависящего от рендерера, в существующую систему Изучение архитектуры в стиле Elm в GUI-коде на Rust
Как установить iced?
Добавьте crate iced в свой проект на Rust Чтобы узнать больше, прочитайте книгу, документацию и примеры
Где скачать iced?
Исходный код и инструкции по установке — на GitHub: https://github.com/iced-rs/iced

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты