Skip to content

Conversation

@zhiyuanliang-ms
Copy link

@zhiyuanliang-ms zhiyuanliang-ms commented Jan 8, 2026

Checklist:

  • I've read and understood Contributing Guidelines.
  • I've added the new resource at the end of its section.
  • This resource is out there for a while, and actively maintained.
  • This resource is popular enough and has at least a few hundred stars on GitHub.

Configuration and feature management are important aspects of modern software development. This PR adds two JavaScript libraries under the Configuration and Feature Management sections. 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-provider allows 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:

  • Gradual feature rollouts
  • Disabling features quickly in production
  • Adjusting application behavior based on environment or user segments
    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-management can be used in different ways depending on project needs:

  • As a standalone feature flag library in JavaScript applications
  • Integrated with Azure App Configuration for centralized feature flag storage and dynamic refresh

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.

@gokaygurcan
Copy link
Collaborator

This resource is popular enough and has at least a few hundred stars on GitHub.

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.

@zhiyuanliang-ms
Copy link
Author

zhiyuanliang-ms commented Jan 8, 2026

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:

  • Issues are typically responded to within a short time window
  • Bugs are addressed as they are reported
  • Feature requests are actively reviewed

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:
microsoft/FeatureManagement-JavaScript#142

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.

@gokaygurcan
Copy link
Collaborator

I guess we'll need a new label: ai-slop.

--

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.

@gokaygurcan gokaygurcan closed this Jan 8, 2026
@zhiyuanliang-ms
Copy link
Author

zhiyuanliang-ms commented Jan 8, 2026

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.

@gokaygurcan
Copy link
Collaborator

Thanks for the clarification.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants