Docs

Migrating from the Vue community SDK

In December 2024, Clerk introduced official support for Vue. This migration guide covers converting from the vue-clerk community SDK to Clerk's official SDK. It covers the breaking changes that were introduced and provides examples on how to resolve them.

Installation

Uninstall the community SDK and install Clerk's new official SDK for Vue.

terminal
npm uninstall vue-clerk
npm install @clerk/vue
terminal
yarn remove vue-clerk
yarn add @clerk/vue
terminal
pnpm remove vue-clerk
pnpm add @clerk/vue

Breaking changes

The useClerk() composable

The useClerk() composable has two important changes:

  1. Import path has changed from vue-clerk to @clerk/vue.
  2. The return value is now a Vue ref containing the Clerk instance.

The key difference is that you now need to use clerk.value to access Clerk methods, since the composable returns a reactive ref.

Update your code as follows:

<script setup>
import { useClerk } from 'vue-clerk'
import { useClerk } from '@clerk/vue'
const clerk = useClerk()
function signIn() {
  clerk.openSignIn()
  clerk.value.openSignIn()
}
</script>
<template>
  <button @click="signIn">Sign in</button>
</template>

Feedback

What did you think of this content?

Last updated on