Mixpanel library for QML
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.



Mixpanel library for QtQuick. Only meaningful file is src/Mixpanel.qml, the rest is infrustructure for imports to work cleverly and tests.

Mobile Analytics

Projects using this library

  • Wikipedia for Sailfish
  • Add your project here
  • Know of other projects? Drop a note or just make a pull request with the addition to this list :)


Typically you want to add this project as a git submodule (or just copy-paste src folder to your project) and add src project to qml imports via something like view->engine()->addImportPath(SailfishApp::pathTo("components/Mixpanel-qml/src").toString()); (that is for Sailfish project. Full path to QML file in your project is then components/Mixpanel-qml/src/Mixpanel/Mixpanel.qml )

Then in your code you can do the following

import Mixpanel 0.1
Page {  // Or whatever other component you use
  Mixpanel {
   id: mx
   mixpanelToken: "123"  // Nothing works without it, get one at mixpanel.com
function coolEventHappened() {
  mx.track("cool event")
  mx.track("another event with params", {userLevel: "Top level"} )

You may also like adding this path to QML_IMPORT_PATH so that Qt Creator would use autocompletion for Mixpanel as the test project is doing: QML_IMPORT_PATH += $$PWD/../src


  • Add some default token for quick starts, just post warnings if it's used
  • Buffer events so that we won't make a request for every single call (can we timestamp individual ones then BTW?)
  • And sent buffer ASAP if user wants so or on object destruction if possible
  • And save buffered events to local storage in case app exits/crashes before events are sent


BSD (3 clause). Pull requests are welcome.