logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class SerenityHubToolCatalog

    The single source of truth for every catalog-driven Hub view (Create, Validate, Browse, Advanced) and for search. Every entry mirrors a real [MenuItem("Tools/Serenity/...")] declaration in the project except the entries excluded below — coverage is verified mechanically by SerenityCatalogStalenessValidator, not by a hardcoded count here.

    Excluded by product/structural decision, not drift: Tools/Serenity/Export Package (Asset Store) and Tools/Serenity/Refresh Upgrade Artifacts (dev-only, being de-shipped separately), and Tools/Serenity/Hub itself (would create a recursive self-launch card). The isValidateFunction: true overload on ClassVirtualizer.cs's menu item collapses into the same entry as its non-validate sibling (Serenity.Localization.Installation.Settings.Editor.Hub.Catalog.SerenityHubToolCatalog.BuildCreateEntries, "Make Class Subclass-Friendly") — counted once, not twice.

    Tools/Serenity/Install Required Unity Packages and Tools/Serenity/Installation/Validate Installation are catalogued under Validate as open-tool cards (ValidatorKind = null): Home's status rows already deep-link into them, and neither fits the report+cache model (Install Packages mutates like Migration; Validate Installation has no RunAll-reachable report engine).

    The four "(JSON)" menu items (Validate/Project (JSON), Validate/Migration/Migrate to 1.3.0 (JSON), Create/UI/Theme Builder (JSON), Create/Services/Service Extension Creator (JSON)) are headless CI duplicates of an already-catalogued GUI tool, so they live under Advanced instead of their GUI sibling's category — the same treatment the design gives Validate/Project (JSON) as a "power-user duplicate".

    Tools/Serenity/Validate/Find FoundationSettings... is catalogued under Browse (product decision, UX feedback batch 9), NOT Validate where its own menu path lives — it is a lookup/search tool with no pass/fail concept, not a validator. This supersedes the original spec §5.2 open-tool-card placement; the menu path itself is unchanged since it still lives under the real Tools/Serenity/Validate/... menu.

    Inheritance
    object
    SerenityHubToolCatalog
    Inherited Members
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    Namespace: Serenity.Localization.Installation.Settings.Editor.Hub.Catalog
    Assembly: Serenity.UnityLocalization.Installation.Editor.dll
    Syntax
    public static class SerenityHubToolCatalog

    Properties

    Entries

    Declaration
    public static IReadOnlyList<SerenityHubToolEntry> Entries { get; }
    Property Value
    Type Description
    IReadOnlyList<SerenityHubToolEntry>
    In this article
    © 2026 Serenity. All Rights Reserved