# com.hextantstudios.utilities

> This packages includes helpful runtime and editor additions to Unity.

Latest version **0.1.0** (published 2022-05-30) · 0 weekly downloads

## Install

```sh
npm install com.hextantstudios.utilities
pnpm add com.hextantstudios.utilities
yarn add com.hextantstudios.utilities
bun add com.hextantstudios.utilities
```

## Health

**Score 10/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; low quality score; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.1.0 |
| Published | 2022-05-30 |
| First published | 2022-05-30 |
| Weekly downloads | 0 |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Unpacked size | 46 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Hextant Studios |
| Maintainers | fangjun_zhou |
| Keywords | Utilities |

## Links

- npm: https://www.npmjs.com/package/com.hextantstudios.utilities
- npm.io page: https://npm.io/package/com.hextantstudios.utilities

## Recent versions

- 0.1.0 (latest) — 2022-05-30

## README

# Hextant - Utilities

This repository contains a collection of helpful runtime and editor classes for Unity. 

## Package Manager Installation

It can be installed from Unity's *Package Manager* using the following Git URL:

* [https://github.com/hextantstudios/com.hextantstudios.utilities.git](https://github.com/hextantstudios/com.hextantstudios.utilities.git)

## Embedded Installation

It can also be installed by cloning this repository into a Unity project's `Packages/` folder. This will allow for changes to be made to the package, but updates will need to be done manually using Git instead of Unity's *Package Manager*.

# Documentation

Documentation for these classes can be found below and in various articles on [HextantStudios.com](https://HextantStudios.com).

## Editor Singleton

A `ScriptableObject`-based singleton that can be used for GUI-less editor plug-ins. By deriving from `ScriptableObject`, non-static fields are persisted between script recompiles (domain reloads). 

* See [Singletons in Unity](https://hextantstudios.com/unity-singletons/) for additional details and several runtime implementations.

## Selection History

This editor plug-in derives from the `EditorSingleton` class allowing it to maintain a small history of recently selected objects that can be moved backward or forward through by pressing `F1` and `Shift+F1` (customize in *Edit/Shortcuts*).

* See [Selection History for Unity's Editor](https://hextantstudios.com/unity-selection-history/) for additional details.

## Log Compile Times

This simple plug-in for Unity's Editor logs how long it takes to compile script changes and perform domain reloads to quickly spot potential issues that can affect iteration times.

* See [Log Compile Times in Unity's Editor](https://hextantstudios.com/unity-log-compile-times/) for additional details.

## Settings

A `ScriptableObject`-based singleton that can be used to store project-wide or user-specific settings for editor plug-ins or project-wide settings for use at runtime. Settings can be easily exposed to the *Edit/Preferences* and *Edit/Project Settings* dialogs or modified manually by plug-ins. 

*Notes:*
* The derived settings class *must* be placed in a file with the same name as the class (`ScriptableObject` requirement).
* The user settings folder `Assets/Settings/Editor/User/` should be excluded from source control.

* See [Custom Runtime and Editor Settings in Unity](https://HextantStudios.com/unity-custom-settings)

---
_Source: https://npm.io/package/com.hextantstudios.utilities · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
