Skip to main content

Automatically generate comprehensive documentation for your .NET application configuration settings. Keep your 'appsettings.json' files documented, validated, and always up-to-date with JSON schemas, Markdown, and HTML documentation.

Total Downloads
2.0K
2,009
Published
May 21, 2026
5mo ago

Get Started

dotnet add package TomsToolbox.Settings.Documentation.Abstractions --version 1.1.0
ProductVersions
.NET Standard
netstandard2.1

README

TomsToolbox.Settings.Documentation.Abstractions

Provides attributes for documenting and configuring .NET application settings classes.

Overview

This package contains a set of attributes that help document configuration settings in .NET applications. These attributes work with configuration documentation generators to produce clear, structured documentation of your application's configuration options.

Attributes

SettingsSectionAttribute

Marks a class as settings class, and optionally specifies the configuration section name associated with the settings class.

[SettingsSection("MyApp")]
public class MyAppSettings
{
    public string ApiUrl { get; set; }
}

SettingsIgnoreAttribute

Excludes a class or property from settings documentation.

public class Settings
{
    public string DocumentedProperty { get; set; }
    
    [SettingsIgnore]
    public string InternalProperty { get; set; }
}

SettingsSecretAttribute

Marks properties containing sensitive data (passwords, API keys, etc.) to be masked in documentation.

public class DatabaseSettings
{
    public string Server { get; set; }
    
    [SettingsSecret]
    public string Password { get; set; }
}

SettingsAddOptionsInvocatorAttribute

Identifies methods that register configuration options with the dependency injection container.

[SettingsAddOptionsInvocator]
public static void CustomAddOptions<T>(IServiceCollection services)
{
    services.AddOptions<T>().BindConfiguration(typeof(T).Name);
}

Requirements

  • .NET Standard 2.1 or higher

Related Packages

  • TomsToolbox.Settings.Documentation.Builder - Runtime library for generating documentation
  • TomsToolbox.Settings.Documentation.Analyzer - Roslyn analyzer for compile-time validation

License

MIT License

Part of the TomsToolbox library suite.

Downloads by Version

Similar & Alternative Packages

Hand-picked matching NuGet libraries based on tags & ecosystem

Depended On By

Find packages that declare this package as a dependency. NuGet does not provide a reverse-dependency endpoint, so candidates are checked on demand.

Adoption Assessment

Assess this package against its supported frameworks, license, maintenance signals and dependency graph before making it a project standard.

No SPDX license expression is published. Review the license text and your organisation's policy before redistribution.Compatibility metadata lists 1 target framework; confirm the exact target used by your application.

Related Guides & Workflows

Learn how to evaluate, integrate, or audit this package in your .NET project.