matomo 1.1.0 copy "matomo: ^1.1.0" to clipboard
matomo: ^1.1.0 copied to clipboard

Cross-platform Matomo tracking for Flutter, using the Matomo API and written in pure Dart.

matomo #

A Dart Client for Matomo. This is completely written in Dart and works cross-platform, including web.

Getting Started #

dependencies:
    matomo: ^1.1.0
copied to clipboard

As early as possible in your application, you need to configure the Matomo Tracker to pass the URL endpoint of your instance and your Site ID.

    await MatomoTracker().initialize(
        siteId: siteId,
        url: 'https://example.com/piwik.php',
    );
copied to clipboard

If you need to use your own Visitor ID, you can pass it at the initialization of MatomoTracker as is:

    await MatomoTracker().initialize(
        siteId: siteId,
        url: 'https://example.com/piwik.php',
        visitorId: 'customer_1',
    );
copied to clipboard

To track views simply replace StatelessWidget by TraceableStatelessWidget, StatefulWidget by TraceableStatefulWidget and finally InheritedWidget by TraceableInheritedWidget.

You can also optionally call directly trackScreen or trackScreenWithName to track a view.

For tracking goals and, events call trackGoal and trackEvent respectively.

A value can be passed for events:

MatomoTracker().trackEvent('eventName', 'eventAction', eventValue='eventValue');
copied to clipboard

Opting Out #

If you want to offer a way for the user to opt out of analytics, you can use the setOptOut() call.

MatomoTracker().setOptOut(true);
copied to clipboard
30
likes
130
points
185
downloads

Publisher

unverified uploader

Weekly Downloads

2024.09.16 - 2025.03.31

Cross-platform Matomo tracking for Flutter, using the Matomo API and written in pure Dart.

Repository (GitHub)

Documentation

API reference

License

MIT (license)

Dependencies

fk_user_agent, flutter, http, logging, package_info_plus, shared_preferences, universal_html, uuid

More

Packages that depend on matomo