Skip to content

Quick Start

dotnet add package Umbraco.Community.SimpleWorkspaceViews

By default this will display in the content section for Admins only.

using Umbraco.Community.SimpleWorkspaceViews.Core;
public class BasicWorkspaceView : SimpleWorkspaceView { }
  • Your view must go in /Views/WorkspaceView
  • You view must be the name of your C# class (without WorkspaceView)
    • For example: BasicWorkspaceView.cs => /Views/WorkspaceView/Basic.cshtml
@inherits Umbraco.Community.SimpleWorkspaceViews.WorkspaceViewViewPage
<uui-box headline="Hello Umbraco">
<p>My Workspace View is: @Model.WorkspaceView.Alias</p>
</uui-box>

By adding a constructor you can define permissions, where to display and the name of the Workspace View.

using Umbraco.Community.SimpleWorkspaceViews.Core;
public class ExampleWorkspaceView : SimpleWorkspaceView
{
public override int Weight => 500;
public override string Name => "Example Workspace View";
public override string Icon => "favorite";
public override string[] Workspaces => ["Umb.Workspace.Media", "Umb.Workspace.Document"];
public override string Label => "🦄";
}
  • Your View Component should match the name of your C# class plus ViewComponent.cs
    • For example: BasicWorkspaceView.cs => BasicWorkspaceViewViewComponent.cs
  • Your View Component must inherit either:
    • WorkspaceViewViewComponent
    • WorkspaceViewAsyncViewComponent
public class ExampleWorkspaceViewViewComponent : WorkspaceViewAsyncViewComponent
{
public override Task<IViewComponentResult> InvokeAsync(WorkspaceViewModel model)
{
// Complex business logic
var viewModel = await _service.CreateViewModel(model);
// ...
return View("~/Views/MyPath/MyView.cshtml", viewModel);
}
}
Copyright © 2026 jcdcdev