All pages
Powered by GitBook
1 of 1

Loading...

Home

Vostok.Configuration in a nutshell

Vostok.Configuration is a set of libraries offering configuration tools to .NET applications. It handles fetching configuration data from files or APIs, parsing and converting it to user-defined model classes.

Guiding design principles

  • Configuration data sources should be composable regardless of storage formats.

    • It should be easy to combine settings from JSON files, environment variables and custom APIs. This is achieved with concept and universal abstraction.

  • "Hot" configuration updates should be easy to leverage.

Features

  • and methods to obtain settings;

  • Support for and settings;

  • Support for custom settings ;

Guarantees

See / settings scenarios, and sections for details.

Good starting points

  • Hot configuration implies handling changes in settings without application restart. This is enabled by explicitly reactive source design and settings provider methods.

  • Rich object models should be supported for user convenience.

    • Binding process supports a wide range of primitives, collections, classes, interfaces and employs a number of conventions for arbitrary types (anything with a TryParse method works).

  • It should be possible to extend the library with arbitrary data sources and object models.

    • Two major extensions points are custom configuration sources and binders.

  • Wide selection of built-in sources;

  • Composable binders;

  • Sources can be combined, navigated and transformed;

  • Integration with Microsoft configuration system;

  • configuration source
    settings nodes
    On-demand
    subscription-based
    required
    secret
    validation
    obtain
    observe
    caching
    error handling
    Quickstart
    Concepts and basics
    Basic scenarios
    Modules