Skip to main content

The Growing Community of ConfigCat

· 6 min read
Chavez Harris
Inspiration does exist, but it must find you writing code.

Before the open source movement, software programs were 'closed source,' meaning only software developers employed by the company could access and modify them. Outsiders were kept out through non-disclosure agreements and licenses. This exclusivity motivated the creation of the open-source movement, aiming to preserve the freedom to modify and distribute software through publicly accessible code. Today, many commercial companies actively participate in the open-source ecosystem, maintaining software that is open to the public for access and contributions. One such company supporting this effort is ConfigCat.

The growing community of ConfigCat cover image

ConfigCat is a feature flag and remote configuration service that allows developers to manage features, alter their configurations, and roll them out gradually to specific users or groups based on targeting rules and percentage options. Think of a feature flag as a switch that toggles a feature on or off. In practice, it is a boolean value, allowing you to wrap a feature within a conditional if-statement and render the feature when its flag value is true.

For an app to correctly render a feature, it needs to query the value of the feature flag from ConfigCat. This is where ConfigCat's SDKs come in. ConfigCat SDKs are language-specific, so depending on your language of choice, you can install the appropriate SDK to query feature flag values. Initially, there were only a few SDKs, but thanks to developers in the open-source community, there is now an SDK for almost every language you could ever need. I've had the pleasure of speaking with some of the authors of these SDKs to learn more about their backgrounds, motivations, and goals for their contributions that have helped grow the open-source community of ConfigCat to what it is today.

ConfigCat's Growing Open Source Community

ConfigCat's growing open-source community started when developers came together to solve a problem that could help others and were inspired to contribute and make a difference. The developers in the open-source community have been instrumental to not only the growth of ConfigCat's SDKs but to the company as a whole. The community has contributed to developing SDKs for various languages and frameworks. Some of which I'll share with you include:

info

Currently, the complete list of open-source SDKs and projects can be found here and a brief overview of each can be found here.

Without further ado, let's dive into the stories behind some of these contributions.

ConfigCat SDK for Deno

The ConfigCat SDK for Deno was created by Sige, one of ConfigCat's Co-founders. Inspired by the works of Ryan Dahl, the creator of Node.js and Deno, Sige decided to try Deno out of curiosity. After experimenting with Deno, he realized that it would be a good idea to provide Deno developers with a simple way to manage and release features easily when building Deno apps. The SDK was published separately with the aim that, if it gained traction, it could eventually go through an official publishing process.

Since the ConfigCat Deno SDK was published, it was adopted by the community. However, due to the rise and popularity of other frameworks in the open-source community, it lost several users. If you are interested in learning more or considering using it, you can read more about it here.

ConfigCat Package for Laravel

Clem is a Lead Software Engineer at pod-point, a company that manufactures chargers for electric vehicles. As a big fan of Laravel and a believer in open-source (which he uses at work), he was eager to give back to the open-source community. Clem's motivation to create the ConfigCat package for Laravel stemmed from the need to use feature flags in his applications. After experimenting with simple config values within his apps, he realized he needed a more sustainable solution that offered more features with simplified toggling abilities. He started to look into a few options and found ConfigCat, which seemed simple and suitable. Clem decided to build a wrapper for Laravel that would play nicely with the framework and introduce added benefits.

The goal of the ConfigCat package for Laravel was to build something reusable and make it open-source to contribute to the community. Clem wanted to follow one of the core principles of Laravel by delivering a great Developer Experience. The API should be simple, eloquently designed, and easy to use. The package should be thoroughly tested to be trusted for stability and evolve if needed.

Since the package was published, there haven't been any major breaking changes, but the first open-source contribution was made recently. Clem reached out to ConfigCat to get the package advertised on their website and docs, and after a few messages, emails, and PRs, it was live on the site. Clem felt proud of his contribution and the impact it could have on other developers using Laravel. If you want to learn more about the ConfigCat package for Laravel, you can find it here.

ConfigCat SDK for Vue.js

While writing an article for the ConfigCat blog about Vue.js, Chavez realized it would be beneficial to create a ConfigCat SDK which bundles all the resources from ConfigCat's JavaScript SDK for seamless integration with Vue.js.

After exploring the Vue.js plugin API, Chavez set out to develop the SDK as a plugin that could be easily installed and imported to integrate ConfigCat feature flags into Vue applications. The first version of the NPM package was released a year ago. The SDK also includes a built-in <FeatureWrapper /> component, designed to wrap features controlled by specific flags.

If you're curious about learning more, you can visit the configcat-vue GitHub repository and documentation.

Contributions are Welcome

Whether you're a seasoned developer with years of experience or a junior developer eager to make a meaningful impact, your contributions are valued and welcomed in the open-source community. Technical writers play a crucial role as well, as their articles, which often reference sample apps to guide readers, are made open source, and accessible to anyone looking to contribute and learn from them.

Contributions are always welcome!

The evolution of open-source innovation drives the software industry forward. ConfigCat, for instance, stands out in this landscape by providing essential tools and resources, such as open-source SDKs for feature flags. These empower developers of all levels to craft flexible and dynamic software solutions. With the open-source community expanding steadily, these collective contributions are set to continue shaping the trajectory of software development in the foreseeable future.

To give ConfigCat a try, check out their forever free plan to get started. You can also follow ConfigCat on Facebook, X, LinkedIn, and GitHub for more posts and other announcements.