Plugfy.Core 1.0.15

dotnet tool install --global Plugfy.Core --version 1.0.15
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local Plugfy.Core --version 1.0.15
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=Plugfy.Core&version=1.0.15
                    
nuke :add-package Plugfy.Core --version 1.0.15
                    

logo_plugfy_core_foundation_256x55

Plugfy Core is an open-source framework developed by the Plugfy Foundation to simplify, standardize, and accelerate the development of complex systems. Its modular and scalable architecture enables the creation of flexible, dynamic, and highly reusable applications by efficiently and transparently integrating modules and business workflows.


The Origin of Plugfy

The Plugfy project was born in 2017, within an industrial context, to address the challenges of integration and communication between different systems, business rules, and heterogeneous environments. Initially focused on negotiation flows and customizable modules, it quickly became a powerful solution for managing complexity in corporate environments.

In 2023, the framework was completely modernized, introducing a new architecture focused on work pipelines, distributed execution, and extensibility. This evolution expanded its capabilities to operate at the system level and in virtualized environments, making it ideal for modern IT scenarios.


Architecture of Plugfy Core

High-Level Design

Plugfy Core
├── Kernel
│   ├── Event Manager          (Manages system and custom events)
│   ├── Module Loader          (Dynamically loads and manages modules)
│   ├── Execution Engine       (Orchestrates workflows and pipelines)
│   └── Configuration Manager  (Manages system and module configurations)
├── Modules
│   ├── Core Modules
│   │   ├── IF                (Conditional logic handler)
│   │   ├── SwitchCase        (Decision-making logic handler)
│   │   ├── ForEach           (Iterative execution handler)
│   │   └── Pipeline          (Workflow execution handler)
│   └── Custom Modules         (User-defined modules)
└── External Interfaces        (Exposes REST APIs for module interaction)

Use Cases

1. System Integration

  • Scenario: Integrate an ERP with a CRM and a logistics system to automate order processing and tracking.
  • Solution:
    • Use the Pipeline module to orchestrate workflows.
    • Combine SwitchCase for decision-making and ForEach to iterate over batch orders.

2. Automating Workflows

  • Scenario: Automate data analysis from multiple sources and generate real-time reports.
  • Solution:
    • Use the ForEach module to iterate over data sources.
    • Deploy a custom module to analyze data and a logging module to track the process.

Examples

Example 1: Creating a Simple Module

using Plugfy.Foundation.Core.Module;

var simpleModule = new Module("SimpleModule");
var simpleFunction = new Function("PrintMessage");

simpleFunction.Execute = (parameters) =>
{
    var message = parameters.ContainsKey("Message") ? parameters["Message"] : "Hello, Plugfy!";
    Console.WriteLine(message);
};

simpleModule.AddFunction(simpleFunction);

// Execute the function
simpleFunction.Execute(new Dictionary<string, object> { { "Message", "Welcome to Plugfy Core!" } });

Example 2: Configuring and Running a Pipeline

using Plugfy.Foundation.Core.Module.Pipeline;

var dataPipeline = new Pipeline("DataPipeline");

var step1Function = new Function("LoadData");
step1Function.Execute = (parameters) => Console.WriteLine("Loading Data...");

var step2Function = new Function("ProcessData");
step2Function.Execute = (parameters) => Console.WriteLine("Processing Data...");

var step1 = new PipelineStep("Step1", false, step1Function, step2Function);

dataPipeline.AddStep(step1);
dataPipeline.Execute();

Next Steps

Plugfy Core is a living platform, constantly evolving. Our goals are to:

  • Expand capabilities.
  • Integrate new technologies.
  • Build a collaborative community that drives technological innovation.

Join us on this journey to transform the development of complex systems.
Plugfy Core: The foundation for the modular future.


License

Plugfy Core is licensed under the GNU General Public License v3.0. For more information, see GNU GPL v3.0.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
1.0.15 122 2/19/2025
1.0.14 123 2/19/2025
1.0.13 116 2/19/2025
1.0.12 122 2/18/2025
1.0.10 124 2/17/2025
1.0.9 116 2/17/2025
1.0.8 108 2/17/2025