davianspace_configuration library
A flexible, hierarchical configuration system for Dart and Flutter.
Equivalent in capability to Microsoft.Extensions.Configuration, adapted idiomatically for Dart.
Quick start
import 'package:davianspace_configuration/davianspace_configuration.dart';
void main() {
final config = ConfigurationBuilder()
.addInMemory({'app:name': 'Orders', 'database:host': 'localhost'})
.addEnvironmentVariables(prefix: 'APP_')
.build();
print(config['app:name']); // Orders
print(config['database:host']); // localhost (or env override)
final db = config.getSection('database');
print(db['host']); // localhost
}
For mutable runtime configuration use ConfigurationManager instead of ConfigurationBuilder.
Classes
- ChangeNotifier
- Manages a rotating series of ReloadTokens.
- ChangeToken
- A token that signals when a watched resource has changed.
- Configuration
- The top-level configuration API.
- ConfigurationBuilder
- Assembles a ConfigurationRoot from one or more ConfigurationSources.
- ConfigurationManager
- A configuration that is both a builder and a live Configuration.
- ConfigurationPath
- Provides static utilities for working with hierarchical configuration keys.
- ConfigurationProvider
- Base class for all configuration data providers.
- ConfigurationRoot
- The merged view of all registered ConfigurationProviders.
- ConfigurationSection
- A named subtree within a Configuration hierarchy.
- ConfigurationSource
- A factory that produces a ConfigurationProvider.
- EnvironmentConfigurationProvider
- A ConfigurationProvider that loads from system environment variables.
- EnvironmentConfigurationSource
- A ConfigurationSource that produces an EnvironmentConfigurationProvider.
- JsonFileConfigurationProvider
- A ConfigurationProvider that reads configuration from a JSON file.
- JsonFileConfigurationSource
- A ConfigurationSource that produces a JsonFileConfigurationProvider.
- JsonStringConfigurationProvider
- A ConfigurationProvider that parses a JSON string.
- JsonStringConfigurationSource
- A ConfigurationSource that produces a JsonStringConfigurationProvider.
- KeyNormalizer
- Utilities for normalizing configuration keys.
- MapConfigurationProvider
-
A ConfigurationProvider that loads configuration from a nested
Map<String, dynamic>. - MapConfigurationSource
- A ConfigurationSource that produces a MapConfigurationProvider.
- MemoryConfigurationProvider
- A ConfigurationProvider backed by an in-memory Map<String, String?>.
- MemoryConfigurationSource
- A ConfigurationSource that produces a MemoryConfigurationProvider.
- NeverChangeToken
- A ChangeToken that never changes.
- ReloadToken
- A manually-triggered, single-use change token.
- TokenRegistration
- A handle to a callback registered with a ChangeToken.
Constants
- configurationPathSeparator → const String
- The separator character used between path segments in a configuration key.