Flagsmith / Flagsmith/flagsmith-dotnet-client

Rule engine as a separate NuGet package

Open
#143 6 comments 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
20
Forks
15
PR merge metrics
No merged PRs in 30d

Description

Requesting a standalone Flagsmith Engine NuGet package, separate from the Flagsmith Client NuGet, for flexible rule evaluation without the full SDK.

Why:

I need a lightweight rule engine for custom use cases, bypassing the client’s networking and polling features.

Benefits:

Lean Engine: Minimal package for evaluating rules with my own data, reducing overhead.
Custom Polling: Freedom to implement my own polling strategy or data source.
Event Notification: Tailored event handling to fit my app’s architecture.
Less Dependencies: Avoids unnecessary dependencies like Polly, simplifying integration and minimizing version conflicts.
Metadata Enrichments: Single location to extend features with additional metadata such as tags.

Proposal:

A dependency-free package with rule evaluation logic, no networking, and optional event hooks, which should be considerably easy to implement by extracting the existing rule evaluation logic into a standalone library.

Conclusion:

This would enhance flexibility and support advanced scenarios where the full client isn’t needed. Thoughts?

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by locating the existing rule evaluation logic in the Flagsmith Client NuGet package and reviewing how it depends on networking, polling, Polly, and event handling. Define the boundaries for a standalone, dependency-free Engine package before changing code. Done means the engine can evaluate rules with caller-supplied data and is publishable separately from the full client.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.