C#과 XAML로 데스크톱, 모바일, 임베디드 및 WebAssembly 앱을 만드는 크로스 플랫폼 .NET UI 프레임워크입니다.
wieslawsoltes/FerroUI
Avalonia 아키텍처를 이식하고 스타일 속성, 데이터 바인딩, XAML 마크업, 다양한 테마를 제공하는 크로스 플랫폼 Rust UI 프레임워크입니다.
- 스타
- 240
- 포크
- 15
- 열린 이슈
- 22
- 마지막 커밋
- 3시간 전
어떤 프로젝트인가요?
FerroUI는 Avalonia UI 아키텍처를 이식한 Rust용 retained-mode UI 프레임워크입니다. 객체 모델, 컨트롤 계약과 동작을 유지하므로 해당 모델을 기반으로 작성된 애플리케이션, 테마와 XAML을 그대로 가져와 사용할 수 있습니다. 스타일 속성 시스템, 논리 및 시각 트리, 라우트 이벤트, 레이아웃, 데이터 바인딩, 컨트롤 테마(Fluent, Simple, WinUI 3, macOS 26, Material 3), 컴포지션 기반 렌더러를 제공합니다.
렌더링은 교체 가능한 백엔드를 사용합니다. 기본이자 참조 렌더러인 Skia는 텍스트 셰이핑에 HarfBuzz를 사용하며, 실험적인 Vello 백엔드도 제공됩니다. macOS, Windows, Linux(X11, Wayland, framebuffer), iOS, Android와 WebAssembly를 통한 브라우저를 대상으로 합니다. 또한 XAML의 대안으로 선언형 Rust API(`ferroui-view`)와 실행 중인 애플리케이션을 살펴볼 수 있는 개발자 도구를 포함합니다.
프로젝트 버전은 0.4.0입니다. README에 따르면 플랫폼 지원 여부는 다양한 실제 기기보다 주로 CI, 가상 머신과 시뮬레이터에서 검증됩니다.
핵심 기능
- 01상속, 값 강제 변환, 변경 알림을 지원하는 스타일 속성 시스템
- 02변환기, 다중 바인딩, 유효성 검사와 템플릿을 지원하는 데이터 바인딩
- 03빌드 시 컴파일하거나 실행 시 로드할 수 있는 XAML 마크업
- 04HarfBuzz 텍스트 셰이핑을 지원하는 Skia 등 교체 가능한 렌더링 백엔드
- 05시그널, 컴포넌트, 핫 리로드를 지원하는 선언형 Rust UI API
- 06트리, 속성, 레이아웃을 살펴볼 수 있는 개발자 도구
활용 사례
- XAML 스타일의 워크플로로 크로스 플랫폼 데스크톱 애플리케이션을 Rust로 개발
- Avalonia 기반 UI 코드나 테마를 Rust 코드베이스로 포팅
- iOS, Android 또는 브라우저도 대상으로 하는 Rust 애플리케이션 제작
- 선언형 XAML 없는 Rust UI API 실험
빠른 시작
- 1
Rust 1.89 이상이 설치되어 있는지 확인합니다
- 2
Cargo.toml의 종속성에 FerroUI 크레이트를 추가합니다
- 3
저장소 체크아웃에서 Designer Studio를 실행합니다
cargo run -p designer-studio
사용 전 알아둘 점
- 버전 0.4.0에서는 0.5.0에서 공개 API가 변경될 수 있습니다.
- 첫 빌드에서는 Skia를 다운로드하거나 컴파일하고 HarfBuzz를 소스에서 빌드하므로 시간이 오래 걸릴 수 있습니다.
- 일부 플랫폼은 실제 기기가 아니라 CI, 가상 머신 또는 시뮬레이터에서만 검증되었습니다.
- Linux 프레임버퍼 지원은 가상 기기에서만, iOS는 시뮬레이터에서만 테스트되었습니다.
포함된 컬렉션
토픽
자주 묻는 질문
- FerroUI은(는) 무엇인가요?
- Avalonia 아키텍처를 이식하고 스타일 속성, 데이터 바인딩, XAML 마크업, 다양한 테마를 제공하는 크로스 플랫폼 Rust UI 프레임워크입니다. FerroUI는 Avalonia UI 아키텍처를 이식한 Rust용 retained-mode UI 프레임워크입니다. 객체 모델, 컨트롤 계약과 동작을 유지하므로 해당 모델을 기반으로 작성된 애플리케이션, 테마와 XAML을 그대로 가져와 사용할 수 있습니다. 스타일 속성 시스템, 논리 및 시각 트리, 라우트 이벤트, 레이아웃, 데이터 바인딩, 컨트롤 테마(Fluent, Simple, WinUI 3, macOS 26, Material 3), 컴포지션 기반 렌더러를 제공합니다.
- FerroUI은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- FerroUI은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- FerroUI은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. FerroUI의 마지막 커밋은 2026년 11월 7일입니다.
- FerroUI은(는) 어디에 사용할 수 있나요?
- XAML 스타일의 워크플로로 크로스 플랫폼 데스크톱 애플리케이션을 Rust로 개발 Avalonia 기반 UI 코드나 테마를 Rust 코드베이스로 포팅 iOS, Android 또는 브라우저도 대상으로 하는 Rust 애플리케이션 제작 선언형 XAML 없는 Rust UI API 실험
- FerroUI는 어떻게 설치하나요?
- Rust 1.89 이상이 설치되어 있는지 확인합니다 Cargo.toml의 종속성에 FerroUI 크레이트를 추가합니다 저장소 체크아웃에서 Designer Studio를 실행합니다: cargo run -p designer-studio
- FerroUI은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/wieslawsoltes/FerroUI
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
WinUI는 Windows 데스크톱 앱을 만들기 위한 Microsoft의 최신 컨트롤 및 스타일 UI 계층이며, WinUI 3는 Windows App SDK에 포함되어 제공됩니다.
선언형 DSL을 중심으로 GLFW/SDL2 윈도우 백엔드와 OpenGL/Vulkan 렌더링을 지원하는 크로스 플랫폼 C++17 UI 프레임워크입니다.
자체 렌더러, 텍스트, 레이아웃, 스프링 애니메이션을 갖춘 macOS·Windows·Linux·웹용 네이티브 GPU 렌더링 Rust UI 프레임워크입니다.
하나의 코드베이스로 데스크톱, 모바일, 임베디드 플랫폼에서 실행되는 GUI 앱을 만드는 오픈소스 Python 프레임워크입니다.
GPU로 그리는 네이티브 UI 또는 시스템 webview의 웹 페이지를 사용해 데스크톱 앱을 만드는 Zig 툴킷입니다.