Define Plain C# Classes, Get Configuration for Free

Calq Config handles persistence, preset switching, and live reloads automatically from your POCOs

Why Choose Calq Config?

Calq Config treats your C# classes as the single source of truth for app settings, localization, themes, and more. No manual serialization, no string-based key lookups, no boilerplate.

POCO-First Configuration

Properties and fields become configuration entries. Define a class, get a fully managed config system with stable object references.

Live Reload with Stable References

Reload configuration from disk without losing your object references. The same instance always reflects the latest state.

Preset Groups with Cascading

A master preset cascades changes across all related config types. Switch one value and every dependent config reloads automatically.

Save Back and Partial Updates

Write configuration changes back to disk, or update individual values by path without full serialization round-trips.

Type-Safe Localization

One JSON file per language, accessed as typed properties. Compile-time safe — no string key lookups.

Theme & Regional Presets

Dark mode, light mode, currency, date formats — group them under preset dimensions and switch everything in lockstep.

A Simpler Approach

Both examples load configuration from JSON files.

Calq Config
using CalqFramework.Config.Json;

var registry = new JsonConfigurationRegistry();
var ui = await registry.GetAsync<UiConfig>();

Console.WriteLine(ui.Title);
Console.WriteLine(ui.DarkMode);
Microsoft.Extensions.Configuration
using Microsoft.Extensions.Configuration;

var configuration = new ConfigurationBuilder()
    .SetBasePath(Directory.GetCurrentDirectory())
    .AddJsonFile("appsettings.json",
        optional: false, reloadOnChange: true)
    .Build();

var ui = configuration
    .GetSection("UiConfig").Get<UiConfig>();

Console.WriteLine(ui.Title);
Console.WriteLine(ui.DarkMode);

Calq Config vs. Microsoft.Extensions.Configuration

See how Calq Config compares to existing solutions for configuration and localization.

Calq Config vs. Microsoft.Extensions.Configuration
Feature Calq Config Microsoft.Extensions.Configuration
Config ObjectsMutable POCO SingletonsImmutable POCOs (via IOptions binding)
Named Presets (automatic) (manual)
Live Reload
Preset Groups (master preset cascading)
Preset Switching at Runtime
Save Back to File
Save Back to File by JSONPath
Field Support
Learning CurveLowModerate
Calq Config vs. Common Localization Approaches

Calq Config's typed POCO approach replaces string-key lookups with compile-time safe properties, while unifying localization with your app configuration.

Feature Calq Config .resx + IStringLocalizer JSON Localization Libraries
Translation AccessTyped property (t.WelcomeMessage)String key lookup (Loc["WelcomeMessage"])String key lookup (Loc["WelcomeMessage"])
Storage FormatJSON files (no build step, editable at runtime)XML .resx (requires compilation into satellite assemblies)JSON files (no build step, but string-key based)
Language SwitchingChange one value, all text classes reload automaticallySet thread culture, then re-resolve each localizerReload or re-resolve per component manually
Build Step RequiredNone (runtime JSON loading)Satellite assembly compilationNone (runtime JSON loading)
PluralizationSeparate properties per form — no DSL neededFramework engine required (ICU / gettext rules)Framework engine required (ICU / gettext rules)
Translator Tooling (Crowdin, Transifex, etc.)
Compile-Time Safety
Unified with App Config

Pricing & Licensing

Start building for free on open-source projects, or choose a commercial license to keep your source code private.

Open Source License

Perfect for personal projects, open-source development, and product evaluation. Use freely under the AGPLv3 license terms.

Free: AGPLv3 License

Get Started for Free
By accessing or using the software, you agree to the terms of the AGPLv3 License.
Commercial License

Get a commercial license for more permissive use, allowing you to keep your source code private.

Monthly: $9.97

Buy Monthly

Annual: $99.00

Buy Annual
By purchasing, you agree to the License Agreement, our Terms of Service, and Privacy Policy.

Frequently Asked Questions

How does Calq Config differ from IOptions?

Can I use Calq Config with ASP.NET Core?

Can I implement a custom storage backend?

Can I use Calq Config for localization?

Ready to Simplify Your Configuration?

Define a class, get a fully managed configuration system
An unhandled error has occurred. Reload 🗙