Calabonga.Commandex.Engine 2.0.0

dotnet add package Calabonga.Commandex.Engine --version 2.0.0                
NuGet\Install-Package Calabonga.Commandex.Engine -Version 2.0.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Calabonga.Commandex.Engine" Version="2.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Calabonga.Commandex.Engine --version 2.0.0                
#r "nuget: Calabonga.Commandex.Engine, 2.0.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Calabonga.Commandex.Engine as a Cake Addin
#addin nuget:?package=Calabonga.Commandex.Engine&version=2.0.0

// Install Calabonga.Commandex.Engine as a Cake Tool
#tool nuget:?package=Calabonga.Commandex.Engine&version=2.0.0                

Calabonga.Commandex.Engine

This is a nuget-package for modular monolith application on WPF platform with plugins as modules. Engine and contracts library for Calabonga.Commandex. Contracts are using for developing a modules for Commandex Shell.

What is Calabonga.Commandex

The Calabonga.Commandex - This is an application on WPF-platform built with CommunityToolkit.MVVM for modules (plugins) using: launch and execute.

What is the Calabonga.Commandex can:

  • Find a modules .dll (plugins) in the folder you set up.
  • Launch or execute modules .dll (plughis) from GUI.
  • Get the results of the module's (plugis) work after they completed.

It's a complex solution with a few repositories:

  • Calabonga.Commandex.Shell → Command Executer or Command Launcher. To run commands of any type for any purpose. For example, to execute a stored procedure or just to copy some files to some destination.
  • Calabonga.Commandex.Commands → Commands for Calabonga.Commandex.Shell that can execute them from unified shell.
  • Calabonga.Commandex.Shell.Develop.Template → This is a Developer version of the Command Executer (Calabonga.Commandex). Which is created to runs commands of any type for any purposes. For example, to execute a stored procedure or just to co…
  • Calabonga.Commandex.Engine → Engine and contracts library for Calabonga.Commandex. Contracts are using for developing a modules for Commandex Shell.
  • Calabonga.Commandex.Engine.Processors → Results Processors for Calabonga.Commandex.Shell commands execution results. This is an extended version of the just show string in the notification dialog.

History of changes

v2.0.0 2024-11-19

  • Migration to NET9.0
  • Some summaries were updated (added)

v1.4.2 2024-11-05

The result for ConfirmationDialog as Func result added (delegate). Now you can use async/await for confirmation.

v1.4.1 2024-11-01

New feature implemented ConfirmationDialog. Now you can ask your user some confirmations:

[RelayCommand]
private void OpenLogsFolder()
    => _dialogService.ShowConfirmation("Open logs folder?", result =>
    {
        if (result.ConfirmResult != ConfirmationType.Ok)
        {
            return;
        }

        var path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "logs");

        if (!Path.Exists(path))
        {
            _dialogService.ShowNotification($"Folder not found: {path}");
            return;
        }

        Process.Start(new ProcessStartInfo
        {
            FileName = path,
            UseShellExecute = true,
            Verb = "open"
        });
    }, ConfirmationTypes.OkCancel);

v1.3.0 2024-10-12

  • The SettingsPath parameter was created to allow you to store the command's settings env-files in a separate folder
  • Summaries for some members were updated

v1.2.0 2024-10-09

  • Nugets dependencies versions updated
  • ServiceCollection extension created for DefaultResultProcessor registration in container
  • Base commands processing implementation updated for new type of the result creation available
  • IResultProcessor interface created as abstraction for pipeline processing
  • Some classes and interface was renamed
  • Some base commands property Result is marked as virtual

v1.1.0 2024-10-07

  • Dialog window size management improved for ObservableValidator too. Now, you can set up a size of the dialog window.

v1.1.0-beta.1 2024-10-03

  • Dialog window size management improved

v1.0.0 2024-10-01

  • First Release

