Skip to content
User Guide
DOC

User Guide

A powerful customizable dashboard tool for Unity that helps you organize and manage your ScriptableObjects with style.

You have multiple ways to access Dashly depending on your needs:

Open Dashly from the main menu or with the keyboard shortcut:

Tools > Latin Tools > ☰ Dashly Dashboard

💡 Quick shortcut: Press Ctrl/Cmd + M (default) to open the Dashboard.

Main Dashly Dashboard view showing categories and sections

You can open categories directly from a scene in the Inspector:

  1. Add the Dashboard Opener component to any GameObject.

  2. Drag a DashlyCategory into the field or search it directly.

  3. Click Open Dashboard to instantly open the selected category (you can force it to open in a new window).

Dashboard Opener inspector showing how a category is linked

Dashly supports multiple Profiles, helping you split game data by department (for example, Design, Art, Audio) or other contexts.

  1. When Dashly opens, access the Profile Selector by pressing the profile/settings button (⚙️) and the Change Profile option.

    Profile selector in Dashly Dashboard
  2. Click Create New Profile or edit an existing one.

  3. You can assign a Name, Emoji Icon, Primary Color, and its related categories.

    Profile editor in Dashly Dashboard showing customization options
  4. Switch quickly between profiles in the main dashboard.

Profile selector in Dashly Dashboard
  1. Click the Settings (⚙️) icon in the header.

  2. Click ➕ Add Category.

    Add category in Dashly Dashboard
  3. The category is automatically added to your configuration.

Category editor in Dashly Dashboard showing customization options

Each category supports:

PropertyDescription
NameName displayed in the sidebar
IconEmoji for visual identification (📦, ⚙️, 👥, 🎮, etc.)
DescriptionOptional extra context
SectionsContent structure inside the category
  • 📦 Inventory/Items
  • ⚙️ Settings/Configuration
  • 👥 Characters/NPCs
  • 🎮 Game mechanics
  • 🎨 Art/Visual
  • 🔊 Audio/Sound
  • 🗺️ Levels/Maps
  • 📊 Analytics/Data

Sections help you organize ScriptableObjects inside each category.

Section editor in Dashly Dashboard showing customization options
  1. Select a category in the Inspector.
  2. Go to the Content Sections block.
  3. Click ➕ Add Section.
  4. Enter a section name.
  5. The new section appears collapsed by default.

Click the arrow to expand and:

  • Rename the section.
  • Add or remove ScriptableObjects.
  • Reorder elements.

Use the ⋮⋮ handle on the left side to reorder with drag and drop.

Reorder sections with drag and drop in Dashly category editor

Press ✕ Remove in the section header and confirm deletion.


Dashly lets you add two major content types into your sections: ScriptableObjects and Custom Content (code-driven content).

Add content in a Dashly section

You have three ways to add your ScriptableObject data:

  1. Expand a section in the category editor.

  2. Drag ScriptableObject(s) from the Project window.

  3. Drop them into the Drop Area.

    Add ScriptableObjects to a Dashly section using drag and drop
  4. You can add multiple objects in one action.

  1. Expand a section.

  2. Click + Add ScriptableObject.

  3. Use the object picker to select the asset.

  4. Repeat to add more objects.

For each added ScriptableObject, you can:

  • 📍 Focus: highlight the asset in the Project window.

  • 🗑️ Remove: remove it from the section (without deleting the asset).

  • View Details: inspect properties inline.


You can integrate code-generated interfaces directly into Dashly sections (useful for custom tools).

Add Custom Content to a Dashly section
  1. Create a C# class that inherits from DashlyContentData.

  2. Add the [DashlyContent("Name", "Icon")] attribute above the class.

  3. Define the base methods, returning the MethodInfo that renders content.

  4. Go to the Category Inspector and, in your Dashly section, press + Add Custom Content.

  5. Any class tagged this way will be detected automatically.

Below is a complete code block you can use as a base to create a custom view:

