Skip to content

Week 1 v2: Clerk v7 / Core 3 breaks SignedIn, SignedOut, and Protect - #170

Open
osencan wants to merge 1 commit into
ed-donner:mainfrom
osencan:main
Open

Week 1 v2: Clerk v7 / Core 3 breaks SignedIn, SignedOut, and Protect#170
osencan wants to merge 1 commit into
ed-donner:mainfrom
osencan:main

Conversation

@osencan

@osencan osencan commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Summary

If you install the latest Clerk (@clerk/nextjs v7) instead of pinning 6.39.0, the Day 3 / Day 4 samples crash. Core 3 removed <SignedIn>, <SignedOut>, and <Protect>. They still export, so the build succeeds, then they throw at render:

Clerk: <SignedOut> is not available in @clerk/nextjs Core 3.
Clerk: <Protect> is not available in @clerk/nextjs Core 3.

The official replacement is , but that is a server control. Week 1 pages are "use client", so does not see the browser session.

v2 samples use useAuth() on those client pages:

signed-in vs signed-out → isLoaded && isSignedIn
plan gate → has?.({ plan: 'premium_subscription' }) (do not mount the product until that is true)
Also added a Cursor skill for students who already built Week 1 on v6 and want to convert their app: copy community_contributions/clerk-core3-auth/ to .cursor/skills/clerk-core3-auth/ in your SaaS repo.

Added v2 versions of the week1/day3,4,5 and left the original Week 1 files alone so they still match the current videos.

Files:

  • week1/day3_v2.md
  • week1/day3.part2_v2.md
  • week1/day4_v2.md
  • week1/day5_v2.md / prior_day5_app_runner_v2.md (pointer only)
  • community_contributions/clerk_core3_signedin_signedout.md
  • community_contributions/clerk-core3-auth/ (SKILL.md + examples.md)

Test plan

  • [] Original week1/day3.md / day3.part2.md / day4.md still match the videos (@clerk/nextjs@6.39.0 + / )
  • [] file day3_v2.md landing page uses useAuth() (showSignedIn = isLoaded && isSignedIn)
  • [] file day3.part2_v2.md / day4_v2.md do not mount the product until has?.({ plan: 'premium_subscription' })
  • [] Skill in community_contributions/clerk-core3-auth/ converts SignedIn / SignedOut / Protect on "use client" pages via useAuth()

Includes component replacements and updated examples for authentication and subscription management. Introduce new files for conversion guides and update existing lesson content to reflect changes in Clerk's API.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant