SwitchFeat: An Open-Source Feature Flags and A/B Testing Framework
SwitchFeat is an open-source, self-hosted platform that simplifies the management of feature flags and enables running A/B tests directly from your infrastructure. With SwitchFeat, there are no external servers involved, ensuring no latency in sending flags data over the internet. Your data stays within your network, providing enhanced security.
To get started with SwitchFeat, you can use the Docker image. Simply clone the repository and generate the image using the provided docker-compose.yml file. Alternatively, you can download the pre-made image from the official GitHub Registry. Once done, SwitchFeat will be available at http://localhost:4000
.
The SwitchFeat project is built using the Lerna framework, allowing for the management of multiple projects in a single repository. To build the project, navigate to the root folder and run the appropriate command. To start both the server and the UI, run the command npm start
. SwitchFeat will then be accessible at http://localhost:4000
.
During the development phase, you can run the server and the UI on separate ports for convenience. This allows for easier frontend development without the need for a full build on both projects for every change. To run the UI process on http://localhost:3000
, use the command npm run ui
. To run the server process on http://localhost:4000
, use the command npm run server
.
Contributions to SwitchFeat are highly encouraged. Whether it's a bug fix, documentation update, or feature request, your contributions are welcome. Take a look at the public roadmap to see what's coming and where you can help.
SwitchFeat provides developers with a powerful and flexible feature flags and A/B testing framework that can be easily integrated into their projects. With its open-source nature, self-hosted capabilities, and emphasis on data security, SwitchFeat is a valuable tool for developers looking to optimize their development and testing processes.