FluxFlow.Components.Storage.Composition 1.5.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package FluxFlow.Components.Storage.Composition --version 1.5.0
                    
NuGet\Install-Package FluxFlow.Components.Storage.Composition -Version 1.5.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="FluxFlow.Components.Storage.Composition" Version="1.5.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="FluxFlow.Components.Storage.Composition" Version="1.5.0" />
                    
Directory.Packages.props
<PackageReference Include="FluxFlow.Components.Storage.Composition" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add FluxFlow.Components.Storage.Composition --version 1.5.0
                    
#r "nuget: FluxFlow.Components.Storage.Composition, 1.5.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.
#:package FluxFlow.Components.Storage.Composition@1.5.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=FluxFlow.Components.Storage.Composition&version=1.5.0
                    
Install as a Cake Addin
#tool nuget:?package=FluxFlow.Components.Storage.Composition&version=1.5.0
                    
Install as a Cake Tool

FluxFlow.Components.Storage.Composition

Optional FluxFlow.Composition registration helpers for the standalone storage nodes from FluxFlow.Components.Storage.

This package does not scan assemblies, register backend stores, or configure concrete storage adapters. Hosts register storage node factories explicitly and provide either a keyed IStorageStore or a keyed IStorageStoreFactory; they may also provide an optional keyed TimeProvider.

Registration

services.AddKeyedSingleton<IStorageStoreFactory>("items-store", storeFactory);

services
    .AddFluxFlowComposition(configuration)
    .RegisterNodes(registry => registry
        .RegisterStoragePut()
        .RegisterStorageGet()
        .RegisterStorageQuery()
        .RegisterStorageDelete());

Node Types

Type Node Ports
storage.put StoragePutNode Input, Output
storage.get StorageGetNode Input, Output, Found, NotFound
storage.query StorageQueryNode Input, Output, Records
storage.delete StorageDeleteNode Input, Output

Each factory exposes Events and Errors. store is a required keyed IStorageStore or IStorageStoreFactory resource. Direct stores remain host-owned. Factory leases are opened during composition build and disposed with the composed node. clock is an optional keyed TimeProvider resource for deterministic result, event, and error timestamps.

Configuration

{
  "FluxFlow": {
    "Composition": {
      "workflows": {
        "main": {
          "nodes": {
            "put": {
              "type": "storage.put",
              "resources": {
                "store": "items-store",
                "clock": "fixed"
              },
              "configuration": {
                "collection": "items",
                "mode": "Upsert",
                "emitStoredRecord": true,
                "boundedCapacity": 128
              }
            }
          },
          "links": []
        }
      }
    }
  }
}

The adapter binds the existing storage option records from node configuration. Backend packages remain host concerns: register an opened keyed store or a keyed store factory in the host, then reference it from composition with the store resource.

Design Metadata

StorageComponentDesignMetadataProvider exposes neutral Designer metadata for storage.put, storage.get, storage.query, and storage.delete so hosts can build palettes, editors, validation hints, or documentation without copying package descriptors. The metadata describes the existing storage option records, option section/importance/editor hints, fixed ports, and host-owned resource picker hints for the required store and optional clock resources. Concrete IStorageStore instances, IStorageStoreFactory registrations, and optional keyed TimeProvider clocks remain host-owned resources and are not modeled as editable node options. The provider authors that metadata through the shared validated Designer metadata builder.

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 is compatible.  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.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
8.0.0-rc.1 77 9/5/2026
7.0.0-rc.1 81 8/9/2026
6.0.0 125 8/3/2026
1.5.0 133 7/3/2026
1.4.0 123 7/2/2026

Drops the FluxFlow.Composition.Hosting dependency (host-owned keyed resource resolution moved to the FluxFlow.Composition factory context) and adds the shared package icon.