What is a SDK?
Using all the services available on the Hackle dashboard means using one of our SDKs.
Most SDKs are designed to be specific for each programming language used to create your platform, app, or website. Once installed, our SDKs will layer on top of your application/website/platform and obtain your user behavior to allow you to use all the Hackle functionalities from the Hackle dashboard.
SDK Types
We support two main types of SDK, client-side and server-side. Depending on your needs, you either choose one type of SDK or use both types if necessary.
For more information on the difference between client-side and server-side please check out the Client-side SDK and Server-side SDK document.
Type | Description |
---|---|
Client-side |
|
Server-side |
|
SDK Functions
Hackle SDK carries out the following main functions:
-
Distribute user traffic into test groups
This function distributes incoming user traffic into test groups A, B, and C, and returns the information on the assigned groups of the users back to Hackle to keep a record of each user’s exposure after the distribution is complete. -
Return information on feature releases to users
This function is used by feature flags. It returns the information on whether a particular feature has been released for a certain user back to Hackle. This information is then relayed to the dashboard. -
Send user events
This function is used by A/B testing and user funnel analysis. The information on the events fired by the users is sent back to Hackle to analyze user behavior. -
Targeting
This function allows A/B testing and feature flags to target users with specific properties.
In the case of A/B testing, only users with specific properties can participate in A/B testing, and in the case of feature flags, you can apply the settings of a feature flag to users with specific properties. -
Data segmentation
This function allows for a more in-depth analysis with specific property values for the analysis criteria for users. Hackle requires defining user properties that correspond to each user in the analysis criteria and sending the properties to the Hackle.
Client-side SDK
SDK | Test Group Distribution | Send Event Keys | Feature Flag | Data Segmentation | Targeting |
---|---|---|---|---|---|
All Versions | All Versions | 2.0.0+ | 2.0.0+ | 2.1.0+ | |
All Versions | All Versions | 2.0.0+ | 2.0.0+ | 2.0.0+ | |
All Versions | All Versions | 2.0.0+ | 2.0.0+ | 2.1.0+ | |
All Versions | All Versions | 2.0.0+ | 2.0.0+ | 2.1.0+ | |
All Versions | All Versions | 2.0.0+ | 2.0.0+ | 2.0.0+ |
Server-side SDK
SDK | Test Group Distribution | Send Event Keys | Feature Flag | Data Segmentation | Targeting |
---|---|---|---|---|---|
All Versions | All Versions | 2.0.0+ | 2.0.0+ | 2.1.0+ | |
All Versions | All Versions | 2.0.0+ | 2.0.0+ | 2.1.0+ | |
All Versions | All Versions | 2.0.0+ | 2.0.0+ | 2.1.0+ | |
All Versions | All Versions | Not supported | Not supported | Not supported | |
All Versions | All Versions | Not supported | Not supported | Not supported | |
All Versions | All Versions | Not supported | Not supported | Not supported |
SDK Versions
SDK Type | SDK | Version | Release Date |
---|---|---|---|
Client-side | Android | 2.6.1 | 2022.07 |
iOS | 2.6.0 | 2022.07 | |
JavaScript | 11.0.0 | 2022.08 | |
React | 11.0.0 | 2022.08 | |
React Native | 3.1.2 | 2022.03 | |
Server-side | Java/Kotlin | 2.6.1 | 2022.07 |
Python | 2.2.1 | 2022.06 | |
Node.js | 11.0.0 | 2022.08 | |
PHP | 0.0.3 | 2020.11 | |
Proxy | 0.1.0 | 2020.11 | |
Ruby | 1.0.0 | 2020.12 |
SDK Updates
Most SDKs are updated automatically, allowing you to simply integrate once. However, there are some SDKs that need to be updated manually.
Android, iOS, Java/Kotlin, PHP, and Ruby need manual updates and hence you need to make sure to enter the latest version during the Add Dependency step within the SDK Integration step (of each language).
Updated about 4 hours ago