Rayo.Rendering
0.1.8
dotnet add package Rayo.Rendering --version 0.1.8
NuGet\Install-Package Rayo.Rendering -Version 0.1.8
<PackageReference Include="Rayo.Rendering" Version="0.1.8" />
<PackageVersion Include="Rayo.Rendering" Version="0.1.8" />
<PackageReference Include="Rayo.Rendering" />
paket add Rayo.Rendering --version 0.1.8
#r "nuget: Rayo.Rendering, 0.1.8"
#:package Rayo.Rendering@0.1.8
#addin nuget:?package=Rayo.Rendering&version=0.1.8
#tool nuget:?package=Rayo.Rendering&version=0.1.8
Rayo
Rayo is a declarative, retained-mode UI library for .NET 10.
It is designed for building desktop and cross-platform UI with a code-first model, a retained visual tree, a styling system, and multiple rendering backends.
Highlights
- Declarative UI composition in C#
- Retained-mode rendering pipeline
- Signal-first reactive model
- Fluent API generated from
VisualElementproperties - Styling system with selectors, triggers, and transitions
- Multiple rendering backends:
Rayo.Rendering.OpenGLRayo.Rendering.SkiaSharpRayo.Rendering.Vulkan
- Hosting packages for desktop and Android
Package ecosystem
The repository currently publishes these NuGet packages together:
RayoRayo.FluentApiGeneratorRayo.Hosting.AbstractionsRayo.Hosting.AndroidRayo.Hosting.DesktopRayo.RenderingRayo.Rendering.OpenGLRayo.Rendering.SkiaSharpRayo.Rendering.Vulkan
All packages in the release set are versioned together from the same Git tag.
Quick example
using Rayo.Controls;
using Rayo.Layout;
var page =
new VStack()
.Spacing(12)
.Padding(24)
.Children(
new Label()
.Text("Hello from Rayo")
.FontSize(24),
new Button()
.Text("Click Me")
.Height(40)
);
Repository structure
- Rayo: core UI library
- Rayo.Rendering: rendering contracts and primitives
- Rayo.Rendering.OpenGL: OpenGL backend
- Rayo.Rendering.SkiaSharp: SkiaSharp backend
- Rayo.Rendering.Vulkan: Vulkan backend
- Rayo.Hosting.Desktop: desktop hosting
- Rayo.Hosting.Android: Android hosting
- Samples: sample applications
- Help: technical documentation
- Doc/NUGETS_GENERATION.md: NuGet release guide
Building locally
Restore and build the main library with the repository NuGet configuration:
dotnet restore Rayo/Rayo.csproj --configfile NuGet.Config
dotnet build Rayo/Rayo.csproj --no-restore
The solution file references missing projects in this environment, so direct project builds are the supported path.
Documentation
- Help/ARCHITECTURE.md
- Help/STYLE_ENGINE.md
- Help/FLUENT_EXTENSIONS.md
- Help/SOURCE_GENERATOR_NAMESPACE_MACROS.md
Samples
The repository includes sample applications such as:
GalleryFluentExamplesStyleDemoOpenGLViewVulkanViewCrossPlatformApp
License
Rayo is distributed under the MIT License.
See LICENSE for the full text.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- No dependencies.
NuGet packages (4)
Showing the top 4 NuGet packages that depend on Rayo.Rendering:
| Package | Downloads |
|---|---|
|
Rayo
Declarative retained-mode UI library for .NET built on Silk.NET. |
|
|
Rayo.Rendering.SkiaSharp
SkiaSharp rendering backend for Rayo. |
|
|
Rayo.Rendering.OpenGL
OpenGL rendering backend for Rayo. |
|
|
Rayo.Rendering.Vulkan
Vulkan rendering backend for Rayo. |
GitHub repositories
This package is not used by any popular GitHub repositories.