1.3.0 • Published 2 years ago

no-persistence-mixpanel v1.3.0

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

No persistence mixpanel

Minimal Mixpanel API for usage in environments where cookies/localStorage are either not supported (e.g., Figma Plugins), or where you don't want/need them (e.g., to avoid needing a cookie banner).

This library wraps Mixpanel's HTTP API instead, which requires you to maintain the user's distinct_id property yourself.

In the case of figma, the library provides helper methods to do this automatically for you.

Installation

NPM

npm install no-persistence-mixpanel

Yarn

yarn add no-persistence-mixpanel

Usage

To use the Mixpanel api directly:

import Mixpanel from "no-persistence-mixpanel";

const mixpanel = new Mixpanel(/* Your Project Token */);
mixpanel.identify(user.id);
mixpanel.track("Page Viewed");

Figma Plugin

If you're using this package for a Figma plugin, the library provides additional helper methods to manage the user's identity.

In order to use them, you'll need to be using a bundler, such as webpack, and give your plugin currentuser permissions:

/**
 * manifest.json
 */
{
  "name": "example",
  "id": "1234",
  "api": "1.0.0",
  "main": "dist/code.js",
  "editorType": ["figma", "figjam"],
  "ui": "dist/ui.html"
  // Required permissions
  "permissions": ["currentuser"],
}

/**
 * code.ts
 */
import { setupIdentification } from "no-persistence-mixpanel/figma-code";
setupIdentification(figma);

/**
 * ui.ts
 */
import { init } from "no-persistence-mixpanel/figma-ui";
init(/* Your project token */, (mixpanel) => {
  mixpanel.track("Plugin Opened");
});
1.2.0

2 years ago

1.3.0

2 years ago

1.1.0

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago