← Files ClerkARCHIVED FILE
skills/clerk-chrome-extension-patterns/templates/chrome-ext-basic-auth/src/popup.tsx
1.11 KB · Sep 30, 2026 · 23:09 UTC
import {
ClerkProvider,
Show,
SignInButton,
SignUpButton,
UserButton,
} from '@clerk/chrome-extension'
import '~style.css'
const PUBLISHABLE_KEY = process.env.PLASMO_PUBLIC_CLERK_PUBLISHABLE_KEY
const EXTENSION_URL = chrome.runtime.getURL('.')
if (!PUBLISHABLE_KEY) {
throw new Error('Please add the PLASMO_PUBLIC_CLERK_PUBLISHABLE_KEY to the .env.development file')
}
function IndexPopup() {
return (
<ClerkProvider
publishableKey={PUBLISHABLE_KEY}
afterSignOutUrl={`${EXTENSION_URL}/popup.html`}
signInFallbackRedirectUrl={`${EXTENSION_URL}/popup.html`}
signUpFallbackRedirectUrl={`${EXTENSION_URL}/popup.html`}
>
<div className="plasmo-flex plasmo-items-center plasmo-justify-center plasmo-h-[600px] plasmo-w-[800px] plasmo-flex-col">
<header className="plasmo-w-full">
<Show when="signed-out">
<SignInButton mode="modal" />
<SignUpButton mode="modal" />
</Show>
<Show when="signed-in">
<UserButton />
</Show>
</header>
</div>
</ClerkProvider>
)
}
export default IndexPopup
SHA-256: c6ac9597ead147e5d91e7e781737988f54a61089774f59616bbe9a1567e2f613