GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - CoderGamester/Unity-Services: This package contains a set of services to ease the development of a basic game architecture

BranchesTags
Open more actions menu

Latest commit

 

History

157 Commits
157 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
Editor
Editor
 
 
Runtime
Runtime
 
 
Samples~
Samples~
 
 
Tests
Tests
 
 
docs
docs
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
AGENTS.md
AGENTS.md
 
 
AGENTS.md.meta
AGENTS.md.meta
 
 
CHANGELOG.md
CHANGELOG.md
 
 
CHANGELOG.md.meta
CHANGELOG.md.meta
 
 
CLAUDE.md
CLAUDE.md
 
 
CLAUDE.md.meta
CLAUDE.md.meta
 
 
Editor.meta
Editor.meta
 
 
LICENSE.md
LICENSE.md
 
 
LICENSE.md.meta
LICENSE.md.meta
 
 
MIGRATION.md
MIGRATION.md
 
 
MIGRATION.md.meta
MIGRATION.md.meta
 
 
README.md
README.md
 
 
README.md.meta
README.md.meta
 
 
Runtime.meta
Runtime.meta
 
 
Tests.meta
Tests.meta
 
 
docs.meta
docs.meta
 
 
package.json
package.json
 
 
package.json.meta
package.json.meta
 
 

Repository files navigation

GameLovers Services

Small, composable Unity 6 services for installation, messaging, ticking, coroutines, pooling, persistence, RNG, time, commands, versioning, and Addressables workflows.

Unity License: MIT Version

When to use it

Use Services when you want independently selectable application services without adopting a full DI container. Use a scoped DI solution when you require hierarchical lifetimes or broad constructor injection. The package is pipeline-neutral.

Unity compatibility

Item Current policy
Minimum Unity version 6000.0
Reference streams 6000.0.x, 6000.3.x, 6000.5.x
Reference editors 6000.0.81f1, 6000.3.21f1, 6000.5.7f1 (primary)
Render pipeline Pipeline-neutral
Validation status Compatibility target; fresh matrix artifacts are required for a validated claim.

Install

Unity does not resolve Git dependencies transitively. Add the required Git packages explicitly; Addressables and the performance test framework resolve from the Unity registry.

{
  "dependencies": {
    "com.gamelovers.gamedata": "https://github.com/CoderGamester/Unity-GameData.git#1.0.3",
    "com.cysharp.unitask": "https://github.com/Cysharp/UniTask.git?path=src/UniTask/Assets/Plugins/UniTask#2.5.10",
    "com.gamelovers.services": "https://github.com/CoderGamester/Unity-Services.git#2.2.0"
  }
}

First success

Install a service once, resolve it through the same facade, and release only the resources your application owns:

using GameLovers.Services;
using UnityEngine;

public sealed class GameBootstrap : MonoBehaviour
{
    private TickService tickService;

    private void Awake()
    {
        tickService = new TickService();
        MainInstaller.Bind<ITickService>(tickService);
    }

    private void OnDestroy()
    {
        MainInstaller.CleanDispose<ITickService>();
    }
}

Clean<T> unregisters an instance. CleanDispose<T> disposes the registered service and unregisters it. Do not dispose a shared static facility unless this bootstrap exclusively owns it.

Services at a glance

Area Key API
Installation MainInstaller for one global interface; Installer for multi-interface binding
Messaging IMessageBrokerService pub/sub with explicit unsubscribe ownership
Frame work ITickService and ICoroutineService
Pools IPoolService and object-pool lifecycle hooks
State IDataService, ITimeService, IRngService, commands, and version data
Assets IAssetLoader, ISceneLoader, and AssetResolverService

Data storage is appropriate for small, non-secret local state. DataService persists through PlayerPrefs by default; pass FileDataStorage for atomic file saves, BrowserLocalDataStorage for WebGL saves that survive new builds, and an optional key prefix to scope saves per profile. See Data Service. Addressables handles must be released by the owner that acquired them; loading and instantiating have different release paths.

For Asset Resolver sample code, call AddConfigs through IAssetAdderService rather than the concrete resolver, and reference GameData directly from any asmdef that uses its public types.

Samples, docs, and support

Sample Focus
Services Playground Foundation services in a ready-made scene
Asset Resolver Typed Addressables asset lookup and importer tooling

Read docs, CHANGELOG.md, and MIGRATION.md. Report issues at Unity-Services.

About

This package contains a set of services to ease the development of a basic game architecture

Topics

architecture-componentscsharpgame-developmentgamedevobjectpoolservicesunityunity-packageunity3d

Resources

Readme
MIT license
Activity

Stars

6 stars

Watchers

2 watching

Forks

2 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.