PackageTrack
Sign in Get early access

luciq_flutter

The official SDK for Luciq, the Agentic Observability Platform for Mobile. Use AI agents to resolve issues faster and empower your team to focus on building what matters.

19.9.3 6.9K downloads/mo #3436 most downloaded on pub.dev luciqai/luciq-flutter-sdk

What this package is like to depend on

Last release 19 days ago

05 Aug 2026

Ships fairly regularly

a new release about every 4 weeks

Nearly every release is documented

notes for 14 of 14 stable releases

Nothing withdrawn

no release was ever pulled

11 months old

14 releases · first in 2025

14 releases in the last 12 months

see the full history below

Release timeline

14 releases · Sep 2025 to Aug 2026
2026
Release Pre-release

Releases

latest 14
  1. 19.9.3 05 Aug 2026
    Release notes

    Added

    • Add support for logging user events with key-value parameters using UserEventParam. (#70)
    • Adds a new Surveys.setOnFinishCallback API that notifies the host app when a survey finishes,
      whether it was submitted, ended midway, or dismissed at the
      start. (#74)
    • Add support for Swift-Package-Manager (
      SPM) (#76)

    Changed

    Open source →
    Release notes

    Added

    • Add support for logging user events with key-value parameters using UserEventParam. (#70)

    • Adds a new Surveys.setOnFinishCallback API that notifies the host app when a survey finishes, whether it was submitted, ended midway, or dismissed at the start. (#74)

    • Add support for Swift-Package-Manager ( SPM) (#76)

    Changed

    Open source →
  2. 19.8.0 21 Jun 2026
    Release notes

    Add

    • comprehensive debug logging across all modules and performance-critical hot paths, ensuring the strict protection and redaction of SDK consumer PII.

    Fixed

    • Prevent PixelCopy crash on invalid surface during capture (#67).

    Changed

    BREAKING CHANGES

    Errors thrown by native (Pigeon) host calls are now logged and swallowed by the SDK instead of being re-thrown into your app. This honors the SDK rule that no exception may escape into the embedding application. As a consequence, every public API that previously returned a value now returns its nullable equivalent � null signals that the underlying host call failed.
    Affected public APIs:

    API Before After
    Luciq.getUserAttributes() Future<Map<String, String>> Future<Map<String, String>?>
    Replies.hasChats() Future<bool> Future<bool?>
    Replies.getUnreadRepliesCount() Future<int> Future<int?>
    SessionReplay.getSessionReplayLink() Future<String> Future<String?>
    Surveys.getAvailableSurveys() Future<List<String>> Future<List<String>?>
    Surveys.hasRespondedToSurvey() Future<bool> Future<bool?>
    Migration: coalesce with a sensible default or null-check before use, e.g.
    final hasChats = (await Replies.hasChats()) ?? false;
    final unread = (await Replies.getUnreadRepliesCount()) ?? 0;
    final link = await SessionReplay.getSessionReplayLink();
    if (link != null) { ... }
    Open source →
    Release notes

    Add

    • comprehensive debug logging across all modules and performance-critical hot paths, ensuring the strict protection and redaction of SDK consumer PII.

    Fixed

    • Prevent PixelCopy crash on invalid surface during capture (#67).

    Changed

    BREAKING CHANGES

    Errors thrown by native (Pigeon) host calls are now logged and swallowed by the SDK instead of being re-thrown into your app. This honors the SDK rule that no exception may escape into the embedding application. As a consequence, every public API that previously returned a value now returns its nullable equivalent — null signals that the underlying host call failed.

    Affected public APIs:

    API Before After
    Luciq.getUserAttributes() Future<Map<String, String>> Future<Map<String, String>?>
    Replies.hasChats() Future<bool> Future<bool?>
    Replies.getUnreadRepliesCount() Future<int> Future<int?>
    SessionReplay.getSessionReplayLink() Future<String> Future<String?>
    Surveys.getAvailableSurveys() Future<List<String>> Future<List<String>?>
    Surveys.hasRespondedToSurvey() Future<bool> Future<bool?>

    Migration: coalesce with a sensible default or null-check before use, e.g.

    final hasChats = (await Replies.hasChats()) ?? false;
    final unread = (await Replies.getUnreadRepliesCount()) ?? 0;
    final link = await SessionReplay.getSessionReplayLink();
    if (link != null) { ... }
    
    Open source →
  3. 19.7.0 24 May 2026
    Release notes

    Added

    • WebView Support: New APIs to monitor WebViews in your app, including page navigations, user interactions, and network requests issued from inside the WebView. Screenshots and session replays now capture WebView content alongside the rest of the UI.
      Enable WebView monitoring after Luciq.init:
      // Enable WebView monitoring (required for the APIs below).
      Luciq.setWebViewMonitoringEnabled(true);
      // Track taps and other user interactions inside WebViews.
      Luciq.setWebViewUserInteractionsTrackingEnabled(true);
      // Log network requests issued from WebViews.
      Luciq.setWebViewNetworkTrackingEnabled(true);
      All three APIs default to disabled. setWebViewMonitoringEnabled must be on for the user-interactions and network-tracking APIs to take effect.

    Changed

    Open source →
    Release notes

    Added

    • WebView Support: New APIs to monitor WebViews in your app, including page navigations, user interactions, and network requests issued from inside the WebView. Screenshots and session replays now capture WebView content alongside the rest of the UI.

      Enable WebView monitoring after Luciq.init:

      // Enable WebView monitoring (required for the APIs below).
      Luciq.setWebViewMonitoringEnabled(true);
      
      // Track taps and other user interactions inside WebViews.
      Luciq.setWebViewUserInteractionsTrackingEnabled(true);
      
      // Log network requests issued from WebViews.
      Luciq.setWebViewNetworkTrackingEnabled(true);
      

      All three APIs default to disabled. setWebViewMonitoringEnabled must be on for the user-interactions and network-tracking APIs to take effect.

    Changed

    Open source →
  4. 19.6.0 12 May 2026
    Release notes

    Added

    • Add support for Screen Loading with react-navigation integration and manual reporting API.

    Changed

    Open source →
    Release notes

    Added

    • Add support for Screen Loading with react-navigation integration and manual reporting API.

    Changed

    Open source →
  5. 19.4.0 09 Apr 2026
    Release notes

    Added

    • Session Replay Screenshot Quality Control: New API to adjust the visual quality of captured screenshots.
      // Available quality options:
      // - ScreenshotQualityMode.normal (default) - 25% WebP compression, balanced size/quality
      // - ScreenshotQualityMode.high - 50% WebP compression, better clarity
      // - ScreenshotQualityMode.greyScale - 25% WebP compression, reduced color data
      SessionReplay.setScreenshotQualityMode(ScreenshotQualityMode.normal);
    • Video-like Session Replay (Experimental): Capture screenshots based on user interactions or at fixed intervals for a video-like playback experience.

      Warning: Video-like Session Replay may capture sensitive UI unmasked in some cases. USE AT YOUR OWN DISCRETION TO PREVENT PII LEAKAGE. Opt in ONLY after validating masking/privacy in your app.

      // Set capturing mode
      // - ScreenshotCapturingMode.navigation (default) - Captures on screen changes
      // - ScreenshotCapturingMode.interaction - Captures on user interactions
      // - ScreenshotCapturingMode.frequency - Captures at fixed intervals
      SessionReplay.setScreenshotCapturingMode(ScreenshotCapturingMode.frequency);
      // Set screenshot capture interval (only applies to ScreenshotCapturingMode.frequency)
      // Value in milliseconds. Minimum: 500ms, Default: 1000ms
      SessionReplay.setScreenshotCaptureInterval(500);

      Note: On Android low-performance devices, only ScreenshotCapturingMode.navigation mode is available.

    • Custom Spans: New feature to manually instrument code paths for performance tracking
      • APM.startCustomSpan(name) - Start a custom span and return a span object
      • CustomSpan.end() - End the span and report to SDK
      • APM.addCompletedCustomSpan(name, startDate, endDate) - Record a pre-completed span
      • Support for up to 100 concurrent spans
      • Comprehensive validation (name length, empty checks, timestamp validation)
      • Feature flag support to enable/disable custom spans

    Changed

    Open source →
    Release notes

    Added

    • Session Replay Screenshot Quality Control: New API to adjust the visual quality of captured screenshots.

      // Available quality options:
      // - ScreenshotQualityMode.normal (default) - 25% WebP compression, balanced size/quality
      // - ScreenshotQualityMode.high - 50% WebP compression, better clarity
      // - ScreenshotQualityMode.greyScale - 25% WebP compression, reduced color data
      SessionReplay.setScreenshotQualityMode(ScreenshotQualityMode.normal);
      
    • Video-like Session Replay (Experimental): Capture screenshots based on user interactions or at fixed intervals for a video-like playback experience.

      Warning: Video-like Session Replay may capture sensitive UI unmasked in some cases. USE AT YOUR OWN DISCRETION TO PREVENT PII LEAKAGE. Opt in ONLY after validating masking/privacy in your app.

      // Set capturing mode
      // - ScreenshotCapturingMode.navigation (default) - Captures on screen changes
      // - ScreenshotCapturingMode.interaction - Captures on user interactions
      // - ScreenshotCapturingMode.frequency - Captures at fixed intervals
      SessionReplay.setScreenshotCapturingMode(ScreenshotCapturingMode.frequency);
      
      // Set screenshot capture interval (only applies to ScreenshotCapturingMode.frequency)
      // Value in milliseconds. Minimum: 500ms, Default: 1000ms
      SessionReplay.setScreenshotCaptureInterval(500);
      

      Note: On Android low-performance devices, only ScreenshotCapturingMode.navigation mode is available.

    • Custom Spans: New feature to manually instrument code paths for performance tracking

      • APM.startCustomSpan(name) - Start a custom span and return a span object
      • CustomSpan.end() - End the span and report to SDK
      • APM.addCompletedCustomSpan(name, startDate, endDate) - Record a pre-completed span
      • Support for up to 100 concurrent spans
      • Comprehensive validation (name length, empty checks, timestamp validation)
      • Feature flag support to enable/disable custom spans

    Changed

    Open source →
  6. 19.3.0 09 Mar 2026
    Release notes

    Changed

    Open source →
    Release notes

    Changed

    Open source →
  7. 19.2.2 25 Feb 2026
    Release notes

    Added

    • Allow identification with nullable email. (#40).

    Changed

    Open source →
    Release notes

    Added

    • Allow identification with nullable email. (#40).

    Changed

    Open source →
  8. 19.2.1 28 Jan 2026
    Release notes

    Added

    • Add new UserConsentActionType - noAutomaticBugGrouping.

    Changed

    Open source →
    Release notes

    Added

    • Add new UserConsentActionType - noAutomaticBugGrouping.

    Changed

    Open source →
  9. 19.1.0 15 Jan 2026
    Release notes

    Changed

    Open source →
    Release notes

    Changed

    Open source →
  10. 19.0.0 17 Dec 2025
    Release notes

    Added

    • Add support for Screen Rendering (#22)

    Changed

    Open source →
    Release notes

    Added

    • Add support for Screen Rendering (#22)

    Changed

    Open source →
  11. 18.2.1 26 Nov 2025
    Release notes

    Fixed

    • Guard LuciqNavigatorObserver pending-step removal to eliminate the race that could crash apps or produce incorrect screenshots during rapid route transitions. (#23)
    Open source →
  12. 18.2.0 19 Nov 2025
    Release notes

    Added

    • Make LuciqNavigatorObserver screen report delay configurable. (#17)

    Changed

    Open source →
  13. 18.0.1 28 Oct 2025
    Release notes

    Added

    • Add support for proactive bug-reporting (#4).

    • Add support enable/disable the automatic masking of sensitive information in network logs. (#6).

    • Add support NDK Crash. (#2).

    Changed

    Open source →
  14. 18.0.0 24 Sep 2025
    Release notes
    • SDK rebranded from Luciq to Luciq.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive