[GH-ISSUE #800] Feature request: @clerk/nextjs compatibility #177

Closed
opened 2026-05-06 12:37:53 +02:00 by BreizhHardware · 0 comments

Originally created by @Shorebirdmgmt on GitHub (Apr 9, 2026).
Original GitHub issue: https://github.com/cloudflare/vinext/issues/800

Description

vinext check flags @clerk/nextjs (v7.0.12) as incompatible:

Libraries: 2/3 compatible
  ✗  @clerk/nextjs — deep Next.js middleware integration not compatible

Clerk is one of the most widely used auth providers for Next.js, especially in B2B SaaS. Supporting @clerk/nextjs would significantly expand vinext's adoption.

What Clerk uses

  • clerkMiddleware() — wraps Next.js middleware with auth checks, route protection, and org resolution
  • frontendApiProxy — proxies Clerk's Frontend API through the app's domain (for custom domain auth)
  • auth() — server-side helper in Server Components, Route Handlers, and Server Actions
  • <ClerkProvider> — React context provider
  • useAuth(), useUser(), useOrganization() — client hooks
  • <Show>, <SignIn>, <UserButton> — prebuilt UI components

What likely breaks

The middleware integration is the main issue. clerkMiddleware() from @clerk/nextjs/server hooks into Next.js middleware internals that vinext may not replicate. The client-side components and hooks likely work fine since they're standard React.

Impact

Without Clerk support, B2B SaaS apps using Clerk for auth, organizations, RBAC, and billing can't migrate to vinext. This is a large segment of the Next.js ecosystem.

Environment

  • vinext 0.0.40
  • @clerk/nextjs 7.0.12
  • Next.js 16.2.2, App Router
Originally created by @Shorebirdmgmt on GitHub (Apr 9, 2026). Original GitHub issue: https://github.com/cloudflare/vinext/issues/800 ## Description `vinext check` flags `@clerk/nextjs` (v7.0.12) as incompatible: ``` Libraries: 2/3 compatible ✗ @clerk/nextjs — deep Next.js middleware integration not compatible ``` Clerk is one of the most widely used auth providers for Next.js, especially in B2B SaaS. Supporting `@clerk/nextjs` would significantly expand vinext's adoption. ## What Clerk uses - `clerkMiddleware()` — wraps Next.js middleware with auth checks, route protection, and org resolution - `frontendApiProxy` — proxies Clerk's Frontend API through the app's domain (for custom domain auth) - `auth()` — server-side helper in Server Components, Route Handlers, and Server Actions - `<ClerkProvider>` — React context provider - `useAuth()`, `useUser()`, `useOrganization()` — client hooks - `<Show>`, `<SignIn>`, `<UserButton>` — prebuilt UI components ## What likely breaks The middleware integration is the main issue. `clerkMiddleware()` from `@clerk/nextjs/server` hooks into Next.js middleware internals that vinext may not replicate. The client-side components and hooks likely work fine since they're standard React. ## Impact Without Clerk support, B2B SaaS apps using Clerk for auth, organizations, RBAC, and billing can't migrate to vinext. This is a large segment of the Next.js ecosystem. ## Environment - vinext 0.0.40 - @clerk/nextjs 7.0.12 - Next.js 16.2.2, App Router
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/vinext#177
No description provided.