Editor Utility for the Unity Engine

One principle advantage of type safety is catching errors at compile time.


TypeSafe brings this same advantage to your Unity-powered game when loading resources, scenes or using layers and tags.

Scripting in Unity often relies on naked-strings littered around your project.

TypeSafe replaces these strings with strongly-typed references to automatically generated classes, dramatically reducing the number of runtime errors caused by mistyping, moving or renaming.

[overview]

Use resources as if they were variables in code.

TypeSafe provides a strong-typed object for each resource which automatically loads the asset when assigned to a matching field, and provides an API for asynchronous-loading and caching.

[resources]

Modifying layer names in the editor will break your code. No more.

By using the TypeSafe generated symbols you will discover if editing your layer configuration has broken your code instantly. The LayerMask helper class makes it simple to combine multiple layer masks in code without bit-shifting or using NameToLayer.

[layers]

Conform to your style, not ours.

The class namespace, prefix, and suffix of the generated classes can be modified intuitively from the settings window. We'll make sure it doesn't conflict with any existing code or Unity classes. You can also exclude folders from the scan.

[customize panel]

We'll keep things up to date. No worries.

TypeSafe automatically keeps watch over your project and triggers a scan when it detects changes that will affect your code. Everything happens in the background, we won't interrupt your work.

[automatic]

Features

Typed References

The classes generated by TypeSafe have the exact asset type compiled in, so you won't accidentally load a material as a texture, or a sound as a prefab.

Safe References

TypeSafe scans your project for resources and generates static classes. If you move a resource, you will know immediately if your code is broken as a result.

Simple Loading

Loading a resource is as simple as assigning it to a field. The resource object will be transparently loaded on first use, and subsequent uses will use the same cached object, no need to cache resources yourself.

Asynchronous Rebuild

TypeSafe will regenerate the classes whenever it detects a relevant change to your project. The scan process occurs in the background while you work. No waiting for lengthy progress bars to finish.

Easy Iteration

Iterate over the contents of a resource folder and its subfolders, and filter by type.

Customizable

The prefix, postfix and namespace of the generated classes are fully customizable.

Intellisense

Nagivate your resources, tags, scenes and layers from Visual Studio or MonoDevelop.