Shared UI Toolkit library for building consistent Ekioo inspectors and editor windows — with a unified style system.Ekioo Editor Core is the shared foundation used by all Ekioo packages to build consistent, polished editor interfaces in Unity. It provides a centralised style system, a library of ready-to-use UI Toolkit components for both EditorWindow and CustomEditor, and a sparkline renderer — all designed to be dropped into any in-house or third-party Unity toolset.The package ships a Style Showcase sample that demonstrates every visual primitive interactively, inside a live EditorWindow and a CustomEditor, with real-time Play Mode polling.Who is this for? Any Unity developer or team building their own editor tools, custom inspectors, or Asset Store packages who wants a solid, theme-aware visual foundation without reinventing the wheel. The package has no runtime footprint — it is 100% Editor-only and adds zero overhead to builds.What is included?A complete colour/typography/spacing palette that automatically adapts to Unity's light and dark themesPre-built CustomEditor components: section headers, read-only rows, metadata rows, action buttons, and a Runtime foldout that disables itself outside Play ModePre-built EditorWindow components: titled sections, badges, toggle pills, item rows, toolbar, status barA custom VisualElement that renders a data sparkline with grid lines, fill area, and a terminal dotA dependency-check mechanism for packages that need to declare optional or required dependenciesA fully documented, interactive sample importable directly from the Package ManagerUI framework: Unity UI Toolkit (UIElements) — no UXML or USS files required, all layout is code-drivenTheme-aware: all colours reference EkiooWindowStyle constants that are calibrated for both Editor light and dark themes; no manual theme detection neededEkiooWindowStyle: single source of truth for colours (Bg, Accent, ActiveColor, DoneColor, RemoveColor, TextTitle, TextMuted, BorderColor, …), font sizes (FontSizeXS → FontSizeHeading), spacing (SpaceXS → SpaceXXL), and border radii (RadiusSm, RadiusMd, RadiusBadge, RadiusPill)EkiooInspectorBuilder: SectionLabel, Separator, ReadOnlyRow, MetaRow, ActionButton, RuntimeContainer — all returning VisualElement and composable without subclassingEkiooWindowBuilder: BuildSection, Badge, BuildTogglePill, FlexRow, ItemRow, Divider, ToolbarContainer, StatusBar, AccentDot — all returning VisualElementEkiooSparklineElement: custom VisualElement drawn with Painter2D; call SetSamples(float[], Color) to update — supports grid lines, fill gradient, zero line, and terminal dotDependencyChecker: static Require(packageId, displayName, url, sentinelTypeName) called from an [InitializeOnLoad] class; shows a one-time informational dialog per Unity session if a dependency is missingAssetDatabaseHelper: GetAssets() — finds all ScriptableObject assets of a given type across the entire project without writing GUID queries by handAssembly: Ekioo.Editor.asmdef, autoReferenced: true, includePlatforms: ["Editor"] — zero runtime overhead, does not appear in buildsUnity: 6000.0 (Unity 6) or laterRender pipeline: compatible with Built-in, URP, and HDRP (Editor-only, no rendering dependency)Sample: "Style Showcase" — importable from Package Manager; includes an EditorWindow, a CustomEditor, a demo MonoBehaviour, and a demonstration sceneGitHub Copilot (GPT-4o / Claude Sonnet) was used throughout the development of this package as a coding assistant inside VS Code. Its contributions included:Generating boilerplate for UI Toolkit components and helping iterate on layout and style choicesDrafting and refining XML documentation comments and README content in both French and EnglishSuggesting naming conventions and code structure that align with the Ekioo package guidelinesReviewing code for potential issues (unused members, missing disposals, thread-safety in Editor code)All generated code was reviewed, tested, and validated by the author before inclusion. The final architecture, visual design decisions, and API surface are the author's own work.




