Sample integrations for Tuurio ID across SPA, mobile, and server-side stacks.
This repository is the authoritative source for Tuurio's framework-specific GitHub templates. The generated satellite repositories are distribution surfaces; implementation fixes belong here first.
This repository also publishes an installable Cursor rule at rules/tuurio-auth.mdc. The rule is self-contained: it does not load mutable remote instructions, requires explicit approval before provisioning, and pins the reviewed manage-tuurio-id CLI version. Signup, approval, and secrets remain in a human-controlled browser handoff.
Ready-to-copy equivalents are available for AGENTS.md and CLAUDE.md. Their usage notes explain how to add one reviewed guide to an application repository.
Detailed integration guidance now lives on id.tuurio.com. This GitHub repository remains the code host for the runnable examples.
- General developer docs: https://id.tuurio.com/public/developers
- Sample-specific guides: use the example pages linked in the tables below
- Platform overview: Features
- Managed profile and master-data context: Vault
- Security guidance: Security
The samples in this repository show practical Tuurio ID client integrations for public and confidential applications. Web samples use the Authorization Code flow, with PKCE where appropriate for public clients.
| Framework | Tech Stack | Guide | Code |
|---|---|---|---|
| React | Vite + oidc-client-ts |
React guide | auth_samples_react |
| Lovable | React + Vite + oidc-client-ts |
Lovable guide | auth_samples_lovable |
| Vue 3 | Vite + Composition API | Vue guide | auth_samples_vue3 |
| Angular | Standalone Components | Angular guide | auth_samples_angular |
| Next.js | App Router + Auth.js | Next.js guide | auth_samples_nextjs |
| SvelteKit | SvelteKit + server hooks | SvelteKit guide | auth_samples_sveltekit |
| Nuxt | Nuxt + server routes | Nuxt guide | auth_samples_nuxt |
| Astro | Astro + server sessions | Astro guide | auth_samples_astro |
| React Router | React Router framework mode | React Router guide | auth_samples_react_router |
| Platform | Tech Stack | Guide | Code |
|---|---|---|---|
| Android | Jetpack Compose | Android guide | auth_samples_android |
| iOS | SwiftUI + AppAuth | iOS guide | auth_samples_ios |
| Flutter | flutter_appauth |
Flutter guide | auth_samples_flutter |
| Language | Framework | Guide | Code |
|---|---|---|---|
| Node.js | Express | Node.js guide | auth_samples_node |
| Python | Flask | Python guide | auth_samples_python |
| Go | net/http |
Go guide | auth_samples_go |
| Java | Spring Boot 3 | Spring Boot guide | auth_samples_java |
| PHP | Vanilla PHP | PHP guide | auth_samples_php |
| Laravel | Laravel 12 | Laravel guide | auth_samples_laravel |
| Python | Django | Django guide | auth_samples_django |
| Python | FastAPI | FastAPI guide | auth_samples_fastapi |
- Create a tenant and application in Tuurio ID.
- Open the matching example page on
id.tuurio.comfor integration context and client setup. - Clone this repository and open the sample folder for your stack.
- Copy the sample environment file and fill in your tenant-specific values.
- Register the exact redirect and post-logout redirect URIs shown in that sample.
- Run the sample locally.
Example:
git clone https://github.com/Tuurio/auth_samples.git
cd auth_samples/auth_samples_react
cp .env.example .env
# edit .env with your issuer/client/redirect values
npm install
npm run devThe reviewed catalog and target repository metadata live in distribution/templates.yml. It inventories 20 implemented framework templates. The distribution pipeline validates, packages, and synchronizes each source directory into a separately discoverable GitHub template repository without making the satellite an independent source of truth.
Validate the catalog with:
cd distribution
npm ci
npm run validateGenerated repositories must preserve their upstream-source notice, use normal synchronization commits, and never contain local environment files or credentials.
- Sample environment values are placeholders. Replace them with values from your own Tuurio tenant.
- SPA and mobile samples are public clients and should not use confidential client secrets.
- Server-side samples show confidential-client setups where a client secret is expected.
Licensed under the Apache License, Version 2.0.