cscore is a lightweight minimal-footprint library providing commonly used helpers, patterns and generic building blocks for all your projects!
Free for now (might change in the future)
Visit https://github.com/cs-util-com/cscore for a complete overview and examples!
Feature Summary
* Log - A minimalistic logging wrapper
* EventBus - Publish and subscribe to global events from anywhere in your code. Sends 1 million events in under 3 seconds with minimal memory footprint!
* Injection Logic - A simple inversion of control pattern that does not rely on magic. Relies on the EventBus system, so its super fast as well!
* JSON Parsing - Reading and writing JSON through a simple interface. The default implementation uses Json.NET to ensure high performance
* REST Extensions - Extensions to simplify sending REST requests in as few lines as possible without limiting flexibility
* Directory & File Extensions - To simplify handling files, folders and persisting data
* Common String extension methods demonstrated in StringExtensionTests.cs
* Many other helpful extension methods best demonstrated in HelperMethodTests.cs
Additional Unity Components
* GameObject.Subscribe & MonoBehaviour.Subscribe - Listening to events while respecting the lifecycle of Unity objects
* MonoBehaviour Injection & Singletons - Using the injection logic to create and access Unity objects
* The Link Pattern - Making it easy to connect prefabs with code (and by that separate design & UI from your logic)
* MonoBehaviour.ExecuteDelayed & MonoBehaviour.ExecuteRepeated - Executing asynchronous actions delayed and/or repeated
* UnityWebRequest.SendV2 - UnityWebRequest extension methods
* PlayerPrefsV2 that adds Bool as a type and encrypted strings, see PlayerPrefsV2Tests.cs for examples
This asset uses DiffMatchPatch, FuzzySearchFuze, Magick.NET, cscore under Apache-2.0; Json.NET, SharpZipLib, System.Collections.Immutable, UltraLiteDB under MIT, parallel-extensions-extras under Microsoft Limited Public License version 1.1, SafeStbImageSharp under Public Domain, Zio under BSD 2. See Third-Party Notices.txt file in package for details.