Analytics

Custom Analytics Provider

If none of the built-in analytics providers meet your requirements, you can implement a custom analytics solution in staarter.dev.

Implementing Custom Analytics

To implement a custom analytics solution, you can create a new module in apps/web/modules/analytics and define the necessary functions and components to track user interactions and events.

Here's an example of how you can implement a custom analytics provider:

  1. Create a new directory for your custom analytics provider:
mkdir apps/web/modules/analytics/custom
  1. Create a new file for your custom analytics provider:
touch apps/web/modules/analytics/custom/index.tsx
  1. Define the necessary functions and components in your custom analytics provider:
import Script from 'next/script'
import type { AnalyticsHook } from "../types";

export function AnalyticsScript() {
  return (
    <Script
      async
      src="/path/to/custom-analytics.js"
    />
  )
}

export const useAnalytics: AnalyticsHook = () => {
  return {
    trackEvent(event, data) {
      if (typeof window !== "undefined") {
        // Track event using custom analytics provider
      }
    },
  }
}
  1. Update the apps/web/modules/analytics/index.tsx file to include your custom analytics provider:
export { AnalyticsScript, useAnalytics } from './custom'
Previous
Vercel