SaintsField is a Unity extension tool for enhancing inspector and data serialization.
Unity: 2022.2 or higher
(Yes, the project name comes from, of course, Saints Row 2)
- Works on deep nested fields!
- Works with custom type drawer (either it's IMGUI or UI Toolkit implemention)
- Allow stack on many cases. Only attributes that modified the label itself, and the field itself can not be stacked. All other attributes can mostly be stacked. All decorative attributes can work with 3rd part attributes
- Allow dynamic arguments in many cases
- Serialize dictionary, interface, hashset and more
- Easily group different fields with box
SaintsField is the Top 3 updated Unity Package in 2025 openupm. Hooray!
Note
Since 5.19.0, SaintsField's IMGUI implemention is back to support. But IMGUI support is not in a high priority
-
Using Unity Asset Store
-
Using OpenUPM
openupm add today.comes.saintsfield
-
Using git upm:
add to
Packages/manifest.jsonin your project{ "dependencies": { "today.comes.saintsfield": "https://github.com/TylerTemp/SaintsField.git", // your other dependencies... } }
-
Using git upm (Unity UI):
Window-Package Manager- Click
+button,Add package from git URL - Enter the following URL:
https://github.com/TylerTemp/SaintsField.git -
Using a
unitypackage:Go to the Release Page to download a desired version of
unitypackageand import it to your project -
Using a git submodule:
git submodule add https://github.com/TylerTemp/SaintsField.git Packages/today.comes.saintsfield
If you have DOTween installed
- Please also ensure you do:
Tools-Demigaint-DOTween Utility Panel, clickCreate ASMDEF - Or disable related functions with
Tools-Saints Field-Disable DOTween Support - If you can not find this menu, please read the "Add a Macro" section about how to manually disable DOTween support in SaintsField.
[Optional] To use the full functions of this project, please also do: Tools - Saints Field - Enable SaintsEditor. Note this will break your existing Editor plugin like OdinInspector, NaughtyAttributes, MyToolbox, Tri-Inspector.
If you need to put this project under another folder rather than Packages/today.comes.saintsfield, please also do the following:
- Create
Assets/Editor Default Resources/SaintsField. - Copy files from the project's
Editor/Editor Default Resources/SaintsFieldinto your project'sAssets/Editor Default Resources/SaintsField. If you're using a file browser instead of Unity's project tab to copy files, you may want to exclude the.metafile to avoid GUID conflict.
Troubleshoot
After installation, you can use Tools - Saints Field - Troubleshoot to check if some attributes do not work.
namespace: SaintsField
5.20.0
- Fix: More input can be applied by
GUIColor - Fix:
ArrowHandleCapcould not correctly pointing at the exactly point - Fix: Set a bit delay for
MinValue&MaxValueauto correction so when you have both but conflicted values, it now don't trigger a loop call (stack overflow) - Add:
CompInfoBoxto draw component top info boxes - Add:
CompTextto draw component top text withAboveTextbehavior
- General Attributes
- Label & Text
- Button
- Game Related
- Toggle & Switch
- Data Editor
- Numerical
- Animation
- Auto Getter
- Validate & Restrict
- Miscellaneous
DropdownOptionsDropdown/PairsDropdownFlagsDropdownAdvancedDropdownAdvancedOptionsDropdown/AdvancedPairsDropdownMenuDropdownCustomContextMenuFieldCustomContextMenuValueButtonsOptionsValueButtons/PairsValueButtonsEnumToggleButtonsResizableTextAreaLeftToggleResourcePathResourceFolderFieldDefaultExpandDefaultExpandAssetFolderAssetPreviewAboveImage/BelowImageParticlePlayButtonAddOnClickOnButtonClickOnEventColorPaletteSearchableDateTimeTimeSpanGuid
- Layout System
- Handles
- Component Header
- Data Types
- Addressable
- AI Navigation
- Spine
- DOTween
- Wwise
- I2 Localization
- SaintsEditor
- Extended Serialization
SaintsEditorWindow- Misc
- About GroupBy
EMode- Callback
- Syntax for Show/Hide/Enable/Disable/Required-If
- Saints XPath-like Syntax
- Add a Macro
- Auto Validator
- Use With Other Drawers
Thanks for the following generous donors:
- bilemedimkq donated on 2025-09-17








