Skip to content

Files

Latest commit

Jul 22, 2025
62c9462 · Jul 22, 2025

History

History

ModuleBase

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Jul 12, 2025
Feb 17, 2025
Jul 18, 2025
Feb 23, 2025
Jun 23, 2025
Mar 19, 2025
Jul 18, 2025
Mar 17, 2025
Jul 10, 2025
Mar 19, 2025
Jul 22, 2025

README.md

OpenShock Desktop Module Base

This module is the base for all OpenShock Desktop modules. It provides the basic structure and interfaces that all modules should implement.

Installation

dotnet add package OpenShock.Desktop.ModuleBase

Usage

You need to inherit the DesktopModuleBase class and add the DesktopModuleAttribute to your assembly.

A minimal module would look like this:

Note that the assembly attribute is needs to be outside a namespace to work.

using OpenShock.Desktop.ModuleBase;
using OpenShock.Desktop.ModuleBase.Navigation;

[assembly:DesktopModule(typeof(ExampleDesktopModule), "openshock.desktop.modules.examplemodule", "Example Module")]
namespace OpenShock.Desktop.Modules.ExampleModule;

public class ExampleDesktopModule : DesktopModuleBase
{
    public override IReadOnlyCollection<NavigationItem> NavigationComponents { get; } = [];
}

Or see the example module on how to use it.