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

  • SDK functions run on the user's device, such as a browser or mobile app.
  • JavaScript, Android, iOS, React SDK, etc.

Server-side

  • SDK functions are executed on the server that provides the service.
  • Java/Kotlin, Python, Node.js SDK, etc.

SDK Functions

Hackle SDK carries out the following main functions:

  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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

Android

All Versions

All Versions

2.0.0+

2.0.0+

2.1.0+

iOS

All Versions

All Versions

2.0.0+

2.0.0+

2.0.0+

JavaScript

All Versions

All Versions

2.0.0+

2.0.0+

2.1.0+

React

All Versions

All Versions

2.0.0+

2.0.0+

2.1.0+

React Native

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

Java/Kotlin

All Versions

All Versions

2.0.0+

2.0.0+

2.1.0+

Python

All Versions

All Versions

2.0.0+

2.0.0+

2.1.0+

Node.js

All Versions

All Versions

2.0.0+

2.0.0+

2.1.0+

PHP

All Versions

All Versions

Not supported

Not supported

Not supported

Proxy

All Versions

All Versions

Not supported

Not supported

Not supported

Ruby

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).


Did this page help you?