Quick Start

Set up Realanalytics in a new or existing app

1. Authenticate and scaffold analytics files

npx realanalytics login
npx realanalytics init

init creates:

  • analytics/events.ts
  • analytics/dashboards/overview.ts
  • .realanalytics/credentials.json

2. Install and initialize the SDK

npm install @realanalytics/sdk
// lib/analytics.ts
import { createClient } from '@realanalytics/sdk'

export const analytics = createClient({
  publicKey: process.env.NEXT_PUBLIC_REALANALYTICS_KEY!,
})

3. Track a custom event

import { analytics } from '@/lib/analytics'

analytics.track('signup_completed', {
  plan: 'pro',
  source: 'pricing_page',
})

4. Define event schema and dashboard

// analytics/events.ts
import { defineEvents, p } from '@realanalytics/sdk'

export const events = defineEvents({
  signup_completed: {
    properties: {
      plan: p.enum(['free', 'pro', 'enterprise'] as const).required(),
      source: p.string(),
    },
    isConversion: true,
  },
})
// analytics/dashboards/overview.ts
import { defineDashboard, widget, controls } from '@realanalytics/sdk'

export default defineDashboard({
  id: 'overview',
  title: 'Overview',
  defaultDateRange: 'last_30_days',
  controls: [
    controls.dateRange({ editable: true }),
    controls.filter({ editable: true }),
  ],
  widgets: [
    widget.metric({
      id: 'signups',
      label: 'Signups',
      event: 'signup_completed',
      aggregation: 'count',
    }),
  ],
})

5. Deploy

npx realanalytics deploy

Deploy compiles your TypeScript analytics files and pushes them to your project.

Next steps