AtomiCloud.Diene.Config
1.0.0
dotnet add package AtomiCloud.Diene.Config --version 1.0.0
NuGet\Install-Package AtomiCloud.Diene.Config -Version 1.0.0
<PackageReference Include="AtomiCloud.Diene.Config" Version="1.0.0" />
<PackageVersion Include="AtomiCloud.Diene.Config" Version="1.0.0" />
<PackageReference Include="AtomiCloud.Diene.Config" />
paket add AtomiCloud.Diene.Config --version 1.0.0
#r "nuget: AtomiCloud.Diene.Config, 1.0.0"
#:package AtomiCloud.Diene.Config@1.0.0
#addin nuget:?package=AtomiCloud.Diene.Config&version=1.0.0
#tool nuget:?package=AtomiCloud.Diene.Config&version=1.0.0
Diene .NET library template
Diene's reproducible development environment is managed by Nix. Run direnv allow once, then use pls tasks from the loaded shell.
This branch is the workspace baseline inherited by every downstream sample: split CI/CD, secrets, release configuration, validators, standards, and vendored agent-skill synchronization.
Commands
pls setup— synchronize installed diene package skills.pls lint— run every pre-commit gate.pls secret:scan— scan tracked content for secrets.pls skills:sync— rebuild.claude/skills/vendor/from installed packages.
Standards
- CI/CD workflows
- conventional commits
- Infisical and secrets
- linting and pre-commit
- Nix flakes and development shells
- release automation
- service-tree identity
- shell scripts
- Taskfile conventions
Shared standards
- Authorization
- Contributor documentation
- Date and time
- Domain-driven design
- Functional practices
- Software design philosophy
- SOLID principles
- Stateless OOP and dependency injection
- Testing
- Three-layer architecture
- Utility libraries
- Data validation
Domain-specific documentation belongs under docs/domain/.
The docs/standards/contracts/ location is reserved for the separately owned C0
contracts standard.
.NET 10 foundation
This branch adds the .NET 10 toolchain, the App/Lib/UnitTest/IntTest
sample, merged multi-project coverage, strict and LLM dead-code modes. See the .NET baseline.
Common commands:
pls build,pls dev,pls run, andpls previewpls test,pls test:unit,pls test:int, and the coverage variantspls deadcodefor the non-blocking review; CI owns strict dn-inspect
The config domain language is documented in docs/domain/config.md. Production observability is intentionally absent until the observability add-back.
Publishable library packages
This repository publishes AtomiCloud.Diene.Config and the companion
AtomiCloud.Diene.Config.TestHelper package at one committed version. It is
the sole config merger and validator for the Diene .NET family: it loads YAML
layers, applies the prefixed environment layer last, and validates the
service-composed root on the final merged layer only.
dotnet add package AtomiCloud.Diene.Config
dotnet add package AtomiCloud.Diene.Config.TestHelper
using AtomiCloud.Diene.Config;
builder.Configuration.AddAtomiConfig(new AtomiConfigSource
{
Landscape = landscape, // blank reads the LANDSCAPE variable
EnvPrefix = "ATOMI_", // required: the library bakes no default
});
builder.Services.AddAtomiServiceTree();
builder.Services.RegisterOption<ErrorPortalOption, ErrorPortalOptionValidator>("ErrorPortal");
Keys match across every C0 spelling, so a snake_cased YAML key, a
SCREAMING_SNAKE environment variable, and a Pascal option property are one
key. Lists use indexed environment keys (FOO__0, FOO__1) — never
JSON-in-env and never comma encoding.
Run nix develop .#ci -c ./scripts/ci/pkg-validate.sh to pack both packages,
validate metadata and symbols, and restore them into a scratch consumer. See
the library baseline for release and
promotion guidance.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. 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. |
-
net10.0
- AtomiCloud.Diene.CoreUtils (>= 1.0.0)
- AtomiCloud.Diene.Result (>= 1.0.0)
- FluentValidation (>= 12.1.1)
- Microsoft.Extensions.Configuration (>= 10.0.10)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Configuration.EnvironmentVariables (>= 10.0.10)
- Microsoft.Extensions.Configuration.FileExtensions (>= 10.0.10)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Hosting (>= 10.0.10)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.10)
- Microsoft.Extensions.Options.DataAnnotations (>= 10.0.10)
- NJsonSchema (>= 11.6.1)
- YamlDotNet (>= 18.1.0)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on AtomiCloud.Diene.Config:
| Package | Downloads |
|---|---|
|
AtomiCloud.Diene.StandardConfig
The four frozen Diene infra config presets — postgres, cache, kv, and storage — as typed, validated, schema-generating option blocks, plus the small S3-compatible block-storage surface. |
|
|
AtomiCloud.Diene.Config.TestHelper
Fake config sources and option-builder fixtures for testing consumers of AtomiCloud.Diene.Config. |
|
|
AtomiCloud.Diene.E2e
Black-box SIT drivers and Garden preview endpoint glue for Diene .NET services. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0 | 325 | 7/26/2026 |