How vasylkhreptak/projecttemplate works
This is a reusable Unity project template: its documented workflow organizes application flow into project-, menu-, and gameplay-level state machines, each responsible for initialization and loading in its context. Global services live in a project scope, while scenes receive isolated scopes; VContainer provides dependency injection, and a centralized window system manages UI screens. The tree also contains reusable runtime plugins for audio, pooling, health, banks, and value properties. No application source excerpts were available, so links among those plugins and the documented app subsystems are not inferred.
Main entry points: Assets Project State Machine
Components 17
Application Flow
- Project State Machine
Assets - Main Menu State Machine
Assets - Gameplay State Machine
Assets
Scopes And UI
- Project Scope
Assets - Scene Scopes
Assets - VContainer DI
Assets - Window System
Assets - UI Screens
Assets
Runtime Services
- Audio Service
Assets/Plugins/AudioService/AudioService.cs - ID Service
Assets/Plugins/AudioService/Services/ID/IDService.cs - Object Pools
Assets/Plugins/ObjectPoolSystem/ObjectPools.cs
Runtime Primitives
- Health
Assets/Plugins/Health/Health.cs - Numeric Banks
Assets/Plugins/Banks/Core/BaseBank.cs - Clamped Banks
Assets/Plugins/Banks/Core/BaseClampedBank.cs - Min-Max Values
Assets/Plugins/MinMaxProperties/Core/MinMaxProperty.cs - Unity Extensions
Assets/Plugins/Extensions
Other components
- Unity Application
Connections 8
- Unity Application → Project State Machine: starts flow
- Project State Machine → Main Menu State Machine: coordinates flow
- Project State Machine → Gameplay State Machine: coordinates flow
- Project State Machine → Project Scope: uses global scope
- Scene Scopes → Project Scope: isolate dependencies
- VContainer DI → Project Scope: injects dependencies
- VContainer DI → Scene Scopes: injects dependencies
- Window System → UI Screens: opens and closes