Skip to content
forked from Xabaril/Esquio

Esquio is a Feature Toggle Library for .NET Developers.

License

Notifications You must be signed in to change notification settings

mattdhearn/Esquio

 
 

Repository files navigation

Esquio Build

Esquio Build

Documentation Status

Blimp demo badge

About Esquio

Esquio is a Feature Toggles (aka Feature Flags) and A/B testing framework for .NET Core 3.0. Feature Toogle is a powerful technique that allows developers to deliver new functionality to users withouth changing code. Provides an alternative to to mantain multiples branches (aka feature branches), so any feature can be tested even before it is completed and ready for the release. We can release a version of our product with not production ready features. These non production ready features are hidden (toggled) for the broader set of users but can be enabled to any subset of testing or internal users we want them to try the features.We can use feature toogling to enable or disable features during run time.

Esquio is built with the possibility of use it not only in ASP.NET Core 3.0 in mind, but making it possible to use also in other .NET Core 3.0 projects like workers, webjobs, classlibraries, ... almost any kind of .NET Core 3.0 project. For the Esquio team, this is not only about using a library, but using a full Feature Toggles framework for all of our projects, and as a delivery mechanism.

We believe Feature Toggling is, somekind, a way of delivering software, making it a first class citizen in your DevOps processes, therefore we are working hard towards integrating it, via extension and pipelines tasks, with Azure DevOps, so you can use Esquio Toggles directly in your releases and delivery flows. Having a full toggle delivery experience.

Esquio Azure DevOps extensions are built in top of the Esquio API, in the case you need to integrate Esquio with any other tool, you can always use this API to handle the toggles.

Additionally, if you need it, Esquio has a full UI developed, so you can be able to handle all your Toggles in it, making it fairly simple to use and manage.

Maintained by awesome community contributors.

For project documentation, please visit readthedocs.

Temporary demo environment

If you want to play around with Esquio without running it locally, you can boot a personal demo copy from your browser without downloading or setting up anything.

Clicking the link boots this repo in the Blimp cloud, and creates a public URL for you to access it.

To use the demo, you can follow along with this presentation at the ASP.NET Community Standup. You can skip the docker-compose step and simply use the "Connect" buttons in the sandbox to access the demo app and the Esquio UI.

How to build

Esquio is built against the latest NET Core 3.

How to run migrations

For SqlServer

dotnet ef migrations add MigrationName --context StoreDbContext --project src/Esquio.UI.Api --output-dir Infrastructure/Data/Migrations/SqlServer

For Postgres

dotnet ef migrations add MigrationName --context NpgSqlContext --project src/Esquio.UI.Api --output-dir Infrastructure/Data/Migrations/NpgSql

For MySql

dotnet ef migrations add MigrationName --context MySqlContext --project src/Esquio.UI.Api --output-dir Infrastructure/Data/Migrations/MySql

Acknowledgements

Esquio is built using the following great open source projects and free services:

..and last but not least a big thanks to all our contributors!

Code of conduct

This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information see the .NET Foundation Code of Conduct.

Videos

ASP.NET Community Standup - May 12th 2020 - Esquio Feature Toggles

ASP.NET Community Standup - May 12th 2020 - Esquio Feature Toggles

MeetUp | NetCore y Feature Flags(Spanish)

MeetUp | NetCore y Feature Flags(Spanish)

About

Esquio is a Feature Toggle Library for .NET Developers.

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 60.0%
  • C# 31.7%
  • HTML 3.6%
  • CSS 3.6%
  • Less 0.5%
  • TypeScript 0.4%
  • Other 0.2%