{"id":16683456,"url":"https://github.com/ctolkien/sodapop.configexplorer","last_synced_at":"2025-03-21T18:32:47.854Z","repository":{"id":140327673,"uuid":"85808491","full_name":"ctolkien/SodaPop.ConfigExplorer","owner":"ctolkien","description":"Displays diagnostic information on all the properties registered with configuration","archived":false,"fork":false,"pushed_at":"2022-10-31T21:11:57.000Z","size":75,"stargazers_count":33,"open_issues_count":0,"forks_count":6,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-03-17T00:48:12.508Z","etag":null,"topics":["aspnet-core","aspnet-middleware","aspnetcore","aspnetcore-mvc","aspnetcoremvc","hacktoberfest","middleware"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ctolkien.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2017-03-22T09:21:17.000Z","updated_at":"2022-12-19T21:39:40.000Z","dependencies_parsed_at":null,"dependency_job_id":"fb932d6c-289f-435c-93d1-c1e5a3e1b260","html_url":"https://github.com/ctolkien/SodaPop.ConfigExplorer","commit_stats":null,"previous_names":["ctolkien/aspnetoptionsexplorer"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ctolkien%2FSodaPop.ConfigExplorer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ctolkien%2FSodaPop.ConfigExplorer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ctolkien%2FSodaPop.ConfigExplorer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ctolkien%2FSodaPop.ConfigExplorer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ctolkien","download_url":"https://codeload.github.com/ctolkien/SodaPop.ConfigExplorer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244849056,"owners_count":20520637,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["aspnet-core","aspnet-middleware","aspnetcore","aspnetcore-mvc","aspnetcoremvc","hacktoberfest","middleware"],"created_at":"2024-10-12T14:24:45.841Z","updated_at":"2025-03-21T18:32:47.437Z","avatar_url":"https://github.com/ctolkien.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Config Explorer for ASPNET Core\n\n[![Build Status](https://dev.azure.com/chadtolkien/SodaPop.ConfigExplorer/_apis/build/status/SodaPop.ConfigExplorer?branchName=master)](https://dev.azure.com/chadtolkien/SodaPop.ConfigExplorer/_build/latest?definitionId=5\u0026branchName=master)\n\n[![ConfigExplorer on NuGet](https://img.shields.io/nuget/v/SodaPop.ConfigExplorer.svg?maxAge=200)](https://www.nuget.org/packages/SodaPop.ConfigExplorer)\n[![MIT license](https://img.shields.io/github/license/ctolkien/SodaPop.ConfigExplorer.svg?maxAge=2592000)](LICENSE)\n\n## Install\n\n### Nuget\n\n```Install-Package SodaPop.ConfigExplorer```\n\n### dotnet CLI\n\n`dotnet add package SodaPop.ConfigExplorer`\n\n\n## Getting Started\n\nIn your `ConfigureServices` method:\n\n```csharp\nservices.AddConfigExplorer();\n```\n\nIn your `Configure` method:\n\n```csharp\n\nif (env.IsDevelopment)\n{\n    //config is the `IConfigurationRoot` from your `ConfigurationBuilder`\n    app.UseConfigExplorer(config);\n}\n```\n\nOnce configured, access a diagnostic listing of all the available keys and values in the configuration system via:\n\n```\nhttp://localhost:port/config\n```\n\n## A Strong Warning On Security\n\nConfiguration can often contain application secrets such as connection strings. As a precautionary measure the end point will only load if the host is `localhost` and we will also filter out any configuration key which has a name containing `ConnectionString`. Even with these set, we strongly advise this middleware is only added in development environments.\n\n## Example\n\n![Example](https://cloud.githubusercontent.com/assets/515955/24350435/ed011456-132d-11e7-857a-10a31305eb83.png)\n\n## Whats It Do?\n\nThe configuration system in AspNet Core is extremely flexible, but it sometimes can be hard to know what value you're going to receive. An example configuration might look like:\n\n```csharp\nvar config = new ConfigurationBuilder()\n    .AddJsonFile(\"appsettings.json\")\n    .AddJsonFile($\"appsettings.{env.EnvironmentName}.json\")\n    .AddJsonFile(\"someotherappsetting.json\", optional: true) \n    .AddInMemoryCollection()\n    .AddEnvironmentVariables()\n    .Add(MyCustomSource)\n    .Build();\n```\n\nDepending on where you're running, what environment variables are set on the current machine, which configuration options you're using, what _order_ the configuration items are added, which files are present or not present can result in you getting different configuration.\n\nCompounding this, there are a number of \"magic\" prefixes used to hook in for Azure integration.\n\nThis tool will simply list out all the keys and values currently available in the entire configuration system.\n\n## Available Options\n\n```csharp\napp.UseConfigExplorer(config, new ConfigExplorerOptions //optional\n{\n    LocalHostOnly = true, //default\n    PathMatch = \"/config\", //default\n    TryRedactConnectionStrings = true //default\n});\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fctolkien%2Fsodapop.configexplorer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fctolkien%2Fsodapop.configexplorer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fctolkien%2Fsodapop.configexplorer/lists"}