v1.0.0-rc.17 2024-09-28

  • ParameterCommandexCommand getting parameter and setting parameter refactored. Property Parameter removed. For read data you can use ReadParameter() method. And for write - WriteParameter().
  • Some summaries added/updated

v1.0.0-rc.16 2024-09-16

  • UX refactored
    • Menu added
    • Shortcuts added
    • Three type of the command list view added
  • IDialogResult renamed to IViewModel
  • New property Tags added to ICommandexCommand for future commands groups management

v1.0.0-rc.15 2024-09-15

  • Restart Wizard command crash fixed.
  • NotificationDialog windows size fixed.

v1.0.0-rc.14 2024-09-14

  • Main window MinHeight and MinWitdth are set
  • Wizard window MinHeight and MinWidth are set
  • Wizard window UX management properties make as virtual
  • Some controls sizing improved
  • Nugets dependencies updated
  • Windows accent color is set for ActiveStep on Wizard dialog.

v1.0.0-rc.13 2024-09-13

  • Nugets versions updated
  • OnSetParameter() method created for IDialogResult
  • DialogService implementation moved into engine nuget
  • NotificationDialog implementation moved into engine nuget
  • Wizard component moved into engine nuget
  • AppSettings moved into engine nuget

v1.0.0-rc.11 2024-09-11

  • ShoeDialog() added override with special parameter for ViewModel
  • Nuget feed URL moved into configuration parameters

v1.0.0-rc.3 2024-08-14

  • Реализован новый тип команды Wizard для Commandex. Теперь можно формировать набор шагов, которые проходит команда при в выполнении.

  • Обновлен также Shell для Developer, чтобы иметь возможность запускать новый тип команд.

v1.0.0-beta.9 2024-08-02

  • Добавлена возможность управлять типом Window при отображении модального окна.

v1.0.0-beta.7 2024-07-31

  • Первая публичная сборка в nuget

Видео (Video)

В основном репозитории Calabonga.Commandex.Shell есть несколько видео с инструкциями и разъяснениями, как использовать Commandex. А также видео о том, какие типы команд существуют и как для Commandex создавать команды разных типов.

Product Compatible and additional computed target framework versions.
.NET net9.0-windows8.0 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Calabonga.Commandex.Engine:

Package Downloads
Calabonga.Commandex.Engine.Processors

Results Processors for Calabonga.Commandex commands execution results. This is an extended version of the just show string in the notification dialog.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.0.0 68 11/19/2024
2.0.0-beta.1 31 11/19/2024
1.4.2 94 11/5/2024
1.4.1 86 11/1/2024
1.3.0 98 10/12/2024
1.2.0 93 10/9/2024
1.2.0-beta.1 51 10/9/2024
1.1.0 79 10/7/2024
1.1.0-beta.2 49 10/3/2024
1.1.0-beta.1 51 10/3/2024
1.0.0 96 9/30/2024
1.0.0-rc.17 48 9/28/2024
1.0.0-rc.16 77 9/16/2024
1.0.0-rc.15 52 9/14/2024
1.0.0-rc.13 63 9/13/2024
1.0.0-rc.12 53 9/13/2024
1.0.0-rc.11 62 9/11/2024
1.0.0-rc.10 57 9/10/2024
1.0.0-rc.9 61 9/5/2024
1.0.0-rc.8 50 9/5/2024
1.0.0-rc.7 60 9/4/2024
1.0.0-rc.6 53 9/4/2024
1.0.0-rc.5 80 8/20/2024
1.0.0-rc.4 70 8/16/2024
1.0.0-rc.3 79 8/14/2024
1.0.0-beta.20 63 8/7/2024
1.0.0-beta.17 36 8/5/2024
1.0.0-beta.16 35 8/5/2024
1.0.0-beta.13 39 8/4/2024
1.0.0-beta.10 44 8/2/2024
1.0.0-beta.9 42 8/2/2024
1.0.0-beta.7 42 7/31/2024

NET9 migration