-
Notifications
You must be signed in to change notification settings - Fork 4.5k
Add configuration provider & feature management #975
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Can you put some words here? Both repos have 16 stars and not so much activity. One of them last updated 2 months ago. And they both last released back in August. I'm not sure how relevant they are to the list here. |
|
Hey, @gokaygurcan Thanks for the quick response and for calling this out — that’s a fair concern. I tried to address this in the “Notes on popularity and maintenance” section in the PR description, but I’m happy to add more context here as well. While the GitHub star count is currently low (both repos are still relatively new), both packages are now in a stable state, with documentation in place and the majority of planned features released: Configuration provider feature status: https://learn.microsoft.com/azure/azure-app-configuration/configuration-provider-overview#feature-development-status Feature management feature status: https://learn.microsoft.com/azure/azure-app-configuration/feature-management-overview#feature-development-status Both libraries are actively maintained by full-time engineers, as they are part of Azure App Configuration’s official SDKs. In practice, this means:
Across Azure App Configuration, we offer configuration providers and feature management libraries for different programming languages and they receive the same level of investment and engineering support. Our goal is to keep feature parity across languages so developers have a consistent experience regardless of platform. When new capabilities are added to one language ecosystem, we aim to bring equivalent functionality to others, including JavaScript. A recent example is the Parent Feature Filter feature, which was originally requested by a customer in the .NET Feature Management repo and then implemented for JavaScript as well: We understand that stars are an important signal for the awesome list, and we completely respect that criteria. I just wanted to provide additional context that, despite their age and star count, these libraries are long-term, actively supported, and used in production. And we do believe that configuration and feature management are important parts of modern software development. It would be an honor to have our packages included in the awesome-javascript list, and we believe our packages (and products) can be helpful to the JS community. |
|
I guess we'll need a new label: -- Thanks for the suggestion, but I don't think the adoption rate is high enough to call these repositories/projects "awesome" yet. Maybe we can explore again in the future. |
|
Hey, @gokaygurcan It is fine to not add our packages to the awesome list. I totally respect your decision and understand the criteria. But I believe we will have more and more stars in the future. And at that time, I will create this PR again. Hope that time, we can be added to the awesome list. Thanks for taking the time to review the PR and maintaining the repo. I want to clarify about the "ai-slop". I did use AI to polish the wording of my PR description and replies, but I did not generate the content automatically. I am not a native speaker. You can see that I work in Shanghai. The approach I used is to type everything I want to say using English mixing with Chinese. And then using AI to polish the content and adjust the tone. My original idea is to make it professional and polite. I swear that I spent at least 40mins on the PR description and replying your comments, with a lot of iteration. I submitted this PR seriously and genuinely. If using AI as grammer helper make you feel disrespectful, I apologize. This is not my intention. But "ai-slop" (I know it is a joke) really makes me feel uncomfortable. It hurts. The above content is 100% typed by myself. |
|
Thanks for the clarification. |
Checklist:
Configuration and feature management are important aspects of modern software development. This PR adds two JavaScript libraries under the
ConfigurationandFeature Managementsections. These libraries aim to support common configuration and feature-flagging scenarios in modern JavaScript applications, including browser-based apps.We really really appreciate the maintainers’ ongoing work in curating useful resources for the JavaScript community. We hope the visibility of this repository can help more JavaScript developers come across these tools and decide for themselves whether they are helpful for their projects. Big thanks for the support!
Why these libraries may be useful
Centralized configuration for JavaScript applications
@azure/app-configuration-providerallows JavaScript applications to retrieve configuration values from a centralized source instead of embedding them at build time. This can be helpful for applications where configuration changes are needed after deployment.Dynamic refresh without redeployment
A primary use case supported by these libraries is updating configuration and feature flags at runtime without requiring application redeployment. Typical scenarios include:
These scenarios are especially relevant for browser-based applications, where redeployment cycles can be expensive or slow.
Accessible entry point
Azure App Configuration provides a free tier and developer tier, which makes it suitable for small projects, experimentation, and open-source usage, while still offering a path to scale.
Edge delivery and browser scenarios
Azure App Configuration now integrates with Azure Front Door (CDN), which enables configuration data to be delivered from the edge. This unlocks additional browser-focused scenarios, such as support for large-scale, globally distributed applications.
Feature Management usage options
@microsoft/feature-managementcan be used in different ways depending on project needs:This allows developers to adopt feature management incrementally, starting with local usage and moving to centralized management if needed.
For reference, the following documentation provides an overview of supported features and usage scenarios:
Configuration Provider
Feature Management
Notes on popularity and maintenance
The JavaScript versions of these libraries are relatively new compared to similar offerings in other ecosystems, which may explain their current GitHub star counts. However, both projects are actively maintained and already used in production environments.
Current adoption is reflected more clearly through npm usage, with approximately 100k weekly downloads for the App Configuration provider and 20k weekly downloads for the Feature Management library.
For additional context, feature management libraries in more established ecosystems (such as .NET, which has 1.2k stars on github) have seen broader adoption over time, and the JavaScript ecosystem is still in earlier stages.