Wickra.FeatureStore 0.1.1

There is a newer version of this package available.
See the version list below for details.
dotnet add package Wickra.FeatureStore --version 0.1.1
                    
NuGet\Install-Package Wickra.FeatureStore -Version 0.1.1
                    
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="Wickra.FeatureStore" Version="0.1.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Wickra.FeatureStore" Version="0.1.1" />
                    
Directory.Packages.props
<PackageReference Include="Wickra.FeatureStore" />
                    
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 Wickra.FeatureStore --version 0.1.1
                    
#r "nuget: Wickra.FeatureStore, 0.1.1"
                    
#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 Wickra.FeatureStore@0.1.1
                    
#: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=Wickra.FeatureStore&version=0.1.1
                    
Install as a Cake Addin
#tool nuget:?package=Wickra.FeatureStore&version=0.1.1
                    
Install as a Cake Tool

Wickra Feature Store — C#

.NET bindings for the Wickra feature-matrix core over its C ABI hub. A FeatureStore is built from a spec JSON and driven over a JSON boundary, so the result is byte-identical to every other Wickra Feature Store binding.

Install

dotnet add package Wickra.FeatureStore

The package ships the native C ABI library per runtime identifier under runtimes/<rid>/native/. For a local build, cargo build -p wickra-feature-store-c --release places the library in target/release/; the bundled DllImportResolver probes the Cargo target/ tree, so tests and apps in the repo find it without extra steps.

Usage

using Wickra.FeatureStore;

const string spec = """
{"universe":["AAA"],
 "features":[{"kind":"indicator","name":"Sma","params":[2]},{"kind":"price","field":"close"}],
 "labels":[{"kind":"forward_return","horizon":1}]}
""";

using var store = new FeatureStore(spec);

string response = store.Command("""
{"cmd":"build_batch","data":{"AAA":[{"ts":0,"open":100,"high":100,"low":100,"close":100,"volume":1}]}}
""");
Console.WriteLine(response);

Surface

  • new FeatureStore(string specJson) — build a feature store from a spec JSON. Throws ArgumentException if the spec is invalid. Implements IDisposable; dispose it when done.
  • string Command(string cmdJson) — apply a command envelope ({"cmd":"...", ...}) and return the response JSON. Commands: set_spec, push, push_batch, build, build_batch, labels, reset, version.
  • static string Version() — the crate version.

Domain errors (a bad command, an unknown command name) come back as an {"ok": false, "error": ...} response, not as an exception. Exceptions are reserved for an invalid spec at construction and hard failures at the C ABI boundary. Arrow / Parquet output is a binary file format and is not available over this JSON surface; use the wickra-feature-store CLI for columnar output.

Determinism

The response bytes are identical across languages and between the parallel and sequential build paths, because the whole feature fold lives once in the Rust core and this binding forwards its JSON verbatim.

See also

License

Dual-licensed under either MIT or Apache-2.0, at your option.

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.
  • net8.0

    • No dependencies.

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
0.1.4 103 9/27/2026
0.1.3 100 9/23/2026
0.1.2 90 9/18/2026
0.1.1 96 9/14/2026
0.1.0 92 9/14/2026