Documentation

Lightweight, composable configuration loader for .NET.

Lightweight, composable configuration loader for .NET. Load settings from JSON files (including appsettings), environment variables, .env files, and merge them with clear precedence. Built on Microsoft.Extensions.Configuration with a simple, focused API.

  • Targets: .NET 10.0 (net10.0)
  • NuGet: ArturRios.Configuration
  • Minimal dependencies: ArturRios.Extensions, DotNetEnv, Microsoft.Extensions.*.

Features

  • Unified loader: ConfigurationLoader to compose multiple sources.
  • Providers:
    • EnvironmentProvider for environment-specific logic (e.g., Development/Production).
    • SettingsProvider for layered settings.
  • Source types and formats via enums: ConfigurationSourceType, DataFormatType, EnvironmentType, OutputType.
  • Built on Microsoft.Extensions.Configuration, supports JSON, environment variables, .env files.
  • Simple precedence model: later-added sources override earlier ones.
  • Extensible: implement your own provider or source.

Installation

Add ArturRios.Configuration to your project via NuGet or as a Git submodule.

Quickstart

Load .env files and appsettings for an environment, then read typed values.

Advanced usage

Folder conventions, source precedence and binding configuration to POCOs.

API overview

The loader, the providers and the enums that make up the public API.

Extensibility

Add your own configuration sources and providers.

Project info

Build, test and publish workflow, versioning policy and legal details.