A collection of tools to simplify writing public API components in Unity.
npm install io.extendreality.malimbe[![Malimbe logo][Malimbe-Image]](#)
> ### Malimbe
> A collection of tools to simplify writing public API components for the Unity software.
[![Release][Version-Release]][Releases]
[![License][License-Badge]][License]
[![Backlog][Backlog-Badge]][Backlog]
[Tooltip] attribute as well as weavers that help with ensuring the API is able to be called from UnityEvents and more.
Packages directory of your project.
manifest.json in a text editor.
https://registry.npmjs.org/ is part of scopedRegistries.
io.extendreality is part of scopes.
io.extendreality.malimbe to dependencies, stating the latest version.
X.Y.Z stated here is to be replaced with [the latest released version][Latest-Release] which is currently [![Release][Version-Release]][Releases].
json
{
"scopedRegistries": [
{
"name": "npmjs",
"url": "https://registry.npmjs.org/",
"scopes": [
"io.extendreality"
]
}
],
"dependencies": {
"io.extendreality.malimbe": "X.Y.Z",
...
}
}
`
* Switch back to the Unity software and wait for it to finish importing the added package.
* Anywhere in your Unity software project add a [FodyWeavers.xml file][FodyWeavers].
* Configure the various weavers Malimbe offers, e.g.:
`xml
Error, Warning
^Zinnia
^Assembly-CSharp
"/>
`
As with any Fody weaver configuration the order of weavers is important in case a weaver should be applying to the previous weaver's changes.
In case there are multiple configuration files all of them will be used. In that scenario, if multiple configuration files specify settings for the same weaver, a weaver will be configured using the values in the _last_ configuration file found. A warning is logged to notify of this behavior and to allow fixing potential issues that may arise by ensuring only a single configuration exists for any used weaver.
Additional weavers are supported. To allow Malimbe's Unity software integration to find the weavers' assemblies they have to be included anywhere in the Unity software project or in one of the UPM packages the project uses.
$3
The package will show up in the Unity Package Manager UI once the above steps have been carried out. From then on the package can be updated by selecting the package in the Unity Package Manager and clicking on the Update` button or using the version selection UI.