PostHogofficial

integration-tanstack-start

PostHog/skills · updated Apr 18, 2026

$npx skills add https://github.com/PostHog/skills --skill integration-tanstack-start
summary

### PostHog Integration for TanStack Start

  • Initialize PostHog in the root route using PostHogProvider and use posthog-node for server-side event capture in API routes.
  • Follow the four-step integration workflow and match the implementation patterns provided in the example project.
  • Use event handlers for analytics capture and user identification, avoiding useEffect for state-driven logic or event tracking.
skill.md

PostHog integration for TanStack Start

This skill helps you add PostHog analytics to TanStack Start applications.

Workflow

Follow these steps in order to complete the integration:

  1. basic-integration-1.0-begin.md - PostHog Setup - Begin ← Start here
  2. basic-integration-1.1-edit.md - PostHog Setup - Edit
  3. basic-integration-1.2-revise.md - PostHog Setup - Revise
  4. basic-integration-1.3-conclude.md - PostHog Setup - Conclusion

Reference files

  • references/EXAMPLE.md - TanStack Start example project code
  • references/tanstack-start.md - Tanstack start - docs
  • references/identify-users.md - Identify users - docs
  • references/basic-integration-1.0-begin.md - PostHog setup - begin
  • references/basic-integration-1.1-edit.md - PostHog setup - edit
  • references/basic-integration-1.2-revise.md - PostHog setup - revise
  • references/basic-integration-1.3-conclude.md - PostHog setup - conclusion

The example project shows the target implementation pattern. Consult the documentation for API details.

Key principles

  • Environment variables: Always use environment variables for PostHog keys. Never hardcode them.
  • Minimal changes: Add PostHog code alongside existing integrations. Don't replace or restructure existing code.
  • Match the example: Your implementation should follow the example project's patterns as closely as possible.

Framework guidelines

  • For feature flags, use useFeatureFlagEnabled() or useFeatureFlagPayload() hooks - they handle loading states and external sync automatically
  • Add analytics capture in event handlers where user actions occur, NOT in useEffect reacting to state changes
  • Do NOT use useEffect for data transformation - calculate derived values during render instead
  • Do NOT use useEffect to respond to user events - put that logic in the event handler itself
  • Do NOT use useEffect to chain state updates - calculate all related updates together in the event handler
  • Do NOT use useEffect to notify parent components - call the parent callback alongside setState in the event handler
  • To reset component state when a prop changes, pass the prop as the component's key instead of using useEffect
  • useEffect is ONLY for synchronizing with external systems (non-React widgets, browser APIs, network subscriptions)
  • Use PostHogProvider in the root route (__root.tsx) for client-side tracking
  • Use posthog-node for server-side event capture in API routes (src/routes/api/) - do NOT use posthog-js on the server
  • Create a singleton PostHog server client to avoid re-initialization on every request
  • Use TanStack Router's built-in navigation events for pageview tracking instead of useEffect
  • Use PostHogProvider in the root component defined in either the file-based convention (__root.tsx) or code-based convention (wherever createRootRoute() is called) so all child routes have access to the PostHog client

Identifying users

Identify users during login and signup events. Refer to the example code and documentation for the correct identify pattern for this framework. If both frontend and backend code exist, pass the client-side session and distinct ID using X-POSTHOG-DISTINCT-ID and X-POSTHOG-SESSION-ID headers to maintain correlation.

Error tracking

Add PostHog error tracking to relevant files, particularly around critical user flows and API boundaries.

general reviews

Ratings

4.670 reviews
  • Ishan Gill· Dec 28, 2024

    Keeps context tight: integration-tanstack-start is the kind of skill you can hand to a new teammate without a long onboarding doc.

  • Omar Tandon· Dec 24, 2024

    integration-tanstack-start fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.

  • Pratham Ware· Dec 20, 2024

    integration-tanstack-start reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Ishan Kim· Dec 20, 2024

    Registry listing for integration-tanstack-start matched our evaluation — installs cleanly and behaves as described in the markdown.

  • Aisha Taylor· Dec 20, 2024

    integration-tanstack-start is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.

  • Alexander Abebe· Dec 8, 2024

    I recommend integration-tanstack-start for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.

  • Ava Rao· Dec 4, 2024

    integration-tanstack-start reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Aisha Harris· Nov 27, 2024

    integration-tanstack-start reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Charlotte Patel· Nov 23, 2024

    I recommend integration-tanstack-start for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.

  • Aarav Jain· Nov 19, 2024

    integration-tanstack-start has been reliable in day-to-day use. Documentation quality is above average for community skills.

showing 1-10 of 70

1 / 7