Storyly Personalization Engine Setup

This guide covers the core concepts and a step-by-step implementation to help you initialize Storyly Analytics SDK - Personalization Engine Module in your Flutter application.

📘

Before you begin

Make sure you have a working Storyly Placement SDK integration (token, view, provider) as described in the Initial Setup.

What is Storyly Analytics Module

Storyly Analytics Module is a lightweight module in Storyly Placement SDK for tracking product-related events (views, cart additions, wishlist additions, purchases) to enhance personalization in terms of product recommendation in Storyly content.

Setup SDK

Storyly Placement SDK integration covers the Storyly Analytics Module setup.

Initialize Components

You need to call StorylyAnalytics.initialize(config) once in your application initialization.

import 'package:flutter/widgets.dart';
import 'package:storyly_placement_flutter/storyly_placement_provider.dart';

void main() {
  WidgetsFlutterBinding.ensureInitialized();

  final config = STRAnalyticsConfig(
    token: <your_application_token_here>,
    userId: <end-user id in your application>, // optional
  );
  StorylyAnalytics.initialize(config);

  runApp(const MyApp());
}

🚧

Warning

Please provide a valid token during initialization, otherwise the events are silently dropped.

Track Events

You can track product interactions anywhere in your application.

final product = STRAnalyticProduct(
  productId: ...,
  productGroupId: ...,
  title: ...,
  desc: ...,
  price: ...,
  salesPrice: ...,
  quantity: ..., // optional, defaults to 1
);
StorylyAnalytics.trackProduct(
  STRAnalyticProductEvent.purchased,
  product,
);

//StorylyAnalytics.track(
//    STRAnalyticProductEvent event,
//    List<STRAnalyticProduct> products,
//)

📘

Tip

Please check StorylyAnalytics class reference.

📘

Tip

Please check STRAnalyticProduct class reference.

Product Analytic Events

This section shows the list of product analytic events and their description.

EventDart valueDescription
PDPViewedSTRAnalyticProductEvent.pdpViewedAn user viewed a product detail page
CartAddedSTRAnalyticProductEvent.cartAddedAn user added a product to their cart
WishlistAddedSTRAnalyticProductEvent.wishlistAddedA user added a product to their wishlist
PurchasedSTRAnalyticProductEvent.purchasedA user purchased a product

📘

Tip

Please check STRAnalyticProductEvent class reference.

📘

Best Practices

  • You must initialize StorylyAnalytics with correct configuration.