Zentient.Metadata 1.0.0

dotnet add package Zentient.Metadata --version 1.0.0
                    
NuGet\Install-Package Zentient.Metadata -Version 1.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="Zentient.Metadata" Version="1.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Zentient.Metadata" Version="1.0.0" />
                    
Directory.Packages.props
<PackageReference Include="Zentient.Metadata" />
                    
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 Zentient.Metadata --version 1.0.0
                    
#r "nuget: Zentient.Metadata, 1.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.
#:package Zentient.Metadata@1.0.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=Zentient.Metadata&version=1.0.0
                    
Install as a Cake Addin
#tool nuget:?package=Zentient.Metadata&version=1.0.0
                    
Install as a Cake Tool

Zentient.Metadata

NuGet Version .NET License: MIT

Zentient.Metadata is the core metadata engine for the Zentient Framework, providing a powerful, attribute-based system for declaring, composing, and discovering metadata in .NET applications. It enables a declarative, extensible, and immutable metadata model for modern frameworks and platforms.

🧩 Key Features

  • Immutable Metadata Objects: Safe, deterministic, and thread-safe IMetadata instances
  • Fluent Builder Pattern: Compose metadata with IMetadataBuilder for maximum flexibility
  • Attribute & Code-Defined Metadata: Seamlessly combine attribute-based and runtime metadata
  • Pluggable Scanners: Discover metadata from assemblies, types, and members
  • Registry & Preset Key Support: Organize and resolve metadata with strong typing
  • Extensible & Composable: Merge, extend, and query metadata with rich extension methods

🚀 Getting Started

Install Zentient.Metadata into your .NET project:

dotnet add package Zentient.Metadata

Supported Frameworks: .NET 8.0, .NET 9.0

Quick Start Example

using Zentient.Metadata;
using Zentient.Abstractions.Metadata;

// Build metadata using the fluent builder
var metadata = Metadata.Create()
    .SetTag("Version", "1.0.0")
    .SetTag("Author", "Zentient Team")
    .Build();

// Query metadata
string version = metadata.GetValueOrDefault<string>("Version");

// Attribute-based discovery (see Zentient.Metadata.Attributes)
// var discovered = MetadataAttributeReader.GetMetadata(typeof(MyService));

✨ Core Concepts

  • IMetadata: Immutable, key-value metadata with type-safe access
  • IMetadataBuilder: Fluent API for composing metadata
  • IMetadataScanner: Pluggable scanners for runtime and attribute-based discovery
  • Preset Keys: Strongly-typed keys for organizing metadata
  • Extension Methods: Rich API for merging, querying, and composing metadata

📚 Documentation

🤝 Contributing

We welcome contributions! Visit our GitHub Repository for source code, issues, and guidelines.

📄 License

Zentient.Metadata is licensed under the MIT License. See the LICENSE file for details.


Zentient Framework – Modern, declarative, and extensible metadata for .NET applications.

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

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Zentient.Metadata:

Package Downloads
Zentient.Metadata.Attributes

Attribute-based metadata for Zentient Framework. Implements the Zentient.Metadata Attribute Specification, supporting legacy and cross-package attributes. See README.md, CHANGELOG.md, and docs/Zentient_Metadata_Metadata-Attribute-Specification.md for details.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0 108 9/11/2025

See CHANGELOG.md for release notes and docs/ for full specification.

Build Information:
- Built on: 2025-09-11T08:05:27.651Z
- Configuration: Release
- Target Framework:
- Version: 1.0.0
- Commit: cbb8ca4f62274368ddf294191cd3a94789e383a8
- Branch: main