Skip to content

Conversation

@jacekradko
Copy link
Member

@jacekradko jacekradko commented Feb 11, 2026

Summary

  • Add next-app-router-bundled-ui integration template that imports @clerk/ui and passes ui={ui} to <ClerkProvider>
  • Include sign-in, sign-up, user-button pages and a themes page testing dark, neobrutalism, shadesOfPurple, and shadcn themes
  • Register the template, preset config (with @clerk/ui dependency), and long-running app entry

Test plan

  • pnpm build passes
  • Integration app starts and renders bundled UI components
  • Theme test page renders all four themes without errors

Summary by CodeRabbit

  • New Features
    • Added a Next.js App Router template with bundled auth UI: sign-in/sign-up flows, user button/profile UI, theme showcase, global styles, middleware-enabled auth, TypeScript config, and ready-to-run dev/build scripts.
    • Made the new template available as an app preset for long-running/demo runs.
  • Tests
    • Added end-to-end smoke tests covering auth flows, UI components, themes, sign-in/sign-out, and user interactions.

Add a Next.js App Router integration template that uses `@clerk/ui` bundled UI
via `ui={ui}` on `<ClerkProvider>`. Includes sign-in, sign-up, user-button, and
theme test pages for dark, neobrutalism, shadesOfPurple, and shadcn themes.
@vercel
Copy link

vercel bot commented Feb 11, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
clerk-js-sandbox Ready Ready Preview, Comment Feb 12, 2026 2:24am

Request Review

@changeset-bot
Copy link

changeset-bot bot commented Feb 11, 2026

🦋 Changeset detected

Latest commit: 1971f44

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 0 packages

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@jacekradko jacekradko changed the title feat(integration): add next-app-router-bundled-ui template feat(e2e): add next-app-router-bundled-ui integration template Feb 11, 2026
@pkg-pr-new
Copy link

pkg-pr-new bot commented Feb 11, 2026

Open in StackBlitz

@clerk/agent-toolkit

npm i https://pkg.pr.new/@clerk/agent-toolkit@7826

@clerk/astro

npm i https://pkg.pr.new/@clerk/astro@7826

@clerk/backend

npm i https://pkg.pr.new/@clerk/backend@7826

@clerk/chrome-extension

npm i https://pkg.pr.new/@clerk/chrome-extension@7826

@clerk/clerk-js

npm i https://pkg.pr.new/@clerk/clerk-js@7826

@clerk/dev-cli

npm i https://pkg.pr.new/@clerk/dev-cli@7826

@clerk/expo

npm i https://pkg.pr.new/@clerk/expo@7826

@clerk/expo-passkeys

npm i https://pkg.pr.new/@clerk/expo-passkeys@7826

@clerk/express

npm i https://pkg.pr.new/@clerk/express@7826

@clerk/fastify

npm i https://pkg.pr.new/@clerk/fastify@7826

@clerk/hono

npm i https://pkg.pr.new/@clerk/hono@7826

@clerk/localizations

npm i https://pkg.pr.new/@clerk/localizations@7826

@clerk/nextjs

npm i https://pkg.pr.new/@clerk/nextjs@7826

@clerk/nuxt

npm i https://pkg.pr.new/@clerk/nuxt@7826

@clerk/react

npm i https://pkg.pr.new/@clerk/react@7826

@clerk/react-router

npm i https://pkg.pr.new/@clerk/react-router@7826

@clerk/shared

npm i https://pkg.pr.new/@clerk/shared@7826

@clerk/tanstack-react-start

npm i https://pkg.pr.new/@clerk/tanstack-react-start@7826

@clerk/testing

npm i https://pkg.pr.new/@clerk/testing@7826

@clerk/ui

npm i https://pkg.pr.new/@clerk/ui@7826

@clerk/upgrade

npm i https://pkg.pr.new/@clerk/upgrade@7826

@clerk/vue

npm i https://pkg.pr.new/@clerk/vue@7826

commit: 1971f44

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 11, 2026

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Adds a new Next.js 15 App Router template next-app-router-bundled-ui (files: package.json, tsconfig.json, next.config.js, .gitignore, global CSS, app layout, pages for home, sign-in, sign-up, themes, user-button, middleware, and related assets). Introduces a new NextJS preset appRouterBundledUI and exposes it on the exported next object. Appends next.appRouterBundledUI.withEmailCodes to the long-running apps list. Adds Playwright integration tests at integration/tests/bundled-ui.test.ts and a small changeset file.

🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The pull request title accurately and clearly summarizes the main change: adding a new Next.js App Router bundled UI integration template with all supporting files and configurations.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


No actionable comments were generated in the recent review. 🎉


Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

🤖 Fix all issues with AI agents
In `@integration/presets/longRunningApps.ts`:
- Around line 39-43: The new long-running app entry
'next.appRouterBundledUI.withEmailCodes' (config: next.appRouterBundledUI) was
added but no tests were added; add integration tests that exercise the bundled
UI template's core flows (sign-up, sign-in, and theme switching) by creating new
test cases alongside the existing longRunningApps tests (or in the same test
suite used by other next.appRouter* entries) that instantiate the template ID
'next.appRouterBundledUI.withEmailCodes', perform a full sign-up + sign-in cycle
using email codes, and verify theme toggling persists/updates UI classes or
styles; ensure tests mirror the structure and assertions used for other
templates in this folder so CI covers the new flows before merge.

In `@integration/presets/next.ts`:
- Around line 39-53: The new preset variable appRouterBundledUI (created via
applicationConfig() and templates['next-app-router-bundled-ui']) lacks test
coverage; add integration tests that scaffold the template and assert key
pages/build/dev serve render correctly — e.g., a test that runs the template
generator for appRouterBundledUI, verifies expected files are created
(routes/pages, bundled UI assets) and that running the build/dev commands
(scripts 'build'/'dev' defined on the config) returns successful exit codes and
expected HTML content; place tests alongside other preset tests and follow
existing test helpers/assertions used for other presets to mirror patterns.

In `@integration/templates/next-app-router-bundled-ui/package.json`:
- Around line 12-17: The package.json pins "react" and "react-dom" to 18.3.1
which is incompatible with Next.js 15; update the dependency entries for "react"
and "react-dom" to React 19 (e.g., change their version strings to "^19.0.0" or
"19.x") so the template uses React 19 required by Next.js 15 App Router and
ensure no other packages conflict with React 19.

In `@integration/templates/next-app-router-bundled-ui/src/app/globals.css`:
- Around line 1-49: Update globals.css to satisfy Stylelint by converting legacy
rgba() usages to modern color-function notation (e.g. change rgba(1, 65, 255,
0.4) to rgb(1 65 255 / 0.4)) for --primary-glow and --secondary-glow, ensure any
hex colors and keywords (like transparent) are lowercase, convert any color
shorthand or alias forms that trigger color-function-notation/alias-notation
(e.g. replace `#16ABFF33` with lowercase `#16abff33` or use rgb(...) / alpha), add
or adjust blank lines before groups of custom properties in the :root blocks to
satisfy custom-property-empty-line-before, and ensure value keywords follow
lowercase value-keyword-case so variables like --foreground-rgb,
--background-start-rgb, --tile-border, and --card-border-rgb conform to the
linter.

Test sign-in, sign-up, user-button, sign-out, and theme rendering
against the next-app-router-bundled-ui long-running app.
@jacekradko jacekradko merged commit 9328cf8 into main Feb 12, 2026
67 of 68 checks passed
@jacekradko jacekradko deleted the jacek/next-app-router-bundled-ui branch February 12, 2026 03:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants