Set up AscendKit and add it to your app in under 10 minutes.

Getting Started

AscendKit gives your app authentication, analytics, email templates, surveys, and user journeys — configured from the CLI or AI coding agents, not hardcoded.

Framework support

FrameworkAuthComponentsAnalyticsWebhooks
Next.js 14+Full (server + client)Pre-built UIClient + serverServer
React (Vite, Remix, Astro)Client hooks onlyPre-built UIClient only
FastAPIToken verificationServerServer
Flask / DjangoToken verificationServerServer
Any PythonToken verificationServerServer

The JavaScript SDK package is @ascendkit/nextjs. React hooks and components work in any React framework, but the server-side auth runtime (session management, OAuth callbacks) requires Next.js today. Python backends use the ascendkit package for token verification and webhooks with any framework.

Setup sequence

Follow these steps in order:

1. Create an account

Sign up at the AscendKit portal. When you sign up, AscendKit creates your first project with a dev environment pre-loaded with starter content:

  • An onboarding journey with a welcome flow and common lifecycle triggers
  • Email templates for verification, welcome, and password reset
  • A starter NPS survey

Your dev environment is fully functional with no restrictions — use it for local testing or ship it to customers as-is. Review and personalize the starter content whenever you're ready.

2. Install the CLI and SDK

See Installation for OS-specific instructions and prerequisites.

3. Initialize the CLI

In your app's root directory:

ascendkit init

This opens a browser window for authentication and saves credentials locally. Then link to your development environment:

ascendkit set-env pk_dev_your_public_key

This writes your API URL, public key, and secret key into .env/.env.local, and includes an APP_URL= placeholder. We recommend setting it to your app's origin (e.g., APP_URL=http://localhost:3000) to avoid social login callback issues. See CLI Setup for details.

4. Review & configure

Your dev environment comes with starter content that works out of the box. Use the CLI or portal to review and personalize it — no code changes needed.

Review your starter content

  • Email Templates — customize the verification, welcome, and password reset emails for your brand
  • User Journeys — adjust triggers and content in the onboarding journey to match your product's flow
  • Surveys — edit the starter NPS survey or create CSAT and custom surveys

Set up your own identity

Starter defaults use AscendKit's shared infrastructure so you can get started immediately. Before going to production, set up your own:

  • Email sending domain — Starter emails send from AscendKit's address. To send as your brand, verify a custom domain (DKIM/SPF) and create email identities for your sender addresses.
  • OAuth credentials — Social logins (Google, GitHub, LinkedIn) work immediately through AscendKit's shared OAuth proxy. For production, we strongly recommend registering your own OAuth apps with your own client ID and secret — this gives you full control over consent screens, branding, and rate limits.
  • Webhooks — configure endpoints to receive user lifecycle events in your backend
  • Analytics — track every visitor from first page view through signup with automatic identity stitching and attribution
  • Analytics CLI — query visitor traffic, acquisition sources, and conversion metrics from the terminal

Configuration is live — you can update templates, journeys, surveys, and auth settings at any time without redeploying your app.

5. Integrate with your app

Add the SDK to your codebase. The setup differs by framework:

  • Next.js: Next.js Integration — auth runtime, provider, pre-built UI components
  • Python backend: Python SDK — token verification, webhook handling

Adding environments

Your dev environment is all you need to get started — it's fully functional for both local development and production use. When you're ready to separate environments (e.g., a dedicated production environment with its own data and keys), use the promote command:

ascendkit environment promote --target prod

This copies all your configuration, templates, journeys, and surveys into the new environment. The only change in your app is swapping the environment key — replace your pk_dev_... key with the new pk_prod_... key, and everything works the same way.

Multiple environments are available on the Launch and Scale tiers.

Architecture

Your App (Next.js / React / Python)
  └── AscendKit SDK
        └── AscendKit Backend API
              ├── Auth (credentials, OAuth, magic link, waitlist)
              ├── Analytics (pageviews, attribution, identity stitching)
              ├── Email (templates, domain verification)
              ├── Surveys (NPS, CSAT, custom)
              └── Journeys (lifecycle automation)

CLI / Portal
  └── AscendKit Backend API (same)

The SDK runs inside your app and talks to the AscendKit backend. The CLI and portal configure that same backend. Your app code doesn't change when you toggle providers, update templates, or create surveys.

AI-assisted integration

If you're using an AI coding assistant (Cursor, Copilot, Claude, ChatGPT, etc.), point it at the machine-readable docs:

  • llms.txt — quickstart with code examples, plus links to each doc page. Best for most AI tools.
  • llms-full.txt — all documentation in a single file. Use when your AI has a large context window or you want the complete reference.