Auto Singleton

Auto Singleton: The store’s simplest singleton tool, letting you create one in seconds!
Boasting advanced features, it’s perfect for projects of any scale—small or large.

Easy and Frictionless Creation
To make a class a singleton, simply decorate it with an attribute.
This makes it easy and extra fast to do. It also allows you to inherit from any MonoBehaviour or ScriptableObject-derived class!
You have the option to choose whether the attribute is inherited or not, enabling even faster iteration.

Clean and Efficient Workflow
Singleton assets are automatically generated in your project’s Assets folder!
MonoBehaviours are added to a new prefab, and ScriptableObjects are instantiated. You can define from scripts where to create them and how to name them, with the freedom to modify them from the editor too.
If you delete a singleton script, the associated asset is also deleted automatically. The tool manages everything, requiring no manual actions on your part!

High-Performance and Convenient Runtime API
Singleton instances are automatically instantiated at runtime, before any scene load, and you can easily access them at any point using an optimized static member.
You can also perform various operations, such as finding a singleton using a predicate, or even dynamically adding and removing singletons of any reference type (class) during play mode!

Complete Polymorphism Support
At runtime, you can select a singleton instance from a parent class or interface it implements.
Unlike other singleton pattern implementations, Auto Singleton does not tightly couple your code, making it compatible with or even a replacement for a dependency injection system.

Seamless User Experience
The tool works just the same in no reload on play mode.
Singleton assets are displayed in the project window with a unique icon.
You can see the list of singletons from the inspector, and enable/disable any of them with a simple click!
The package includes full sources, with complete comments/xml summaries on every public members.

Documentation and Help
The documentation is clear and comprehensive, and the demo showcases various use cases.
Contacting support via email guarantees a response within a day or less, and there is a public Discord community for additional assistance.

Regular Updates
This tool will receive updates to fix bugs and introduce new features.
If you enjoy Auto Singleton, please consider leaving a review. Your feedback helps improve it!

Buy The Asset
Auto Singleton is available at a regular price of 19.99$ here.

Changelogs
VERSION 1.1.0: (12/30/23)
• The tool now fully works with no reload on play mode enabled
• Can now add and remove singleton at runtime using new methods, Add and Remove, in the Singleton class
• Removed the Find method from the Singleton class (it still exists in the Singleton<T> class).
• Fixed a bug where singleton icons would not appear without an assembly reload
• Fixed a bug happening if you launched the project with compilation errors
• Demo and documentation modified to reflect those changes