A Python SDK for Molasses. It allows you to evaluate a user's status for a feature. It also helps simplify logging events for A/B testing.
Molasses uses polling to check if you have updated features. Once initialized, it takes microseconds to evaluate if a user is active.
1pip install molasses
Start by initializing the client with an APIKey. This begins the
polling for any feature updates. The updates happen every 15 seconds.
1from molasses import MolassesClient23client = MolassesClient("test_key")
If you decide not to track analytics events (experiment started,
experiment success) you can turn them off by setting the send_events
field to False
1client = MolassesClient("test_key", send_events=False)
You can call is_active with the key name and optionally a user’s
information. The id field is used to determine whether a user is part
of a percentage of users. If you have other constraints based on user
params you can pass those in the params field.
1client.is_active("FOO_TEST", {2"id":"foo",3"params":{4"isBetaUser":"false",5"isScaredUser":"false"6}7})
You can check if a feature is active for a user who is anonymous by just
calling is_active with the key. You won’t be able to do percentage
roll outs or track that user’s behavior.
1client.is_active("TEST_FEATURE_FOR_USER")
To track whether an experiment was successful you can call
experiment_success. experiment_success takes the feature’s name, any
additional parameters for the event and the user.
1client.experiment_success("GOOGLE_SSO",{2"version": "v2.3.0"3},{4"id":"foo",5"params":{6"isBetaUser":"false",7"isScaredUser":"false"8}9})
1from molasses import MolassesClient23client = MolassesClient("test_key")45if client.is_active('NEW_CHECKOUT'):6print "we are a go"7else:8print "we are a no go"