using UnityEngine;
using UnityEngine.UIElements;
using LatinTools.Dashly;
using System.Reflection;
// 1. Add the attribute so Dashly can detect it
[DashlyContent("Test Tool", "🔧", Description = "My custom panel.")]
public class MyTestCustomContent : DashlyContentData
{
// 2. Override metadata for how the component appears in its header
public override Data GetData()
{
return new Data
{
Title = "Test Tool",
Icon = "🔧",
Description = "Adjust the master variables in this section.",
// IMPORTANT: Send the reference to the method that will draw the UI
DrawContentFunc = GetMethodInfoOf(nameof(DrawContent)),
AccentColor = new Color(0.15f, 0.65f, 0.9f)
};
}
// 3. Define visual content using UI Toolkit
public static void DrawContent(DashlyContentContext context)
{
var label = new Label("Hello world from code!");
label.style.fontSize = 16;
label.style.color = new StyleColor(Color.white);
label.style.marginBottom = 10;
var notifyButton = new Button(() =>
{
Debug.Log("Running action from tool!");
})
{ text = "Press Button" };
// Add everything to the root assigned to your section
context.RootElement.Add(label);
context.RootElement.Add(notifyButton);
}
}

Dashly allows full customization through its preferences system.

Preferences screen to customize theme and layout in Dashly
GroupOptions
Color ThemePrimary Color, Secondary Color
Layout SettingsSidebar Width (180-300px), Header Height (40-60px), Content Margin (8-32px)
System SettingsMax recent items configuration and Auto-load Profile.
Home BannerChoose or change the logo shown on the welcome screen.

Main Dashly Dashboard view showing categories and sections

At startup, or with no tabs open, you get a quick screen:

  • Provides quick access to Documentation and Support.
  • Recent Categories (session-scoped) let you return to work instantly.
  • You can change the maximum number of shown entities in Preferences.
  • It is accessible by clicking the DASHLY title in the sidebar (even when minimized).

Any save action, successful section load, error, or other interaction triggers a temporary, self-explanatory visual notification (green, amber, red) on the top side.

Sample floating notifications in Dashly

As part of your custom logic (using the DashlyContentContext parameter in methods), you have full access to the Editor notification system. Here is how to integrate status reporting with context.ShowNotification:

public static void DrawContent(DashlyContentContext context)
{
var saveButton = new Button(() =>
{
// Run logic...
bool operationSuccess = true;
if (operationSuccess) {
// Success notification (Message, Type, Duration ms)
context.ShowNotification("Data saved successfully!", NotificationType.Success, 3000f);
} else {
// Error notification
context.ShowNotification("Error while processing data.", NotificationType.Error, 3000f);
}
})
{ text = "Save and Notify" };
var warnButton = new Button(() =>
{
// Warning notification
context.ShowNotification("Do not forget to restart the scene.", NotificationType.Warning, 4500f);
})
{ text = "Warning" };
context.RootElement.Add(saveButton);
context.RootElement.Add(warnButton);
}
Multi-tab sample in Dashly

Work with multiple categories in parallel:

  • Open in New Tab: right-click on a category.
Option to open categories in new tabs inside Dashly
  • Switch Tabs: click tab headers or use Ctrl/Cmd + Tab and Ctrl/Cmd + Shift + Tab.
  • Close Tab: button or Ctrl/Cmd + W.
  • Duplicate and more: use the top context menu on your tab to duplicate windows and close all others at once.
Tab management options in Dashly Real-time search in Dashly
  1. Press 🔍 Search in the sidebar header.

  2. Type your term.

  3. Matches in categories/sections are highlighted.

    Search results in Dashly
  4. Non-matching elements are hidden.

  5. Press 🔍 again or clear the field to restore the view.

Search highlights:

  • Yellow background indicates matches.
  • Section navigators auto-expand when there is a match.

When a category has multiple sections:

  1. The Section Navigator appears below the active category.

  2. Click a section name to jump directly.

    Section navigator in Dashly to quickly jump to the desired section
  3. Content scrolls smoothly.


ShortcutAction
Ctrl/Cmd + MOpen Dashly Dashboard window
Ctrl/Cmd + TabSwitch to next open tab
Ctrl/Cmd + Shift + TabSwitch to previous tab
TabHide/Show (toggle) sidebar state
Middle Click / Ctrl + Click(On category) Open category in a new tab