{"id":37047172,"url":"https://github.com/braspin/braspin_environment_variable_dotnet","last_synced_at":"2026-01-14T05:33:03.032Z","repository":{"id":210143231,"uuid":"725851233","full_name":"braspin/braspin_environment_variable_dotnet","owner":"braspin","description":"Simple Read Environment Variables Dotnet for Kubernetes (ConfigMap and Secrets)","archived":false,"fork":false,"pushed_at":"2025-05-13T21:16:45.000Z","size":30,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-29T17:52:36.309Z","etag":null,"topics":["configmap","docker","environment-variables","kubernetes","reader","secrets","serialization"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/braspin.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-12-01T02:06:32.000Z","updated_at":"2025-05-13T21:12:38.000Z","dependencies_parsed_at":null,"dependency_job_id":"c33f620f-796c-4868-b03e-614391758602","html_url":"https://github.com/braspin/braspin_environment_variable_dotnet","commit_stats":{"total_commits":16,"total_committers":1,"mean_commits":16.0,"dds":0.0,"last_synced_commit":"80487148997e07c760b607d66e9a62e6e885dbfc"},"previous_names":["braspin/braspin_environment_variable_dotnet"],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/braspin/braspin_environment_variable_dotnet","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/braspin%2Fbraspin_environment_variable_dotnet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/braspin%2Fbraspin_environment_variable_dotnet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/braspin%2Fbraspin_environment_variable_dotnet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/braspin%2Fbraspin_environment_variable_dotnet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/braspin","download_url":"https://codeload.github.com/braspin/braspin_environment_variable_dotnet/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/braspin%2Fbraspin_environment_variable_dotnet/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28410634,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T05:26:33.345Z","status":"ssl_error","status_checked_at":"2026-01-14T05:21:57.251Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["configmap","docker","environment-variables","kubernetes","reader","secrets","serialization"],"created_at":"2026-01-14T05:33:02.464Z","updated_at":"2026-01-14T05:33:03.024Z","avatar_url":"https://github.com/braspin.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Environment Variable Dotnet\n\nRepository Nuget: https://www.nuget.org/packages/braspin_environment_variable_dotnet\n\n## Install Nuget Package\n\n`` dotnet add package braspin_environment_variable_dotnet --version 0.1.10 ``\n\n### Example class lauchSettings.json\n\n```json\n\n{\n    \"environmentVariables\": {\n        \"VARIABLE_BOOLEAN\": \"true\",\n        \"VARIABLE_LONG\": \"10\",\n        \"VARIABLE_STRING\": \"Test\",\n        \"VARIABLE_DOUBLE\": \"1.15\",\n        \"VARIABLE_ARRAY_STRING\": \"Item1,Item2\"\n    }\n}\n\n```\n\n### Example class AppSettings.cs inheriting IEnvironmentVariable\n\n```csharp\n\npublic class AppSettings : IEnvironmentVariable\n{\n    [EnvironmentVariable(\"VARIABLE_BOOLEAN\", true)]\n    public bool Boolean { get; set; } = false;\n\n    [EnvironmentVariable(\"VARIABLE_LONG\", 10000000)]\n    public long Long { get; set; }\n\n    [EnvironmentVariable(\"VARIABLE_STRING\", \"Title\")]\n    public string? String { get; set; }\n\n    [EnvironmentVariable(\"VARIABLE_DOUBLE\", 5.1)]\n    public double Double { get; set; }\n\n    [EnvironmentVariable(\"VARIABLE_ARRAY_STRING\", ',', new string[](\"Item1\", \"Item2\"))]\n    public string[] StringArray { get; set; }\n}\n\n```\n\n### Add Startup.cs\n\n```csharp\n\npublic void ConfigureServices(IServiceCollection services)\n{\n    services.AddEnvironmentVariable\u003cAppSettings\u003e();\n    //...\n}\n\n```\n\n### Using in yours Controllers\n\n```csharp\n//...\n\nprivate readonly AppSettings _config;\n\npublic WeatherForecastController(AppSettings config)\n{\n    _config = config;\n}\n\n```\n\n## Annotation Types\n\n### Boolean variable without default value\n\n```csharp\n\npublic class AppSettings : IEnvironmentVariable\n{\n    [EnvironmentVariable(\"VARIABLE_BOOLEAN\")]\n    public bool Boolean { get; set; };\n}\n\n``` \n\n### Boolean variable with default value\n\n```csharp\n\npublic class AppSettings : IEnvironmentVariable\n{\n    [EnvironmentVariable(\"VARIABLE_BOOLEAN\", true)]\n    public bool Boolean { get; set; };\n}\n\n``` \n\n### Long variable without default value\n\n```csharp\n\npublic class AppSettings : IEnvironmentVariable\n{\n    [EnvironmentVariable(\"VARIABLE_LONG\")]\n    public long Long { get; set; };\n}\n\n``` \n\n### Long variable with default value\n\n```csharp\n\npublic class AppSettings : IEnvironmentVariable\n{\n    [EnvironmentVariable(\"VARIABLE_LONG\", 100)]\n    public long Long { get; set; };\n}\n\n``` \n\n### Long variable with default, min and max value\n\n```csharp\n\npublic class AppSettings : IEnvironmentVariable\n{\n    [EnvironmentVariable(\"VARIABLE_LONG\", 100, 0, 200)]\n    public long Double { get; set; };\n}\n\n``` \n\n### Double variable without default value\n\n```csharp\n\npublic class AppSettings : IEnvironmentVariable\n{\n    [EnvironmentVariable(\"VARIABLE_DOUBLE\")]\n    public double Double { get; set; };\n}\n\n``` \n\n### Double variable with default value\n\n```csharp\n\npublic class AppSettings : IEnvironmentVariable\n{\n    [EnvironmentVariable(\"VARIABLE_DOUBLE\", 10.1)]\n    public double Double { get; set; };\n}\n\n``` \n\n### Double variable with default, min and max value\n\n```csharp\n\npublic class AppSettings : IEnvironmentVariable\n{\n    [EnvironmentVariable(\"VARIABLE_DOUBLE\", 10.1, 0, 20)]\n    public double Double { get; set; };\n}\n\n``` \n\n### String variable without default value\n\n```csharp\n\npublic class AppSettings : IEnvironmentVariable\n{\n    [EnvironmentVariable(\"VARIABLE_STRING\")]\n    public string String { get; set; };\n}\n\n``` \n\n### String variable with default value\n\n```csharp\n\npublic class AppSettings : IEnvironmentVariable\n{\n    [EnvironmentVariable(\"VARIABLE_STRING\", \"Title\")]\n    public string String { get; set; };\n}\n\n```\n\n### String Array variable without default value\n\n```csharp\n\npublic class AppSettings : IEnvironmentVariable\n{\n    [EnvironmentVariable(\"VARIABLE_STRING_ARRAY\")]\n    public string[] StringArray { get; set; };\n}\n\n``` \n\n### String Array variable comma separator\n\n```csharp\n\npublic class AppSettings : IEnvironmentVariable\n{\n    [EnvironmentVariable(\"VARIABLE_STRING_ARRAY\", ',')]\n    public string[] StringArray { get; set; };\n}\n\n``` \n\n### String Array variable comma separator and with default value\n\n```csharp\n\npublic class AppSettings : IEnvironmentVariable\n{\n    [EnvironmentVariable(\"VARIABLE_STRING_ARRAY\", ',', new string[](\"Item1\", \"Item2\"))]\n    public string[] StringArray { get; set; };\n}\n\n```\n\n### String variable with default value and enums values\n\n```csharp\n\npublic class AppSettings : IEnvironmentVariable\n{\n    [EnvironmentVariable(\"VARIABLE_LOG_LEVEL\", \"Info\", new string[]{\"Trace\", \"Debug\", \"Info\", \"Warning\", \"Error\"})]\n    public string LogLevel { get; set; };\n}\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbraspin%2Fbraspin_environment_variable_dotnet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbraspin%2Fbraspin_environment_variable_dotnet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbraspin%2Fbraspin_environment_variable_dotnet/lists"}