Dutchskull.Aspire.Unity 0.0.1-alpha17

This is a prerelease version of Dutchskull.Aspire.Unity.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Dutchskull.Aspire.Unity --version 0.0.1-alpha17
                    
NuGet\Install-Package Dutchskull.Aspire.Unity -Version 0.0.1-alpha17
                    
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="Dutchskull.Aspire.Unity" Version="0.0.1-alpha17" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Dutchskull.Aspire.Unity" Version="0.0.1-alpha17" />
                    
Directory.Packages.props
<PackageReference Include="Dutchskull.Aspire.Unity" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Dutchskull.Aspire.Unity --version 0.0.1-alpha17
                    
#r "nuget: Dutchskull.Aspire.Unity, 0.0.1-alpha17"
                    
#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.
#:package Dutchskull.Aspire.Unity@0.0.1-alpha17
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Dutchskull.Aspire.Unity&version=0.0.1-alpha17&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Dutchskull.Aspire.Unity&version=0.0.1-alpha17&prerelease
                    
Install as a Cake Tool

⚠️ Experimental Project

This integration is highly experimental. It may change, break, or be abandoned at any time. Use at your own risk — there are no guarantees that development will continue.

Aspire Unity Integration

A .NET Aspire AppHost extension for integrating and controlling Unity3D projects.

This library makes it possible to bind Unity projects into your Aspire-powered applications. Currently, the integration focuses on starting and stopping Unity as part of your AppHost lifecycle. Future features will expand support for passing environment variables and deeper communication between Aspire services and Unity.

✨ Features

  • 🔗 Add a Unity3D project to your Aspire AppHost.
  • ▶️ Automatically start Unity when the AppHost starts.
  • ⏹ Stop Unity when the AppHost stops.
  • 🛠 Future support planned for environment variable injection and richer integration.

📦 Installation

1. Add the .NET Aspire Unity package to your AppHost project

dotnet add package Dutchskull.Aspire.Unity

2. Add the Unity side via Unity’s Package Manager

Open your Unity project and add the following Git-based dependency:

https://github.com/Dutchskull/Aspire.Unity3D.git?path=/AspireIntegration/Packages/AspireIntegration

Here’s how you could present it in the README with the updated signature:


🚀 Usage

Basic example

If you just want to add a Unity project with defaults:

var unity = builder.AddUnityProject("game", "..\\..\\AspireIntegration");

This will:

  • Register a Unity project named game.
  • Use the relative path ..\\..\\AspireIntegration as the Unity project folder.
  • Start Unity on the default URL http://127.0.0.1 and port 54021.

Optional arguments

The AddUnityProject method also supports additional parameters if you need more control:

public static IResourceBuilder<UnityProjectResource> AddUnityProject(
    this IDistributedApplicationBuilder builder,
    string name,
    string projectPath,
    string url = "http://127.0.0.1",
    int port = 54021,
    string? customUnityInstallRoot = null)
  • url → The base URL where the Unity project will be hosted (default: http://127.0.0.1) (Not supported to change yet).
  • port → The port Unity should listen on (default: 54021) (Not supported to change yet).
  • customUnityInstallRoot → (optional) Path to a custom Unity installation if you don’t want to use the default Unity install.

🔮 Roadmap

Planned improvements include:

  • Passing environment variables into Unity.
  • Richer communication between Aspire and Unity (logs).

🤝 Contributing

Contributions are welcome! Feel free to open issues or submit pull requests with improvements, bug fixes, or new features.

📜 License

MIT License © Dutchskull

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.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.0.1-alpha21 0 9/29/2025
0.0.1-alpha17 104 9/24/2025