Yoru 1.0.0-beta.1

This is a prerelease version of Yoru.
dotnet add package Yoru --version 1.0.0-beta.1
NuGet\Install-Package Yoru -Version 1.0.0-beta.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Yoru" Version="1.0.0-beta.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Yoru --version 1.0.0-beta.1
#r "nuget: Yoru, 1.0.0-beta.1"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Yoru as a Cake Addin
#addin nuget:?package=Yoru&version=1.0.0-beta.1&prerelease

// Install Yoru as a Cake Tool
#tool nuget:?package=Yoru&version=1.0.0-beta.1&prerelease

🌙 Yoru Engine

Flexible 2D game/application framework for crossplatform development

About

Yoru is a software development framework written in C#, designed for creating crossplatform apps and games. Backed by the capabilities of SkiaSharp, Yoru provides a direct approach towards developing scalable and production-ready software, that runs smoothly across all platforms. See the example project for a demonstration of Yoru's capabilities.

Structure

Applications made with Yoru have a simple structure, consisting of Application, Desktop and Mobile projects.

  • Application is the main project, where the application logic is written.
  • Desktop is the project for desktop applications, and is used to run the application on Windows, macOS and Linux.
  • Mobile is the project for mobile applications, and is used to run the application on iOS and Android.

Yoru provides an abstract Renderer class, that allows a single SkiaSharp canvas to be consistently used across all platforms. Audio, input, and other features undergo a similar process, allowing for a seamless development experience.

Platforms

Yoru was designed with the goal of allowing a single C# project to run smoothly across common operating systems, without requiring platform-specific code. Yoru utilises both OpenTK and .NET Maui to provide native support for Window, macOS, Linux, iOS and Android, and bridges platform-specific commands to a global interface for straightforward development.

The following platforms are (planned to be) supported by Yoru:

  • Windows 10+
  • macOS 10.12+
  • Linux (Ubuntu, Fedora, etc.)
  • iOS 11+
  • Android 5.0+

Installation

You may find the Nuget package Here.

.NET CLI

<h4><code>dotnet add package Yoru --prerelease</code></h4>

Common Issues

You may encounter missing library issues on Linux, usually for fontconfig. You should be able to find the development package for your distribution, otherwise you may use the following commands:

Debian

sudo apt install libfontconfig-dev

Arch

sudo pacman -S fontconfig

Fedora

sudo dnf install fontconfig-devel

Usage

More information and/or a wiki will be added later. For an example project, see the example project.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Yoru:

Package Downloads
Yoru.Templates

Templates for creating crossplatform Yoru applications

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.0-beta.1 54 5/30/2024
1.0.0-alpha.2 42 5/18/2024
1.0.0-alpha.1 37 5/1/2024
1.0.0-alpha.0 55 4/23/2024
0.1.0 146 3/8/2024

First beta release for Yoru Engine