- name
- thunderid-integrate-nuxt
- description
- Add ThunderID authentication to a Nuxt application using the official @thunderid/nuxt module. Use when asked to "integrate ThunderID into Nuxt", "add auth to my Nuxt app", or "connect ThunderID with Nuxt".
- license
- Apache-2.0
- allowed-tools
- WebFetch, Bash(npm:*), Bash(npx:*), Bash(pnpm:*), Bash(yarn:*), Bash(bun:*), Read, Write, Edit
- metadata
- {"author":"thunderid","version":"1.0.0"}
# ThunderID — Nuxt Integration
Assumes ThunderID is running at `https://localhost:8090`. If not, run `/thunderid-install` first.
Fetch the canonical, always-current integration guide before writing any code:
WebFetch `https://thunderid.dev/docs/v1.0.x/getting-started/connect-your-application/nuxt.md`
Follow that guide end to end — creating the Console application, installing `@thunderid/nuxt`, registering the module, adding sign-in/sign-up UI and page protection, and verifying the app runs — adapting file names, paths, and code style to this project's actual structure rather than copying the doc's file layout verbatim.
You do not have Console access or a browser tool. Whenever a step needs a Console UI action (creating the application, choosing a sign-in approach, copying a Client ID/Secret/Application ID, adding a redirect URI), tell the user exactly what to click and ask them to report the value back — one value at a time, confirming each before asking for the next. If the guide presents more than one configuration or sign-in approach, use the `AskUserQuestion` tool to let the user choose rather than guessing which one this project wants.
If the fetch fails (offline, docs unreachable), tell the user and give them the URL above to open manually. Do not improvise integration steps from memory.
## Project-specific notes
- Detect the package manager from lockfiles: `pnpm-lock.yaml` → `pnpm add`, `yarn.lock` → `yarn add`, `bun.lockb` → `bun add`, else `npm install`.
- Generate any session-signing secret the guide asks for with `openssl rand -base64 32`.
- Components registered by `@thunderid/nuxt` use the same bare names as `@thunderid/vue`/`@thunderid/react` (e.g. `SignedIn`, `SignInButton`, `SignIn`, `UserProfile`) and are auto-imported — no manual imports needed. `ThunderIDRoot` is the one exception, since it's the app-wrapping root component with no bare-name equivalent.
## Troubleshooting
- **Certificate error** — Visit `https://localhost:8090` in your browser and accept the warning once.
- **`invalid_client`** — Double-check the Client ID/Client Secret in `.env` against the application's General tab.
Auf GitHub ansehen