{"id":19704221,"url":"https://github.com/rimurudev/monosingleton","last_synced_at":"2026-01-26T02:06:07.008Z","repository":{"id":244220204,"uuid":"814613264","full_name":"RimuruDev/MonoSingleton","owner":"RimuruDev","description":"Потокобезопасный singleton для Unity","archived":false,"fork":false,"pushed_at":"2024-08-31T19:39:17.000Z","size":9,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-29T14:35:39.465Z","etag":null,"topics":["mono-singleton","monosingleton","patterns","rimuru-dev","rimurudev","singleton","thread-safe","thread-safe-singleton","thread-safe-singleton-pattern"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RimuruDev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-13T10:54:47.000Z","updated_at":"2024-08-31T19:21:30.000Z","dependencies_parsed_at":null,"dependency_job_id":"775b73b3-e40b-4c33-8a37-97c84206b958","html_url":"https://github.com/RimuruDev/MonoSingleton","commit_stats":null,"previous_names":["rimurudev/monosingleton"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/RimuruDev/MonoSingleton","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RimuruDev%2FMonoSingleton","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RimuruDev%2FMonoSingleton/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RimuruDev%2FMonoSingleton/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RimuruDev%2FMonoSingleton/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RimuruDev","download_url":"https://codeload.github.com/RimuruDev/MonoSingleton/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RimuruDev%2FMonoSingleton/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28764555,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-26T00:37:26.264Z","status":"online","status_checked_at":"2026-01-26T02:00:08.215Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["mono-singleton","monosingleton","patterns","rimuru-dev","rimurudev","singleton","thread-safe","thread-safe-singleton","thread-safe-singleton-pattern"],"created_at":"2024-11-11T21:21:12.097Z","updated_at":"2026-01-26T02:06:06.975Z","avatar_url":"https://github.com/RimuruDev.png","language":"C#","readme":"# Unity MonoSingleton\n\nThis Unity base class provides a robust implementation of the Singleton pattern for MonoBehaviour-derived components. It\nensures that only one instance of the component exists in the scene and that it persists across scene loads.\n\n## Features\n\n- **Singleton Pattern**: Ensures that only one instance of the component exists in the scene.\n- **Auto-Initialization**: Automatically creates an instance if none exists.\n- **DontDestroyOnLoad**: Keeps the instance alive across scene loads.\n\n## Installation\n\n### Option 1: Install via Unity Package Manager\n\n1. Open Unity and go to `Window` \u003e `Package Manager`.\n2. Click the `+` button in the top-left corner.\n3. Select `Add package from git URL...`.\n4. Enter the following URL:```https://github.com/RimuruDev/MonoSingleton.git```\n\n5. Click `Add` to install the package.\n\n### Option 2: Install via Release Package\n\n1. Download the latest `.unitypackage` file from the [Releases](https://github.com/RimuruDev/MonoSingleton/releases)\n   page.\n2. In Unity, go to `Assets` \u003e `Import Package` \u003e `Custom Package...`.\n3. Select the downloaded `.unitypackage` file and import it into your project.\n\n## Usage\n\n1. Create a new class that inherits from `MonoSingleton\u003cT\u003e`, where `T` is the type of the inheriting class.\n2. Implement your custom logic in this class.\n\nExample:\n\n```csharp\nusing UnityEngine;\n\nnamespace YourNamespace\n{\n    public class GameManager : MonoSingleton\u003cGameManager\u003e\n    {\n        protected override void Awake()\n        {\n            base.Awake();\n            // Your initialization code here :D\n        }\n        \n        // Your custom methods here ;3\n    }\n}\n```\n\nThis will ensure that `GameManager` behaves as a singleton within your project, with a single instance that persists\nacross scene loads.\n\n## Contact\n\n- **Email**: [rimuru.dev@gmail.com](mailto:rimuru.dev@gmail.com)\n- **GitHub**: [RimuruDev](https://github.com/RimuruDev)\n- **LinkedIn**: [rimuru](https://www.linkedin.com/in/rimuru/)\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n---","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frimurudev%2Fmonosingleton","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frimurudev%2Fmonosingleton","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frimurudev%2Fmonosingleton/lists"}