Stratum is a lite stage and asset management framework, designed with Thunderstore in mind. Combined with Mason, they are an evolution of the pre-Thunderstore asset management framework, Deli.
For a more detailed explaination about the dual-project system, see the Mason docs. Stratum is a library, and as such, this repository is intended for developers.
Stratum has a Thunderstore package, otherwise it can be downloaded from the releases section.
Add the Stratum
NuGet package to your project. Be sure to copy the nuget.config file from this repository as well, because Stratum references libraries from BepInEx's NuGet source.
Inherit from StratumPlugin
and apply the usual BepInEx attributes. Then, implement the two stage callbacks. These callbacks pass an IStageContext<TRet>
specific to your plugin, to which you can add loaders and access other plugins' contexts.