From 96e375da9a554f59ab949b2b624b1e5a188aed75 Mon Sep 17 00:00:00 2001 From: Tiffany Qi Date: Thu, 3 Oct 2024 17:04:14 -0700 Subject: [PATCH] convert theme to components --- components/ExtendedTabs/ExtendedTabs.tsx | 2 +- pages/docs/privacy/protecting-user-data.mdx | 62 +++++----- pages/docs/quickstart/company-analytics.mdx | 5 - pages/docs/quickstart/connect-your-data.mdx | 114 +++++++++--------- pages/docs/quickstart/identify-users.mdx | 58 ++++----- pages/docs/quickstart/install-mixpanel.mdx | 94 +++++++-------- pages/docs/quickstart/track-events.mdx | 58 ++++----- .../docs/tracking-methods/data-warehouse.mdx | 31 +++-- .../tracking-methods/integrations/stripe.mdx | 10 +- theme.config.tsx | 2 +- 10 files changed, 214 insertions(+), 222 deletions(-) diff --git a/components/ExtendedTabs/ExtendedTabs.tsx b/components/ExtendedTabs/ExtendedTabs.tsx index 14c3b8f20f..a38ac3a189 100644 --- a/components/ExtendedTabs/ExtendedTabs.tsx +++ b/components/ExtendedTabs/ExtendedTabs.tsx @@ -1,4 +1,4 @@ -import { Tabs } from 'nextra-theme-docs' +import { Tabs } from 'nextra/components' import { useEffect, useState } from 'react'; type ExtendedTabsType = { diff --git a/pages/docs/privacy/protecting-user-data.mdx b/pages/docs/privacy/protecting-user-data.mdx index 886462413f..cb12d6f68e 100644 --- a/pages/docs/privacy/protecting-user-data.mdx +++ b/pages/docs/privacy/protecting-user-data.mdx @@ -1,6 +1,6 @@ # Protecting User Data: Opt users out of tracking and anonymizing data -import { Tab, Tabs } from 'nextra-theme-docs' +import { Tabs } from 'nextra/components' ## Overview You have full control over the data you send to Mixpanel. Here we share best practices for tracking in a privacy-friendly way. @@ -9,64 +9,64 @@ You have full control over the data you send to Mixpanel. Here we share best pra You can use the opt_out method in Mixpanel's SDKs to opt users out of tracking. This state is controlled by a flag that is set as a browser cookie or localStorage. Note: because this setting is stateful, it only exists on our Web/Mobile SDKs -- if you're tracking from your servers, you will need to store this opt-out setting in a database and check it before sending any track calls. - + ```javascript mixpanel.opt_out_tracking(); ``` - - + + ```objc Mixpanel *mixpanel = [Mixpanel sharedInstance];\n[mixpanel optOutTracking]; ``` - - + + ```swift Mixpanel.mainInstance().optOutTracking(); ``` - - + + ```java mixpanel.optOutTracking(); ``` - - + + ```javascript mixpanel.optOutTracking(); ``` - + You can also configure our SDKs to opt users out of tracking by default: - + ```javascript mixpanel.init(YOUR TOKEN, {opt_out_tracking_by_default: true}); ``` - - + + ```objc Mixpanel *mixpanel = [Mixpanel sharedInstanceWithToken:@YOUR_API_TOKEN trackAutomaticEvents:NO optOutTrackingByDefault:YES]; ``` - - + + ```swift let mixpanel = Mixpanel.initialize(token: YOUR PROJECT TOKEN, trackAutomaticEvents: no, optOutTrackingByDefault: true) ``` - - + + ```java MixpanelAPI mixpanelOptOutDefault = MixpanelAPI.getInstance(context, YOUR PROJECT TOKEN, true, true /* opt out by default */); ``` - - + + ```javascript const trackAutomaticEvents = false; const optOutTrackingDefault = true; const mixpanel = new Mixpanel('your project token', trackAutomaticEvents, optOutTrackingDefault); mixpanel.init(); ``` - + @@ -74,31 +74,31 @@ mixpanel.init(); Mixpanel's Web and Mobile libraries use IP address to enrich events with geographic information like city, country, and region. Mixpanel does not store IP addresses, but rather, only uses IPs to assign [geolocation properties to data upon ingestion](/docs/tracking-best-practices/geolocation). You can disable this using the following configuration options in each of our SDKs: - + ```javascript Javascript mixpanel.init("YOUR_TOKEN", {"ip": false}) ``` - - + + ```objectivec Objective-C useIPAddressForGeoLocation = NO ``` - - + + ```swift Mixpanel.initialize(token: "MIXPANEL_TOKEN", useIPAddressForGeoLocation: false) ``` - - + + ```xml Android ``` - - + + ```javascript React Native setUseIpAddressForGeolocation(false) ``` - + ## Anonymizing Users diff --git a/pages/docs/quickstart/company-analytics.mdx b/pages/docs/quickstart/company-analytics.mdx index 881863192d..a755513308 100644 --- a/pages/docs/quickstart/company-analytics.mdx +++ b/pages/docs/quickstart/company-analytics.mdx @@ -1,10 +1,5 @@ # Company Analytics -import { Tab, Tabs } from 'nextra-theme-docs' - -import ExtendedTabs from '../../../components/ExtendedTabs/ExtendedTabs'; -import { dataItems } from '../../../utils/constants'; - You can use Mixpanel's SDKs to track events from your website, web application, or backend servers. We [recommend](/docs/tracking-methods/choosing-the-right-method) server-side tracking, since it is more reliable and easier to maintain than web/mobile tracking. Note: You'll need your Project Token to authenticate, which you can get [here](https://mixpanel.com/settings/project). diff --git a/pages/docs/quickstart/connect-your-data.mdx b/pages/docs/quickstart/connect-your-data.mdx index b662e98188..f16dc5b2dd 100644 --- a/pages/docs/quickstart/connect-your-data.mdx +++ b/pages/docs/quickstart/connect-your-data.mdx @@ -1,6 +1,6 @@ # Connect Your Data -import { Tab, Tabs } from 'nextra-theme-docs' +import { Tabs } from 'nextra/components' import ExtendedTabs from '../../../components/ExtendedTabs/ExtendedTabs'; @@ -14,53 +14,53 @@ Note: You'll need your Project Token to authenticate, which you can get [here](h ## Step 1: Install the SDK - + - + ```html ``` - - + + ```text npm install --save mixpanel-browser ``` - - + + ```text yarn add mixpanel-browser ``` - + - - + + ```shell Python pip install mixpanel ``` - + - + ```shell Node.js npm install mixpanel ``` - + - + ```shell Go go get github.com/mixpanel/mixpanel-go ``` - - + + ```shell Ruby gem install mixpanel-ruby ``` - - + + ```xml Java @@ -69,8 +69,8 @@ gem install mixpanel-ruby 1.4.4 ``` - - + + Under your app's root directory, run: ``` @@ -84,16 +84,16 @@ pod install ``` Note: For XCode 12.5+, there is a known compile issue, please refer to this [workaround](https://github.com/mixpanel/mixpanel-react-native/issues/43#issuecomment-829599732). - - + + Add `mixpanel_flutter: ^2.0.0` to your package's pubspec.yaml file and run: ``` flutter pub get ``` - - + + **Swift Package Manager** 1. In Xcode, select File > Swift Packages > Add Package Dependency. @@ -106,8 +106,8 @@ flutter pub get **Carthage** Add `github "mixpanel/mixpanel-iphone"` to your Cartfile. - - + + **Swift Package Manager (requires Xcode 12+)** 1. In Xcode, select File > Swift Packages > Add Package Dependency. @@ -120,8 +120,8 @@ Add `github "mixpanel/mixpanel-iphone"` to your Cartfile. **Carthage** Add `github "mixpanel/mixpanel-swift"` to your Cartfile. - - + + Add `implementation 'com.mixpanel.android:mixpanel-android:7.+'` as a dependency to your `build.gradle` file. Once you've updated `build.gradle`, you can force Android Studio to sync with your new configuration by clicking the Sync Project with Gradle Files icon at the top of the window: @@ -141,19 +141,19 @@ Next, add the following permissions in your AndroidManifest.xml: ``` - - + + Add `https://github.com/mixpanel/mixpanel-unity.git#master` to the dependencies section of `com.mixpanel.unity`. Alternatively, you can download and install the .unitypackage file from our [releases page](https://github.com/mixpanel/mixpanel-unity/releases). - + ## Step 2: Track your first event - + ```js Javascript import mixpanel from 'mixpanel-browser'; @@ -172,9 +172,9 @@ mixpanel.track('Sign Up', { You can also follow our video walkthrough [here](https://www.loom.com/embed/fbba03274dc441b49b578e8a734b1d99). - + - + ```python Python from mixpanel import Mixpanel @@ -190,9 +190,9 @@ mp.track(user_id, 'Signed Up', { For more options, see the reference and code for each SDK in [Github](https://github.com/mixpanel). - + - + ```js Node.js var Mixpanel = require("mixpanel"); @@ -209,9 +209,9 @@ mixpanel.track("Signed Up", { For more options, see the reference and code for each SDK in [Github](https://github.com/mixpanel). - + - + ```go Go package main @@ -238,9 +238,9 @@ func main() { For more options, see the reference and code for each SDK in [Github](https://github.com/mixpanel). - + - + ```ruby Ruby require 'mixpanel-ruby' mp = Mixpanel::Tracker.new(PROJECT_TOKEN) @@ -255,10 +255,10 @@ mp.track(user_id, 'Signed Up', { For more options, see the reference and code for each SDK in [Github](https://github.com/mixpanel). - + - + ```java Java import com.mixpanel.mixpanelapi.ClientDelivery; import com.mixpanel.mixpanelapi.MessageBuilder; @@ -285,9 +285,9 @@ mixpanel.deliver(delivery);", For more options, see the reference and code for each SDK in [Github](https://github.com/mixpanel). - + - + ```javascript import React from "react"; import { Button, SafeAreaView } from "react-native"; @@ -317,9 +317,9 @@ export default SampleApp; For more options, see the reference and code for each SDK in [Github](https://github.com/mixpanel). - + - + ```dart import 'package:mixpanel_flutter/mixpanel_flutter.dart'; class _YourClassState extends State { @@ -342,9 +342,9 @@ class _YourClassState extends State { For more options, see the reference and code for each SDK in [Github](https://github.com/mixpanel). - + - + ```objc #import "Mixpanel/Mixpanel.h" @@ -364,9 +364,9 @@ For more options, see the reference and code for each SDK in [Github](https://gi For more options, see the reference and code for each SDK in [Github](https://github.com/mixpanel). - + - + Import Mixpanel into `AppDelegate.swift`, and initialize Mixpanel within `application:didFinishLaunchingWithOptions`: ```swift @@ -389,9 +389,9 @@ func application(_ application: UIApplication, For more options, see the reference and code for each SDK in [Github](https://github.com/mixpanel). - + - + ```java import com.mixpanel.android.mpmetrics.MixpanelAPI; @@ -420,9 +420,9 @@ public class MainActivity extends ActionBarActivity { For more options, see the reference and code for each SDK in [Github](https://github.com/mixpanel). - + - + To initialize the library, first open the unity project settings menu for Mixpanel. (Edit -> Project Settings -> Mixpanel) Then, enter your project token into the Token and Debug Token input fields within the inspector. If you prefer to initialize Mixpanel manually, you can select the `Manual Initialization` in the settings and call `Mixpanel.Init()` to initialize. ![unity_screenshots](https://user-images.githubusercontent.com/36679208/152408022-62440f50-04c7-4ff3-b331-02d3d3122c9e.jpg) @@ -440,9 +440,9 @@ Mixpanel.Track('Signup', props); For more options, see the reference and code for each SDK in [Github](https://github.com/mixpanel). - + - + If you don't see an SDK or an integration in your language, you can send events to our API directly. Here's a sample script. Just plug in your Project Token at the top, run the script, and visit our [Events page](https://mixpanel.com/report/events) to see the events in our UI. @@ -492,7 +492,7 @@ Here are some other best practices: Our Import API is built to ingest billions of events per day across our customers. That said, we do rate limit at very high scale to ensure quality of service and real-time ingestion. Please refer to our [Import API docs](https://developer.mixpanel.com/reference/import-events) for details. All of our sample code transparently retries and backoff from rate limit exceptions. If you require a higher-limit for a 1-time backfill, please reach out to us at apis@mixpanel.com. - + diff --git a/pages/docs/quickstart/identify-users.mdx b/pages/docs/quickstart/identify-users.mdx index 47b6d326b3..776ef34043 100644 --- a/pages/docs/quickstart/identify-users.mdx +++ b/pages/docs/quickstart/identify-users.mdx @@ -1,6 +1,6 @@ # Identify Users -import { Tab, Tabs } from "nextra-theme-docs"; +import { Tabs } from "nextra/components"; import ExtendedButton from "/components/ExtendedButton/ExtendedButton"; import ExtendedTabs from "/components/ExtendedTabs/ExtendedTabs"; @@ -21,7 +21,7 @@ Including the user's email is also suggested, along with any additional **User P - + ```js Javascript mixpanel.identify('USER_ID') @@ -32,9 +32,9 @@ mixpanel.people.set({ '$name': 'Jane Doe', }); ```` - + - + ```python mp.people_set('USER_ID', {'$name' : 'Jane Doe', '$email' : 'jane.doe@example.com', @@ -45,9 +45,9 @@ mp.people_set('USER_ID', {'$name' : 'Jane Doe', You may want to disable ip geolocation when using a server-side SDK. You can learn more in [Server-Side Best Practices](/docs/tracking-best-practices/server-side-best-practices) - + - + ```shell php // create/update a profile for user id 12345 $mp->people->set('USER_ID', array( @@ -61,9 +61,9 @@ $mp->people->set('USER_ID', array( You may want to disable ip geolocation when using a server-side SDK. You can learn more in [Server-Side Best Practices](/docs/tracking-best-practices/server-side-best-practices) - + - + ```javascript mixpanel.people.set('USER_ID', { $name: 'Jane Doe', @@ -72,9 +72,9 @@ mixpanel.people.set('USER_ID', { // Add anything else about the user here }); ``` - + - + ```go exampleUser := mp.NewPeopleProperties("USER_ID", map[string]any{ "$name": "Jane Doe", @@ -91,9 +91,9 @@ exampleUser, ```` You may want to disable ip geolocation when using a server-side SDK. You can learn more in [Server-Side Best Practices](/docs/tracking-best-practices/server-side-best-practices) - + - + ```ruby mp.people.set('USER_ID', { '$name' => 'Jane Doe', @@ -105,9 +105,9 @@ mp.people.set('USER_ID', { You may want to disable ip geolocation when using a server-side SDK. You can learn more in [Server-Side Best Practices](/docs/tracking-best-practices/server-side-best-practices) - + - + ```java JSONObject props = new JSONObject(); props.put("$name", "Jane Doe"); @@ -119,9 +119,9 @@ JSONObject update = messageBuilder.set("USER_ID", props); mixpanel.sendMessage(update); ```` - + - + ```javascript Javascript mixpanel.identify("USER_ID"); @@ -133,9 +133,9 @@ mixpanel.getPeople().set("plan", "Premium"); You may want to disable ip geolocation when using a server-side SDK. You can learn more in [Server-Side Best Practices](/docs/tracking-best-practices/server-side-best-practices) - + - + ```java mixpanel.identify("USER_ID"); @@ -145,9 +145,9 @@ mixpanel.getPeople().set("$email", "jane.doe@example.com"); mixpanel.getPeople().set("plan", "Premium"); ```` - + - + ```objc Objective-C [mixpanel identify:@"USER_ID"]; @@ -156,9 +156,9 @@ mixpanel.getPeople().set("plan", "Premium"); [mixpanel.people set:@{@"plan": @"Premium"}]; ```` - + - + ```swift Swift Mixpanel.mainInstance().identify(distinctId: "USER_ID") @@ -167,9 +167,9 @@ Mixpanel.mainInstance().people.set(properties: [ "$name":"Jane Doe", "$plan":"Premium"]) ```` - + - + ```java Java // The second param is a flag for allowing profile updates mp.identify("USER_ID", true); @@ -180,9 +180,9 @@ mp.getPeople().set("$email", "jane.doe@example.com"); mp.getPeople().set("plan", "Premium"); ```` - + - + ```csharp Mixpanel.Identify("USER_ID"); @@ -192,9 +192,9 @@ Mixpanel.People.Set("$email", "jane.doe@example.com"); Mixpanel.People.Set("plan", "Premium"); ```` - + - + If you don't see an SDK or an integration in your language, you can send events to our API directly. Here's a sample script. Replace `YOUR_TOKEN` with your project token. You can find your token [here](https://mixpanel.com/settings/project). @@ -243,7 +243,7 @@ Our Import API is built to ingest billions of events per day across our customer All of our sample code transparently retries and backoff from rate limit exceptions. If you require a higher-limit for a 1-time backfill, please reach out to us at apis@mixpanel.com. - + diff --git a/pages/docs/quickstart/install-mixpanel.mdx b/pages/docs/quickstart/install-mixpanel.mdx index d7698c341e..c97f6ac8b4 100644 --- a/pages/docs/quickstart/install-mixpanel.mdx +++ b/pages/docs/quickstart/install-mixpanel.mdx @@ -1,8 +1,6 @@ # Install Mixpanel -import { Tab, Tabs } from "nextra-theme-docs"; -import { Card, Cards } from "nextra-theme-docs"; -import { Callout } from "nextra-theme-docs"; +import { Callout, Tabs } from "nextra/components"; import ExtendedButton from "/components/ExtendedButton/ExtendedButton"; import ExtendedTabs from "/components/ExtendedTabs/ExtendedTabs"; @@ -25,28 +23,28 @@ Choose from the methods below. Not sure how to choose? [Read our guide](/docs/tr - + ##### Install the SDK - + ```html ``` - - + + ```text npm install --save mixpanel-browser ``` - - + + ```text yarn add mixpanel-browser ``` - + ##### Configure the SDK Replace `YOUR_TOKEN` with your project token. You can find your token [here](https://mixpanel.com/settings/project). @@ -63,9 +61,9 @@ mixpanel.init("YOUR_TOKEN", { }); ``` - + - + ##### Install the SDK ```shell Python pip install mixpanel @@ -78,9 +76,9 @@ from mixpanel import Mixpanel mp = Mixpanel("YOUR_TOKEN") ```` - + - + ##### Install the SDK **Install with Composer** @@ -111,9 +109,9 @@ $mp = Mixpanel::getInstance("YOUR_TOKEN"); ?> ```` - + - + ##### Install the SDK ```shell Node.js npm install mixpanel @@ -131,9 +129,9 @@ var Mixpanel = require("mixpanel"); var mixpanel = Mixpanel.init("YOUR_TOKEN"); ``` - + - + ##### Install the SDK ```shell Go go get github.com/mixpanel/mixpanel-go @@ -154,9 +152,9 @@ mp := mixpanel.NewApiClient("YOUR_TOKEN") } ```` - + - + ##### Install the SDK ```shell Ruby gem install mixpanel-ruby @@ -172,9 +170,9 @@ require 'mixpanel-ruby' mp = Mixpanel::Tracker.new(YOUR_TOKEN) ``` - + - + ##### Install the SDK ```xml Java @@ -197,9 +195,9 @@ MixpanelAPI mixpanel = new MixpanelAPI(); MessageBuilder messageBuilder = new MessageBuilder('YOUR_TOKEN'); ``` - + - + ##### Install the SDK Under your app's root directory, run: @@ -230,9 +228,9 @@ const mixpanel = new Mixpanel("YOUR_TOKEN", trackAutomaticEvents); mixpanel.init(); ```` - + - + ##### Install the SDK Add `mixpanel_flutter: ^2.0.0` to your package's pubspec.yaml file and run: @@ -262,28 +260,28 @@ class _YourClassState extends State { } ``` - + - + ##### Install the SDK - + Note: Swift Package Manager requires Xcode 12+ 1. In Xcode, select File > Swift Packages > Add Package Dependency. 2. Follow the prompts using the URL for this repository and must select a version greater than or equal to v4.0.0 - + - + 1. Create a Podfile in your Xcode project directory by running `pod init` in your terminal, edit the Podfile generated, and add the following line: `pod 'Mixpanel'`. 2. Run `pod install` in your Xcode project directory. CocoaPods should download and install the Mixpanel library, and create a new Xcode workspace. Open up this workspace in Xcode or typing `open *.xcworkspace` in your terminal. - + -Add `github "mixpanel/mixpanel-iphone"` to your Cartfile. +Add `github "mixpanel/mixpanel-iphone"` to your Cartfile. ##### Configure the SDK @@ -300,26 +298,26 @@ Replace `YOUR_TOKEN` with your project token. You can find your token [here](htt } ```` - + - + ##### Install the SDK - + Note: Swift Package Manager requires Xcode 12+ 1. In Xcode, select File > Swift Packages > Add Package Dependency. 2. Paste the URL `https://github.com/mixpanel/mixpanel-swift` and a minimum semantic version of v2.8.0. - + - + 1. Create a Podfile in your Xcode project directory by running `pod init` in your terminal, edit the Podfile generated, and add the following line: `pod 'Mixpanel-swift'`. 2. Run `pod install` in your Xcode project directory. CocoaPods should download and install the Mixpanel library, and create a new Xcode workspace. Open up this workspace in Xcode or typing `open *.xcworkspace` in your terminal. - + - + Add `github "mixpanel/mixpanel-swift"` to your Cartfile. - + ##### Configure the SDK @@ -340,9 +338,9 @@ func application(_ application: UIApplication, } ```` - + - + ##### Install the SDK Add `implementation 'com.mixpanel.android:mixpanel-android:7.+'` as a dependency to your `build.gradle` file. @@ -386,9 +384,9 @@ public class MainActivity extends ActionBarActivity { } ``` - + - + ##### Install the SDK Add `https://github.com/mixpanel/mixpanel-unity.git#master` to the dependencies section of `com.mixpanel.unity`. @@ -413,8 +411,8 @@ using mixpanel; You're - - + + ##### Install the SDK @@ -423,7 +421,7 @@ You're Using the HTTP API does not require an installation. **You're ready to move to the next step.** - +

diff --git a/pages/docs/quickstart/track-events.mdx b/pages/docs/quickstart/track-events.mdx index 0a54b069d1..9841660d09 100644 --- a/pages/docs/quickstart/track-events.mdx +++ b/pages/docs/quickstart/track-events.mdx @@ -1,6 +1,6 @@ # Track Events -import { Tab, Tabs } from "nextra-theme-docs"; +import { Tabs } from "nextra/commponents"; import ExtendedButton from "/components/ExtendedButton/ExtendedButton"; import ExtendedTabs from "/components/ExtendedTabs/ExtendedTabs"; @@ -19,7 +19,7 @@ Replace `Sign Up` with a unique identifier for the event. Passing additional i - + ```js Javascript mixpanel.track('Sign Up', { 'Signup Type': 'Referral' @@ -32,9 +32,9 @@ mixpanel.track('Sign Up', { _ Video: [Debug Common Issues When Installing Mixpanel on Web](https://www.loom.com/embed/fbba03274dc441b49b578e8a734b1d99). _ Docs: [Read the Full Javascript SDK Docs](/docs/tracking-methods/sdks/javascript/) \* Github: [Browse the Open Source SDKs](https://github.com/mixpanel) - + - + ```python Python # Note: you must supply the USER_ID mp.track('USER_ID', 'Sign Up', { @@ -48,9 +48,9 @@ mp.track('USER_ID', 'Sign Up', { _ Docs: [Read the Python SDK Doc](/docs/tracking-methods/sdks/python/) _ Github: [Browse the Open Source SDKs](https://github.com/mixpanel) - + - + ```shell php $mp->track("button clicked", array("label" => "sign-up")); ``` @@ -61,9 +61,9 @@ $mp->track("button clicked", array("label" => "sign-up")); _ Docs: [Read the Python SDK Doc](/docs/tracking-methods/sdks/php/) _ Github: [Browse the Open Source SDKs](https://github.com/mixpanel) - + - + ```js Node.js // Note: you must supply the USER_ID mixpanel.track("Sign Up", { @@ -78,9 +78,9 @@ mixpanel.track("Sign Up", { _ Docs: [Read the Node.js SDK Doc](/docs/tracking-methods/sdks/nodejs/) _ Github: [Browse the Open Source SDKs](https://github.com/mixpanel) - + - + ```go Go exampleEvent = mp.NewEvent("Sign Up", "USER_ID", map[string]any{ "Signup Type": "Referral", @@ -99,9 +99,9 @@ exampleUser, **More resources:** * Docs: [Read the Go SDK Doc](/docs/tracking-methods/sdks/go/) * Github: [Browse the Open Source SDKs](https://github.com/mixpanel) - + - + ```ruby Ruby # Note: you must supply the USER_ID mp.track('USER_ID', 'Sign Up', { @@ -115,9 +115,9 @@ mp.track('USER_ID', 'Sign Up', { _ Docs: [Read the Ruby SDK Doc](/docs/tracking-methods/sdks/ruby/) _ Github: [Browse the Open Source SDKs](https://github.com/mixpanel) - + - + ```java Java import com.mixpanel.mixpanelapi.ClientDelivery; @@ -142,9 +142,9 @@ mixpanel.deliver(delivery); **More resources:** * Docs: [Read the Java SDK Doc](/docs/tracking-methods/sdks/java/) * Github: [Browse the Open Source SDKs](https://github.com/mixpanel) - + - + ```javascript mixpanel.track("Sign Up", { "Signup Type": "Referral" @@ -157,9 +157,9 @@ mixpanel.track("Sign Up", { _ Docs: [Read the React Native SDK Doc](/docs/tracking-methods/sdks/react-native/) _ Github: [Browse the Open Source SDKs](https://github.com/mixpanel) - + - + ```java mixpanel.track('Sign Up', { 'Signup Type': 'Referral' @@ -173,9 +173,9 @@ mixpanel.track('Sign Up', { - Docs: [Read the Flutter SDK Docs](/docs/tracking-methods/sdks/flutter/) - Github: [Browse the Open Source SDKs](https://github.com/mixpanel) - + - + ```objc [mixpanel track:@"Signed Up" properties: @{ @"Signup Type": @"Referral" } @@ -189,9 +189,9 @@ mixpanel.track('Sign Up', { - Docs: [Read the iOS (Objective-C) SDK Doc](/docs/tracking-methods/sdks/ios/) - Github: [Browse the Open Source SDKs](https://github.com/mixpanel) - + - + ```swift Mixpanel.mainInstance().track(event:"Sign Up", properties: [ "Signup Type": "Referral", @@ -204,9 +204,9 @@ Mixpanel.mainInstance().track(event:"Sign Up", properties: [ _ Docs: [Read the iOS (Swift) SDK Doc](/docs/tracking-methods/sdks/swift/) _ Github: [Browse the Open Source SDKs](https://github.com/mixpanel) - + - + ```java JSONObject props = new JSONObject(); props.put("Signup Type", "Referral"); @@ -219,9 +219,9 @@ mp.track("Signed Up", props); _ Docs: [Read the Android SDK Doc](/docs/tracking-methods/sdks/android/) _ Github: [Browse the Open Source SDKs](https://github.com/mixpanel) - + - + ```csharp var props = new Value(); props["Signup Type"] = "Referral"; @@ -234,9 +234,9 @@ Mixpanel.Track('Sign up', props); _ Docs: [Read the Unity SDK Doc](/docs/tracking-methods/sdks/unity/) _ Github: [Browse the Open Source SDKs](https://github.com/mixpanel) - + - + If you don't see an SDK or an integration in your language, you can send events to our API directly. Here's a sample script. Replace `YOUR_TOKEN` with your project token. You can find your token [here](https://mixpanel.com/settings/project). @@ -284,7 +284,7 @@ Our Import API is built to ingest billions of events per day across our customer All of our sample code transparently retries and backoff from rate limit exceptions. If you require a higher-limit for a 1-time backfill, please reach out to us at apis@mixpanel.com. - + diff --git a/pages/docs/tracking-methods/data-warehouse.mdx b/pages/docs/tracking-methods/data-warehouse.mdx index 15bd4d3b6c..c251d572f6 100644 --- a/pages/docs/tracking-methods/data-warehouse.mdx +++ b/pages/docs/tracking-methods/data-warehouse.mdx @@ -1,5 +1,4 @@ -import { Tab, Tabs } from 'nextra-theme-docs' -import { Callout } from 'nextra/components' +import { Callout, Tabs } from 'nextra/components' import ExtendedTabs from '../../../components/ExtendedTabs/ExtendedTabs'; import { dwhItems, mirrorItems } from '../../../utils/constants'; @@ -28,7 +27,7 @@ Navigate to [Project Settings → Warehouse Sources](https://mixpanel.com/report - +